Electronic device for providing response to user request and control method thereof

By using a first neural network model to estimate response length and grouping requests accordingly, the electronic device optimizes computing resource use and processing time through parallel processing in a second neural network model, addressing inefficiencies in conventional LLM server operations.

WO2025164932A1PCT designated stage Publication Date: 2025-08-07SAMSUNG ELECTRONICS CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/KR2024/020523
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-02-02
Filing Date
2024-12-17
Publication Date
2025-08-07

AI Technical Summary

Technical Problem

Conventional Large Language Model (LLM) servers process user requests sequentially, leading to inefficiencies when some requests take significantly longer than others, wasting computing resources and prolonging overall processing time.

Method used

An electronic device employs a first neural network model to estimate the expected output length of responses and groups user requests based on this length, using a second neural network model to process multiple requests in parallel, optimizing resource utilization and throughput.

Benefits of technology

This approach enhances computing resource efficiency and reduces processing time by grouping requests based on expected output length, allowing for parallel processing and minimizing idle cores.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure KR2024020523_07082025_PF_FP_ABST
    Figure KR2024020523_07082025_PF_FP_ABST
Patent Text Reader

Abstract

An electronic device is disclosed. The electronic device comprises: a memory for storing a first artificial intelligence model for outputting touch information on the basis of touch data input in a current period and a second artificial intelligence model for outputting touch information on the basis of the touch data input in the current period and previous state information; a touch panel; a sensor; and one or more processors. The one or more processors can: input touch data acquired through the touch panel into the first artificial intelligence model and the second artificial intelligence model; identify an amount of change in a sensing value of the sensor during a predetermined unit time before a touch on the touch panel when touch information output from the first artificial intelligence model and the second artificial intelligence model are different; and perform an operation corresponding to the touch information output from the first artificial intelligence model when the amount of change exceeds a threshold value.
Need to check novelty before this filing date? Find Prior Art

Description

Electronic device providing response to user request and method for controlling same

[0001] The present disclosure relates to an electronic device and a method for controlling the same, and more particularly, to an electronic device that provides a response to a user request and a method for controlling the same.

[0002] With the recent advancement of Large Language Models (LLMs), they are being used in various fields such as machine translation, content summarization, and article writing. Conventional LLM servers input multiple user requests into the LLM in the order they were received, then provide responses corresponding to the received user requests.

[0003] For example, the giant language model server inputs 10 user requests into the giant language model in the order of the earliest reception time, processes the 10 requests in parallel, and outputs 10 responses before inputting and processing another 10 user requests into the giant language model.

[0004] However, while some of the first ten user requests processed in parallel by the giant language model may take 100 seconds to process, others may only take 10 seconds. This wastes computing resources that could otherwise be spent processing other user requests, which could take up approximately 90 seconds, and lengthens the overall processing time. Therefore, the need for a technology that allows the giant language model to batch process user requests with similar processing times has emerged.

[0005] An electronic device according to at least one embodiment of the present disclosure includes a communication interface, a memory storing a first neural network model for outputting first information about an expected output length of a response to a user request, a second neural network model for processing n (n is a natural number greater than or equal to 2) user requests and outputting n responses, and one or more processors, wherein the one or more processors input a plurality of user requests received through the communication interface into the first neural network model to output a plurality of first pieces of information corresponding to each of the plurality of user requests, map the plurality of first pieces of information corresponding to each of the plurality of user requests to the plurality of user requests and store them in the memory, and input n user requests among the plurality of user requests stored in the memory into the second neural network model to output n responses based on the plurality of first pieces of information.

[0006] The one or more processors may group the plurality of user requests stored in the memory based on the plurality of first pieces of information according to expected output lengths to create a plurality of groups, and when it is identified that a group including n or more user requests exists, input n user requests among the user requests included in the identified group into the second neural network model to output n responses.

[0007] The one or more processors may store in the memory a plurality of pieces of second information about the time at which each of the plurality of user requests was received through the communication interface, by mapping the plurality of pieces of second information to the plurality of user requests, and based on the plurality of pieces of first information and the plurality of second pieces of information, input n user requests among the plurality of user requests stored in the memory into the second neural network model to output n responses corresponding to the n user requests.

[0008] The one or more processors, when it is identified that there are m delayed user requests (m is a natural number greater than or equal to 1 and less than n) whose response waiting time exceeds a preset time based on the plurality of second information, can identify whether there is a group including nm or more user requests among the plurality of groups, and when it is identified that there is a group including nm or more user requests, can input the nm user requests and the m delayed user requests included in the identified group into the second neural network model to output n responses.

[0009] The one or more processors, when it is identified that there are multiple groups containing the nm or more user requests, identify a representative expected output length of the m delayed user requests,

[0010] By comparing the difference between the representative expected output length of each of the plurality of groups and the representative expected output length of the delayed user request, a group having the smallest difference value is selected from among the plurality of groups, and n user requests and m delayed user requests included in the selected group are input into the second neural network model to output n responses.

[0011] If it is determined that there is no group including the nm or more user requests, the one or more processors may select nm user requests from among the plurality of user requests stored in the memory in descending order of a selection score calculated based on the plurality of first information and the response waiting time, and input the selected nm user requests and the m delayed user requests into the second neural network model to output n responses.

[0012] The one or more processors may, based on the plurality of first pieces of information, sort the plurality of user requests stored in the memory in descending order of expected output length, group the user requests into the same group by n in descending order of expected output length, and input the n user requests included in each group in descending order of expected output length to the second neural network model.

[0013] The one or more processors may, based on the plurality of first pieces of information, sort the plurality of user requests stored in the memory in descending order of expected output length, group the user requests into the same group by n in descending order of expected output length to create a plurality of groups, and input the n user requests included in each group in descending order of expected output length to the second neural network model.

[0014] The one or more processors may receive data, in which the first information is mapped to each of the plurality of user requests and the plurality of user requests, from an external device via the communication interface.

[0015] The first neural network model may be a neural network model learned based on the output lengths of the plurality of user requests and the plurality of responses output in response to the plurality of user requests, and the second neural network model may be a neural network model learned based on the plurality of user requests and the plurality of responses output in response to the plurality of user requests.

[0016] A method for controlling an electronic device according to at least one embodiment of the present disclosure may include a step of inputting a plurality of received user requests into a first neural network model and outputting a plurality of first pieces of information corresponding to each of the plurality of user requests, a step of mapping the plurality of first pieces of information corresponding to each of the plurality of user requests to the plurality of user requests and storing them, and a step of inputting n user requests among the plurality of stored user requests into a second neural network model and outputting n responses based on the plurality of first pieces of information.

[0017] The above first neural network model may be a neural network model that outputs first information about the expected output length of a response to a user request, and the above second neural network model may be a neural network model that processes n user requests (n is a natural number greater than or equal to 2) and outputs n responses.

[0018] The above control method may include a step of creating a plurality of groups by grouping the plurality of user requests stored based on the plurality of first pieces of information according to an expected output length, and a step of inputting n user requests among the user requests included in the identified group into the second neural network model to output n responses when a group including n or more user requests is identified to exist.

[0019] The above control method may include a step of storing a plurality of second pieces of information about the time at which each of the plurality of user requests was received by mapping the plurality of user requests to the plurality of user requests, and a step of inputting n user requests among the plurality of stored user requests into the second neural network model based on the plurality of first pieces of information and the plurality of second pieces of information and outputting n responses.

[0020] The above control method may include, if it is identified that there are m delayed user requests (m is a natural number greater than or equal to 1 and less than n) whose response waiting time exceeds a preset time based on the plurality of second information, a step of identifying whether there is a group including nm or more user requests among the plurality of groups, and if it is identified that there is a group including nm or more user requests, a step of inputting nm user requests and m delayed user requests included in the identified group into the second neural network model to output n responses.

[0021] The control method may include, when it is identified that there are multiple groups including nm or more user requests, a step of identifying representative expected output lengths of the m delayed user requests, a step of comparing a difference between the representative expected output length of each of the multiple groups and the representative expected output length of the delayed user requests, and a step of selecting a group having a smallest difference value among the multiple groups, and a step of inputting the nm user requests and the m delayed user requests included in the selected group into the second neural network model to output n responses.

[0022] The above control method may include a step of selecting nm user requests from among the plurality of user requests stored in descending order of selection scores calculated based on the plurality of first information and the response waiting time, if it is determined that there is no group including nm or more user requests, and a step of inputting the selected nm user requests and the m delayed user requests into the second neural network model to output n responses.

[0023] The control method may include a step of sorting the plurality of user requests stored in order of decreasing expected output length based on the plurality of first pieces of information, a step of grouping n user requests into the same group in order of decreasing expected output length to create a plurality of groups, and a step of inputting n user requests included in each group in order of decreasing expected output length to the second neural network model.

[0024] The control method may include a step of sorting the plurality of user requests stored in order of the largest expected output length based on the plurality of first pieces of information, a step of grouping n user requests into the same group in order of the largest expected output length to create a plurality of groups, and a step of inputting n user requests included in each group in order of the largest expected output length to the second neural network model.

[0025] The above control method may further include a step of receiving data from an external device in which the plurality of user requests and the first information are mapped to each of the plurality of user requests.

[0026] A computer-readable recording medium including a program for executing a control method of an electronic device according to at least one embodiment of the present disclosure, wherein the control method of the electronic device may include a step of inputting a plurality of received user requests into a first neural network model and outputting a plurality of first pieces of information corresponding to each of the plurality of user requests, a step of mapping the plurality of first pieces of information corresponding to each of the plurality of user requests to the plurality of user requests and storing them, and a step of inputting n user requests among the plurality of stored user requests into a second neural network model and outputting n responses based on the plurality of first pieces of information.

[0027] FIG. 1 is a diagram illustrating the operation of an electronic device according to one or more embodiments of the present disclosure.

[0028] FIG. 2 is a block diagram illustrating a configuration of an electronic device according to one or more embodiments of the present disclosure.

[0029] FIG. 3 is a diagram illustrating the operation of an electronic device according to one or more embodiments of the present disclosure.

[0030] FIG. 4A is a diagram illustrating a method for processing a user request of an electronic device according to one or more embodiments of the present disclosure.

[0031] FIG. 4b is a diagram illustrating a method for processing a user request of an electronic device according to one or more embodiments of the present disclosure.

[0032] FIG. 5 is a diagram illustrating a method for creating a group of electronic devices according to one or more embodiments of the present disclosure.

[0033] FIG. 6 is a diagram illustrating a user request sorting method and a group creation method of an electronic device according to one or more embodiments of the present disclosure.

[0034] FIG. 7 is a diagram illustrating a method for processing a delayed user request of an electronic device according to one or more embodiments of the present disclosure.

[0035] FIG. 8 is a diagram illustrating a learning method of a first neural network model according to one or more embodiments of the present disclosure.

[0036] FIG. 9 is a flowchart illustrating a method for controlling an electronic device according to one or more embodiments of the present disclosure.

[0037] FIG. 10 is a flowchart illustrating a method for controlling an electronic device according to one or more embodiments of the present disclosure.

[0038] The present embodiments may be modified and have various embodiments. Specific embodiments are illustrated in the drawings and described in detail in the detailed description. However, this is not intended to limit the scope to specific embodiments, but should be understood to encompass various modifications, equivalents, and / or alternatives of the embodiments of the present disclosure. In connection with the description of the drawings, similar reference numerals may be used for similar components.

[0039] In describing the present disclosure, if it is determined that a specific description of a related known function or configuration may unnecessarily obscure the gist of the present disclosure, a detailed description thereof will be omitted.

[0040] Additionally, the following embodiments may be modified in various other forms, and the scope of the technical concepts of the present disclosure is not limited to the following embodiments. Rather, these embodiments are provided to further faithfully and completely convey the technical concepts of the present disclosure to those skilled in the art.

[0041] The terminology used in this disclosure is for the purpose of describing specific embodiments only and is not intended to limit the scope of the rights. Singular expressions include plural expressions unless the context clearly dictates otherwise.

[0042] In this disclosure, expressions such as “has,” “can have,” “includes,” or “may include” indicate the presence of a corresponding feature (e.g., a component such as a number, function, operation, or part), and do not exclude the presence of additional features.

[0043] In this disclosure, expressions such as “A or B,” “at least one of A and / or B,” or “one or more of A or / and B” can include all possible combinations of the listed items. For example, “A or B,” “at least one of A and B,” or “at least one of A or B” can all refer to (1) including at least one A, (2) including at least one B, or (3) including both at least one A and at least one B.

[0044] The expressions “first,” “second,” “first,” or “second,” etc., used in this disclosure can describe various components, regardless of order and / or importance, and are only used to distinguish one component from another, but do not limit the components.

[0045] When it is said that a component (e.g., a first component) is “(operatively or communicatively) coupled with / to” or “connected to” another component (e.g., a second component), it should be understood that said component may be directly coupled to said other component, or may be coupled via another component (e.g., a third component).

[0046] On the other hand, when it is said that a component (e.g., a first component) is "directly connected" or "directly connected" to another component (e.g., a second component), it can be understood that no other component (e.g., a third component) exists between said component and said other component.

[0047] The expression "configured to" as used in the present disclosure may be used interchangeably with, for example, "suitable for," "having the capacity to," "designed to," "adapted to," "made to," or "capable of." The term "configured to" may not necessarily mean only "specifically designed to" in terms of hardware.

[0048] Instead, in some contexts, the phrase "a device configured to" may mean that the device, in conjunction with other devices or components, is "capable of" performing A, B, and C. For example, the phrase "a processor configured (or set) to perform A, B, and C" may refer to a dedicated processor (e.g., an embedded processor) for performing those operations, or a general-purpose processor (e.g., a CPU or application processor) that can perform those operations by executing one or more software programs stored in a memory device.

[0049] In the embodiments, a 'module' or 'part' performs at least one function or operation, and may be implemented as hardware or software, or as a combination of hardware and software. Furthermore, a plurality of 'modules' or 'parts' may be integrated into at least one module and implemented as at least one processor, except for a 'module' or 'part' that needs to be implemented as a specific hardware.

[0050] Meanwhile, the various elements and areas in the drawings are schematically drawn. Therefore, the technical concept of the present invention is not limited by the relative sizes or spacing depicted in the attached drawings.

[0051] Hereinafter, with reference to the attached drawings, embodiments according to the present disclosure will be described in detail so that a person having ordinary knowledge in the technical field to which the present disclosure pertains can easily implement the present disclosure.

[0052] FIG. 1 is a diagram illustrating the operation of an electronic device according to one or more embodiments of the present disclosure.

[0053] According to FIG. 1, the electronic device (100) can obtain a user request from a plurality of external devices (200-1, 200-2, 200-3, ..., 200-n) and provide a response corresponding to the user request to the plurality of external devices (200-1, 200-2, 200-3, ..., 200-n).

[0054] The electronic device (100) may be a device that includes a neural network model, receives multiple user requests, inputs the multiple user requests into the neural network model, and outputs responses corresponding to each of the multiple user requests. In FIG. 1, the electronic device (100) is illustrated as a server device, but this is only one example, and the electronic device (100) may be implemented as various devices, such as a desktop PC, a smart TV, a smartphone, a tablet PC, a laptop PC, etc., which may include a memory that stores a neural network model and a processor that may load and execute the neural network model. In addition, the electronic device (100) is not limited thereto, and other home appliances, medical devices, etc. may also be included in the electronic device (100).

[0055] Each of the plurality of external devices (200-1, 200-2, 200-3, ..., 200-n) may be a device that obtains a user request from each user and provides the user request to the electronic device (100). In FIG. 1, each of the plurality of external devices (200-1, 200-2, 200-3, ..., 200-n) is illustrated as a desktop PC, a smartphone, a laptop PC, and a tablet PC, but this is only one example, and the external device (200) may be implemented as various devices that can obtain a user request from a user and provide the user request to the electronic device (100), such as an electronic picture frame, a DID (Digital Information Display), a kiosk, a PMP (Portable Media Layer), an MP3 player, a game console, a LFD (Large Format Display), a TV, a monitor, a projector system, etc.

[0056] In this disclosure, a "user request" may refer to a phrase that a user inputs into an electronic device (100) to indicate the user's intention or question. A "user request" may also include a phrase that a user inputs into an external device (200) to initiate interaction with the electronic device (100).

[0057] In one embodiment, a user request may be generated by a user. For example, the external device (200) may obtain the user request by receiving a text input from the user. Alternatively, the external device (200) may obtain the user request by receiving a voice input from the user. The external device (200) may obtain the user request through various methods.

[0058] Meanwhile, a user request may be referred to by various expressions representing the same or similar concepts. For example, it may be replaced by various expressions such as "input," "user input," "input phrase," "user command," "directive," "starting sentence," "task query," "trigger sentence," and "message." However, for convenience of explanation, in this disclosure, it will be referred to collectively as "user request" or "request."

[0059] In the present disclosure, a "response corresponding to a user request" may mean a phrase generated by an electronic device (100) that identifies the user's intention or question contained in the user request using a neural network model and matches the user's intention or question. For example, if the user request is "~~, summarize the content of the article above in 3 lines," the response corresponding to the user request may be "a summary of the content of the article above in 3 lines."

[0060] Meanwhile, a response corresponding to a user request may be referred to by various expressions representing the same or similar concepts. For example, it may be replaced by various expressions such as "output phrase," "response sentence," "answer," "reaction," "generated text," and "output value." However, for convenience of explanation, in this disclosure, it will be referred to collectively as "response corresponding to a user request" or "response."

[0061] According to one embodiment of the present disclosure, the electronic device (100) can obtain an expected output length for each of a plurality of user requests using a first neural network model, and divide the plurality of user requests into a plurality of groups based on the expected output length. Unlike the existing technology that divides the plurality of user requests into a plurality of groups in the order in which the user requests are input to the electronic device (100), the electronic device (100) of the present disclosure divides the plurality of user requests into a plurality of groups based on the expected output length, thereby enabling more efficient use of computing resources and improving throughput. A specific method of dividing the plurality of user requests into a plurality of groups based on the expected output length will be described in detail in the description of the drawings to be described later.

[0062] Below, the operation of an electronic device (100) according to various embodiments of the present disclosure will be described.

[0063] FIG. 2 is a block diagram illustrating a configuration of an electronic device according to one or more embodiments of the present disclosure.

[0064] According to FIG. 2, the electronic device (100) may include a memory (110), a communication interface (120), and one or more processors (130).

[0065] The memory (110) can store various programs, data, commands, etc. used in the electronic device (100). In addition, the memory (110) can store a first neural network model and a second neural network model, and can store multiple user requests received from an external device (200). In addition, the memory (110) can store various pieces of information according to various embodiments of the present disclosure. The memory (110) can be implemented in one or more pieces.

[0066] Here, the "second neural network model" may be a generative model that receives a user request and outputs a response corresponding to the user request. In other words, the second neural network model may refer to a neural network model that implements generative AI technology. By learning the patterns and structure of training data, the second neural network model can identify the user's intent and question contained in the input user request and output an appropriate response to the user's intent and question.

[0067] Here, the "first neural network model" may be a neural network model that receives a user request and outputs information about the expected output length. The expected output length may refer to the length of the response to the user request output by the second neural network model. The first neural network model can output information about the expected output length for the input user request by learning the patterns and structure of the training data.

[0068] According to one embodiment, the length of a response to a user request output by a second neural network model may be determined by the number of tokens contained in the response. According to another embodiment, the length of the response may be determined by the number of syllables or words contained in the response. For convenience of explanation, the present disclosure will describe the response length as being determined by the number of tokens contained in the response. Furthermore, for convenience of explanation, the present disclosure will collectively refer to "information about the expected output length" as "first information."

[0069] A memory (110) according to an example of the present disclosure may be implemented as an internal memory such as a ROM (e.g., an electrically erasable programmable read-only memory (EEPROM)) or a RAM included in one or more processors (130), or may be implemented as a separate memory from one or more processors (130). The memory (110) may be implemented as a memory embedded in the electronic device (100) or as a memory detachable from the electronic device (100) depending on the purpose of data storage. For example, data for driving the electronic device (100) may be stored in a memory embedded in the electronic device (100), and data for expanding functions of the electronic device (100) may be stored in a memory detachable from the electronic device (100).

[0070] Meanwhile, in the case of memory embedded in the electronic device (100), it may be implemented as at least one of volatile memory (e.g., dynamic RAM (DRAM), static RAM (SRAM), or synchronous dynamic RAM (SDRAM)), non-volatile memory (e.g., one time programmable ROM (OTPROM), programmable ROM (PROM), erasable and programmable ROM (EPROM), electrically erasable and programmable ROM (EEPROM), mask ROM, flash ROM, flash memory (e.g., NAND flash or NOR flash), hard drive, or solid state drive (SSD)), and in the case of memory that can be attached or detached to the electronic device (100), it may be implemented as a memory card (e.g., compact flash (CF), secure digital (SD), micro secure digital (Micro-SD), mini secure digital (Mini-SD), extreme digital (xD), multi-media card (MMC), etc.), external memory that can be connected to a USB port (e.g., USB memory), etc. there is.

[0071] The communication interface (120) can perform data communication with an external device (200) under the control of one or more processors (130). For example, one or more processors (130) can receive a user request from an external device (200) through the communication interface (120).

[0072] The communication interface (120) may include at least one wireless communication module, at least one wired communication module, etc. Each communication module may be implemented in the form of at least one hardware chip. The wireless communication module may include at least one module among a Wi-Fi module, a Bluetooth module, an infrared communication module, or other communication modules. In addition, the communication interface may include at least one communication chip that performs communication according to various wireless communication standards such as Zigbee, 3G (3rd Generation), 3GPP (3rd Generation Partnership Project), LTE (Long Term Evolution), LTE-A (LTE Advanced), 4G (4th Generation), 5G (5th Generation), etc. The wired communication module may include at least one among a LAN (Local Area Network) module, an Ethernet module, a pair cable, a coaxial cable, a fiber optic cable, or a UWB (Ultra Wide-Band) module, for example. The communication interface may be implemented in various forms as described above, and may transmit and receive various data by communicating with external devices (200).

[0073] According to one embodiment, one or more processors (130) may configure a Wi-Fi network with an external device (200) via a Wi-Fi module included in a communication interface (120). One or more processors (130) may receive a user request via the Wi-Fi network configured with the external device (200) and transmit a response corresponding to the user request to the external device (200).

[0074] According to another embodiment, as illustrated in FIG. 1, one or more processors (130) may configure multiple networks with multiple external devices (200-1, 200-2, 200-3, ..., 200-n) through multiple communication modules included in the communication interface (120). One or more processors (130) may configure a Wi-Fi network with a first external device (200-1), a Bluetooth network with a second external device (200-2), etc., and configure multiple networks through multiple communication modules to receive a user request and transmit a response corresponding to the user request to the multiple external devices (200-1, 200-2, 200-3, ..., 200-n).

[0075] One or more processors (130) can control the overall operations of the electronic device (100). Specifically, one or more processors (130) are connected to each component of the electronic device (100) and can control the overall operations of the electronic device (100). For example, one or more processors (130) can control the overall operations of the electronic device (100) to provide a response corresponding to a user request by executing one or more instructions of a program stored in the memory (110).

[0076] The one or more processors (130) may include one or more of a Central Processing Unit (CPU), a Graphics Processing Unit (GPU), an Accelerated Processing Unit (APU), a Many Integrated Core (MIC), a Digital Signal Processor (DSP), a Neural Processing Unit (NPU), a hardware accelerator, or a machine learning accelerator. The one or more processors (130) may control one or any combination of other components of the electronic device, and may perform operations related to communication or data processing. The one or more processors (130) may execute one or more programs or instructions stored in a memory. For example, the one or more processors may perform a method according to one or more embodiments of the present disclosure by executing one or more instructions stored in a memory.

[0077] When a method according to one or more embodiments of the present disclosure includes multiple operations, the multiple operations may be performed by one processor or by multiple processors. For example, when a first operation, a second operation, and a third operation are performed by a method according to one or more embodiments, the first operation, the second operation, and the third operation may all be performed by the first processor, or the first operation and the second operation may be performed by the first processor (e.g., a general-purpose processor) and the third operation may be performed by the second processor (e.g., an artificial intelligence-specific processor).

[0078] For example, a general-purpose processor may perform an operation of mapping a plurality of first pieces of information corresponding to each of a plurality of user requests to the plurality of user requests and storing the same in a memory (110), and an artificial intelligence-only processor may perform an operation of inputting a user request to a first neural network model and / or a second neural network model and outputting the first information and / or a response.

[0079] One or more processors (130) may be implemented as a single core processor including one core, or may be implemented as one or more multicore processors including multiple cores (e.g., homogeneous multicores or heterogeneous multicores). When one or more processors (130) are implemented as a multicore processor, each of the multiple cores included in the multicore processor may include an internal processor memory, such as a cache memory or an on-chip memory, and a common cache shared by the multiple cores may be included in the multicore processor. In addition, each of the multiple cores (or some of the multiple cores) included in the multicore processor may independently read and execute a program instruction for implementing a method according to one or more embodiments of the present disclosure, or all (or some) of the multiple cores may be linked to read and execute a program instruction for implementing a method according to one or more embodiments of the present disclosure.

[0080] One or more processors (130) may be implemented as processors dedicated to artificial intelligence. For example, one or more processors (130) may be designed as hardware chips, such as ASICs or FPGAs, specialized for processing specific neural network models.

[0081] As described above, when the first neural network model and the second neural network model are stored in the memory (110), one or more processors (130) can execute the first neural network model and the second neural network model to perform various operations. For example, the first neural network model can be loaded onto a first GPU among one or more processors (130) and executed, and the second neural network model can be loaded onto a second GPU among one or more processors (130) and executed. Hereinafter, for convenience of explanation, one or more processors (130) will be referred to as processors (130).

[0082] The processor (130) can input multiple user requests received through the communication interface (120) into the first neural network model and output multiple pieces of first information corresponding to each of the multiple user requests.

[0083] According to one embodiment, the processor (130) may receive 1000 user requests from a plurality of external devices (200-1, 200-2, 200-3, ..., 200-n) through the communication interface (120). The processor (130) may input the 1000 user requests into the first neural network model in the time order in which they were received and output 1000 pieces of first information. Since the first neural network model is a neural network model that receives user requests and outputs only the first information (e.g., 200 or 15), even if a very large number of user requests are input in sequence, the first information corresponding to each input user request can be output within a short period of time. In other words, unlike the second neural network model that must output a response including a plurality of tokens, the first neural network model is a model that outputs the first information consisting of a single number, and therefore, can have a faster output speed than the output speed of the second neural network model.

[0084] In one embodiment, the user request received by the processor (130) via the communication interface (120) may be an image rather than text. In this case, the processor (130) may generate text from the received image and input the generated text into the first neural network model. The processor (130) may utilize various techniques (e.g., image captioning, OCR, etc.) to generate text from the image.

[0085] In the above description, it has been described that the processor (130) inputs a user request in the form of text into the first neural network model. However, it is of course possible for the processor (130) to generate a request embedding that converts the user request into a vector representation and input the request embedding into the first neural network model.

[0086] The processor (130) can map a plurality of first pieces of information corresponding to each of a plurality of user requests to the plurality of user requests and store them in the memory (110).

[0087] According to one embodiment, if the processor (130) inputs request 1, “~~, summarize the contents of the article above in 3 lines,” to the first neural network model and obtains first information, “Expected output length: 200,” the processor (130) can map the first information, “Expected output length: 200,” and request 1 and store them in the memory (110).

[0088] According to one embodiment, if the processor (130) inputs 1,000 user requests into the first neural network model and obtains 1,000 pieces of first information, the processor (130) can map 1,000 pieces of first information corresponding to each of the 1,000 user requests to the 1,000 user requests and store them in the memory (110).

[0089] Additionally, the processor (130) can map a plurality of second pieces of information about the time at which each of the plurality of user requests was received through the communication interface (120) to the plurality of user requests and store the information in the memory (110).

[0090] In the present disclosure, "second information" may refer to information about the time at which the processor (130) received a user request via the communication interface (120). For example, if the processor (130) received request 1 via the communication interface (120) at '2024-1-1 13:40:00', '2024-1-1 13:40:00' may be the second information. At this time, the processor (130) may map request 1 and the second information '2024-1-1 13:40:00' and store them in the memory (110).

[0091] According to one embodiment, if the processor (130) receives 1,000 user requests through the communication interface (120), it can obtain 1,000 pieces of second information. The processor (130) can map 1,000 pieces of second information corresponding to each of the 1,000 user requests to the 1,000 user requests and store them in the memory (110).

[0092] In the above description, it has been described that the processor (130) stores the first information and / or the second information by mapping them to each user request, but it is of course possible for the processor (130) to store the first information and / or the second information by mapping them to the request embedding.

[0093] In addition, in the above description, it was explained that the processor (130) can map the first information or the second information to the user request and store them, but it is also understood that the processor (130) can map and store both the first information and the second information to the user request.

[0094] The processor (130) can input n user requests (n is a natural number greater than or equal to 2) among the plurality of user requests stored in the memory (110) into a second neural network model based on a plurality of first pieces of information and / or a plurality of second pieces of information, and output n responses.

[0095] Since n processors are allocated to execute the second neural network model, the second neural network model can input n user requests at a time and output n responses corresponding to the n user requests at a time. In other words, the n processors allocated to execute the second neural network model can process n user requests in parallel. For example, if 10 processors are allocated to execute the second neural network model, the 10 processors can input 10 user requests to the second neural network model loaded on each of the 10 processors, respectively, and output 10 responses at a time.

[0096] Alternatively, a multi-core processor with n cores may be allocated to execute the second neural network model, so that the second neural network model can receive n user requests at a time and output n responses corresponding to the n user requests at a time. In other words, a multi-core processor with n cores allocated to execute the second neural network model can process n user requests in parallel. For example, if a quad-core processor with four cores is allocated to execute the second neural network model, the four cores can input four user requests to the second neural network model loaded on each of the four cores, respectively, and output four responses at a time.

[0097] In the above description, it has been explained that n processors or a processor with n cores can execute the second neural network model in parallel, but this is only one example, and it is of course possible to execute the second neural network model in parallel in various ways depending on how the processor (130) is implemented.

[0098] A specific method for the processor (130) to input n user requests into the second neural network model based on a plurality of first pieces of information and / or a plurality of second pieces of information will be described in detail in the description of the drawings to be described later.

[0099] FIG. 3 is a diagram illustrating the operation of an electronic device according to one or more embodiments of the present disclosure.

[0100] According to FIG. 3, the electronic device (100) can receive a user request (310) and provide a response (360) corresponding to the user request (310) to an external device.

[0101] As described in the description of FIG. 2, the electronic device (100) can input the received user request (310) into the first neural network model (320) to output first information and obtain second information about the time at which the user request (310) was received. The electronic device (100) can store a waiting user request (330) that maps the first information and the second information to the user request (310) in the memory (110).

[0102] At this time, since the speed at which the first neural network model (320) outputs the first information is faster than the speed at which the second neural network model (350) outputs the response, as described above, there may be a plurality of 'pending user requests (330)' waiting to be input to the second neural network model (350). Accordingly, the plurality of pending user requests (330) stored in the memory (110) may form a user request queue (340), and the electronic device (100) may select n pending user requests (330) among the plurality of pending user requests (330) forming the user request queue (340) and input them to the second neural network model (350).

[0103] According to one embodiment, the electronic device (100) may sort a plurality of waiting user requests (330) forming a user request queue (340) in order of decreasing expected output length based on a plurality of pieces of first information, and input n user requests in order of decreasing expected output length to a second neural network model (350).

[0104] According to another embodiment, if the electronic device (100) identifies that there are n delayed user requests whose response pending time exceeds a preset time among the plurality of waiting user requests (330) forming the user request queue (340) based on a plurality of second pieces of information, the electronic device (100) may input the n delayed user requests into the second neural network model (350).

[0105] Here, the "response waiting time" may refer to the difference between the time the electronic device (100) received the user request and the current time. For example, if the electronic device (100) received the user request at '2024-1-1 13:40:00' and the current time is '2024-1-1 13:43:10', the response waiting time may be 3 minutes and 10 seconds. In addition, the response waiting time may refer to the difference between the time the user inputs the user request to the external device (200) and the current time.

[0106] In addition, the 'preset time' can be set to an arbitrary time such as 3 minutes, 4 minutes, etc., and can be set directly by the user of the electronic device (100), or can be set by various methods such as calculating the average time it takes for the electronic device (100) to receive a user request and provide a response and setting the average time as the preset time.

[0107] As described above, the electronic device (100) can input n waiting user requests (330) to the second neural network model (350) based on a plurality of first pieces of information and / or a plurality of second pieces of information, and the second neural network model (350) can output n responses (360). The electronic device (100) can provide the n responses (360) to the external device (200) via the communication interface (120).

[0108] The electronic device (100) can increase the processing capacity of the electronic device (100) by inputting n waiting user requests (330) into the second neural network model (350) based on a plurality of pieces of first information, which will be described in detail in the description of FIG. 4 below.

[0109] FIG. 4A and FIG. 4B are diagrams illustrating a method for processing a user request of an electronic device according to one or more embodiments of the present disclosure.

[0110] As illustrated in FIG. 4a, the electronic device (100) can input four user requests per step into the second neural network model (350) and output four responses (n = 4). In the description of FIG. 4, it is assumed that a quad-core processor including four cores outputs four responses using the second neural network model (350).

[0111] The second neural network model (350) can receive a user request and output a response including multiple tokens. Therefore, as the number of tokens included in the response to be output by the second neural network model (350) increases, the time it takes for the second neural network model (350) to output the response may increase. In other words, the number of tokens included in the response and the time it takes for the second neural network model (350) to output the response may be proportional. In this description, for the convenience of explanation, the time it takes for the second neural network model (350) to output the response is referred to as the “processing time.” For example, if the response output by the second neural network model (350) consists of 500 tokens, the processing time may be 100 seconds, and if the response consists of 400 tokens, the processing time may be 80 seconds.

[0112] If the electronic device (100) inputs four user requests each into the second neural network model (350) in the order in which the user requests were received, the processing time of the second neural network model (350) in Step 1 (411) may be 100 seconds. This is because, in Step 1 (411), although the processing time of the second neural network model (350) for two user requests is 30 seconds, the processing time of the second neural network model (350) for one user request is 100 seconds. In this case, the third core and the fourth core, which are assigned to output a response to a user request with a processing time of 30 seconds, may be in a standby state in which no operation is performed for 70 seconds.

[0113] In addition, the processing time of the second neural network model (350) in Step 2 (412) may be 80 seconds. This is because, in Step 2 (412), although the processing time of the second neural network model (350) for one user request is 30 seconds, the processing time of the second neural network model (350) for two user requests is 80 seconds. In this case, the third core assigned to output a response to a user request with a processing time of 30 seconds may be in a standby state for 50 seconds. Here, the standby state may mean a state in which the core is not executing the second neural network model and is switching to a low-power standby state or performing an operation such as loading data to be processed in the next step.

[0114] Accordingly, if the electronic device (100) inputs four user requests into the second neural network model (350) without considering the plurality of first pieces of information, some cores may remain in a standby state, which may result in a waste of computing resources. To prevent such waste of computing resources, the electronic device (100) may group the plurality of user requests according to the expected output length based on the plurality of first pieces of information to create a plurality of groups, and if it is identified that a group including four or more user requests exists, it may input the four user requests included in the identified group into the second neural network model (350).

[0115] Since the electronic device (100) groups user requests with similar expected output lengths into one group and inputs four user requests belonging to the same group into the second neural network model (350) in one step, computing time can be saved.

[0116] For example, as illustrated in FIG. 4b, the processing time of the second neural network model (350) in Step 1' may be 40 seconds, and the processing time of the second neural network model (350) in Step 2' may be 100 seconds. Even when processing the same eight user requests, the electronic device (100) can reduce the computing time by about 40 seconds by grouping user requests having similar expected output lengths and processing the user requests belonging to the same group together in one step.

[0117] In the above description, it is explained that the second neural network model (350) can process four user requests in one step, but this is only one example, and it is of course possible to process any n user requests (n is a natural number greater than or equal to 2) in one step depending on the capacity of the memory (110) and the performance of the processor (130).

[0118] In the above description, the processor (130) is implemented as a multi-core processor having multiple cores, and is controlled to process one user request for each of the multiple cores per step. However, this is only one example, and the processor (130) may be implemented as multiple processors, and each of the multiple processors may process one user request per step. Depending on the implementation form of the processor (130) in the electronic device (100), the user request may be processed in various ways.

[0119] Additionally, in the present disclosure, "step" may refer to a unit of time required for the second neural network model (350) to process n user requests included in the same group in parallel. Furthermore, the term "step" may be replaced with various expressions representing the same / similar concept. For example, it may be replaced with various expressions such as "time step," "period," "unit time," "cycle," and "stage." However, in the present disclosure, for the convenience of explanation, it will be collectively referred to as "step."

[0120] In addition, in the present disclosure, a “group” may mean a set of n user requests that the second neural network model (350) processes in one step. The term “group” may be replaced with various expressions that indicate the same / similar concept. For example, it may be replaced with various expressions such as “batch,” “bundle,” and “set.” Accordingly, the expression “the electronic apparatus (100) can process n user requests in a batch” may be replaced with various expressions such as “the electronic apparatus (100) can process n user requests in a batch.” However, in the present disclosure, for the convenience of explanation, the expressions “group” and “grouping” will be used interchangeably.

[0121] As described above, the electronic device (100) can reduce computing time by grouping multiple user requests based on multiple pieces of first information. The description of FIGS. 5 to 7 described below will specifically describe a method for the electronic device (100) to group multiple user requests.

[0122] FIG. 5 is a diagram illustrating a method for creating a group of electronic devices according to one or more embodiments of the present disclosure.

[0123] According to FIG. 5, the electronic device (100) can group the user request queue (500) by creating multiple groups according to the range of expected output lengths.

[0124] Specifically, the electronic device (100) may group the 30 user requests into 10 groups based on the 30 user requests and the first information mapped to each of the 30 user requests. For example, as illustrated in FIG. 5, the electronic device (100) may group request 1, request 10, request 13, request 15, request 17, and request 30, which have expected output lengths greater than 0 and less than or equal to 20, into group 1.

[0125] In one embodiment, let's assume that the second neural network model (350) can process six user requests per step (n = 6). In this case, the electronic device (100) can identify whether a group containing six or more user requests exists. The electronic device (100) can identify that group 1 contains six user requests, and input the six user requests contained in group 1 into the second neural network model (350) to output six responses. After the electronic device (100) outputs responses to the six user requests contained in group 1, it can identify whether another group containing six or more user requests exists.

[0126] According to one embodiment, the electronic device (100) may input six user requests included in multiple groups having similar expected output lengths to the second neural network model (350) if there is no other group including six or more user requests. For example, since the expected output length ranges of groups 2 and 3 only differ by about 20 tokens, the electronic device (100) may identify that the expected output lengths of the user requests included in groups 2 and 3 are similar, and input three user requests included in group 2 and three user requests included in group 3 to the second neural network model (350) in one step.

[0127] According to another embodiment, if there is no other group including six or more user requests, the electronic device (100) may select six user requests with long response waiting times and input them into the second neural network model (350). For example, the electronic device (100) may input requests 2 and 3 included in group 2, request 4 included in group 3, request 5 and request 7 included in group 4, and request 6 included in group 5 into the second neural network model (350) in one step. In this case, since the electronic device (100) inputs user requests with long response waiting times into the second neural network model (350) first, the problem of user requests with very long response waiting times occurring because multiple user requests with similar expected output lengths are not received can be prevented.

[0128] FIG. 6 is a diagram illustrating a user request sorting method and a group creation method of an electronic device according to one or more embodiments of the present disclosure.

[0129] According to FIG. 6, the electronic device (100) can form a user request queue (620) by sorting a plurality of user requests (610) stored in the memory (110) in order of decreasing expected output length.

[0130] Specifically, the electronic device (100) may sort the 30 user requests in descending order of expected output length based on 30 pieces of first information mapped to each of the 30 user requests. For example, as illustrated in FIG. 6, since the expected output length of Request 3 is 12 tokens and is the smallest among the 30 user requests, the electronic device (100) may place Request 3 at the front of the user request queue (620), and may place Request 18, which has the largest expected output length of 389 tokens, at the back of the user request queue (620).

[0131] In one embodiment, let's assume that the second neural network model (350) can process six user requests per step (n = 6). The electronic device (100) can create multiple groups by grouping six user requests into the same group in order of decreasing expected output length based on a user request queue (620) sorted in order of decreasing expected output length. For example, as illustrated in FIG. 6, the electronic device (100) can group six user requests (Request 3, Request 30, Request 1, Request 10, Request 6, and Request 2) with the smallest expected output lengths among 30 user requests into Group 1. Additionally, the electronic device (100) can group the 6 user requests (request 8, request 24, request 5, request 27, request 11, and request 21) with the shortest expected output length among the 24 user requests excluding the 6 user requests included in group 1 into group 2.

[0132] According to one embodiment, the electronic device (100) may receive a new user request (e.g., request 31) and store it in the memory (110). In this case, the electronic device (100) may place the request 31 in the user request queue (620) based on the expected output length of the request 31. For example, if the expected output length of the request 31 is 75 tokens, the electronic device (100) may place the request 31 between requests 5 and 27. In this case, the electronic device (100) may sort the 31 user requests such that the request 31 is included in group 2 and the request 21 is included in group 3.

[0133] In the above description, it is only described that the electronic device (100) sorts the multiple user requests stored in the memory (110) in order of the expected output length being small. However, the electronic device (100) may also sort the multiple user requests stored in the memory (110) in order of the expected output length being large, and group the user requests into groups of six in order of the expected output length being large, thereby creating multiple groups. In this case, the electronic device (100) may input the six user requests included in each group in order of the expected output length being small to the second neural network model (350).

[0134] FIG. 7 is a diagram illustrating a method for processing a delayed user request of an electronic device according to one or more embodiments of the present disclosure.

[0135] According to FIG. 7, when the electronic device (100) identifies that there are m delayed user requests (m is a natural number greater than or equal to 1 and less than n) in the user request queue (700), it can identify whether there is a group among the plurality of groups that includes nm or more user requests.

[0136] In the description of FIG. 7, let us assume that n is 6 and m is 2 (n = 6, m = 2). In other words, let us assume that the second neural network model (350) performs an operation to identify whether a group containing four or more user requests exists when the number of user requests that can be processed per step is six and the electronic device (100) identifies that there are two delayed user requests.

[0137] According to one embodiment, the electronic device (100) may identify that the response waiting time of requests 2 and 3 exceeds a preset time based on second information mapped to each of requests 2 and 3, and may identify requests 2 and 3 as delayed user requests. If the electronic device (100) identifies that there are two delayed user requests, it may identify whether there is a group including four or more user requests from groups 1 to 10.

[0138] The electronic device (100) can identify that four user requests are included in group 8 and group 9, and input the four user requests and two delayed user requests included in group 8 or group 9 into the second neural network model (350) to output six responses. At this time, the electronic device (100) can randomly select one group from among group 8 and group 9, and can also select one group based on a representative expected output length.

[0139] Specifically, if the electronic device (100) identifies that there are multiple groups containing four or more user requests, the electronic device (100) can identify representative expected output lengths of two delayed user requests and compare them with the representative expected output lengths of each of the multiple groups. If the electronic device (100) identifies groups 8 and 9 containing four user requests, the electronic device (100) can identify representative expected output lengths of request 2 and request 3, which are delayed user requests.

[0140] Here, the term "representative expected output length" may refer to a length value that can represent the expected output lengths of multiple user requests. For example, the "representative expected output length" may include the average value, median value, or mode value of the expected output lengths corresponding to each of the multiple user requests. In this description, the term "representative expected output length" is described as referring to the average value of the expected output lengths corresponding to each of the multiple user requests.

[0141] According to one embodiment, if the expected output lengths of delayed user requests, Request 2 and Request 3, are 90 tokens and 130 tokens, respectively, the electronic device (100) may identify 110 tokens, which is an average value of the expected output lengths of Request 2 and Request 3, as the representative expected output length of the delayed user requests. In addition, the electronic device (100) may identify the average expected output length of the user requests included in each of Group 8 and Group 9 as the representative expected output length of Group 8 and Group 9.

[0142] Specifically, the electronic device (100) can identify 155 tokens, which is the average expected output length of four user requests (requests 23, 24, 26, 27) included in group 8, as the representative expected output length of group 8, and can identify 174 tokens, which is the average expected output length of four user requests (requests 19, 20, 21, 28) included in group 9, as the representative expected output length of group 9.

[0143] At this time, the electronic device (100) can compare the difference between the representative expected output length of the delayed user request and the representative expected output length of the plurality of groups and select the group with the smallest difference value among the plurality of groups. The electronic device (100) can identify that the representative expected output lengths of the delayed user requests, Request 2 and Request 3, are 110 tokens, the representative expected output length of Group 8 is 155 tokens, and the representative expected output length of Group 9 is 174 tokens, and select Group 8, which has the smallest difference in the representative expected output lengths among Groups 8 and 9. The electronic device (100) can select Group 8, input the four user requests and two delayed user requests included in the selected Group 8 into the second neural network model (350), and output six responses.

[0144] The above description assumes that there are multiple groups containing four or more user requests. However, in the case where there is only one group containing four or more user requests, the electronic device (100) can select one group and input the four user requests and two delayed user requests contained in the selected one group into the second neural network model (350) to output six responses.

[0145] In addition, although the above description assumes that there is a group containing four or more user requests, even if the electronic device (100) is identified as not having a group containing four or more user requests, it can select four user requests from among a plurality of user requests stored in the memory (110) based on a select score, input the four selected user requests and two delayed user requests into the second neural network model (350), and output six responses.

[0146] Here, the "selection score" may mean a score that serves as a criterion for the electronic device (100) to select nm user requests from among the plurality of user requests stored in the memory (110). At this time, the electronic device (100) may calculate a selection score for each of the plurality of user requests based on first information and a response waiting time corresponding to each of the plurality of user requests.

[0147] For example, the selection score for each of multiple user requests can be calculated by the following mathematical formula.

[0148]

[0149] Here, S1 is a value indicating the degree of similarity between the expected output length value of the user request and the expected output length value of the delayed user request, and may have a value between 0 and 1. For example, the electronic device (100) may calculate the difference between the expected output length of each of the plurality of user requests and the expected output length of the delayed user request, identify the largest difference value and the smallest difference value, and express the degree of similarity between the expected output length value of each of the plurality of user requests and the expected output length value of the delayed user request as a value between 0 and 1 through a min-max normalization method.

[0150] In addition, S2 is a normalized value of the response waiting time and can have a value between 0 and 1. For example, the electronic device (100) can normalize the response waiting time of multiple user requests through a minimum-maximum normalization method by identifying the largest response waiting time value and the smallest response waiting time value. At this time, the minimum-maximum normalization method is only one example of calculating the S1 and S2 values, and the electronic device (100) can calculate the S1 and S2 values ​​through various normalization methods.

[0151] Also, in [Equation 1], W1 and W -2may mean the weights assigned to S1 and S2 respectively. W1 and W2 can change depending on the situation and can have any value.

[0152] In one embodiment, when the number of user requests stored in the memory (110) is 1000 or more, the electronic device (100) may identify that the number of user requests to be processed is very large, and may set W1 to be greater than the value of W2 (W1>> W2) to focus more on reducing the overall computing time rather than processing user requests with long response waiting times first.

[0153] According to another embodiment, when the number of user requests stored in the memory (110) is less than 1000, the electronic device (100) may identify that there are not many user requests to be processed, and may set W2 to be greater than the value of W1 (W2>> W1) by placing more emphasis on processing user requests with long response waiting times first.

[0154] When the selection scores are calculated according to the above-described method, the electronic device (100) can select four user requests from among the multiple user requests stored in the memory (110) in descending order of selection scores. In addition, the electronic device (100) can input the four selected user requests and two delayed user requests into the second neural network model (350) to output six responses.

[0155] Although the above description only explains that the value of the weight can change based on whether the number of user requests stored in the memory (110) is more than or less than 1000, this is only one example, and the number of user requests that serves as a reference can be set in various ways, such as 100 or 200, depending on the number of user requests that the second neural network model (350) can process in one step. In addition, it goes without saying that the value of the weight can be set to an arbitrary value by the user or manufacturer of the electronic device (100).

[0156] FIG. 8 is a diagram illustrating a learning method of a first neural network model according to one or more embodiments of the present disclosure.

[0157] According to FIG. 8, the first neural network model (320) can be trained based on a plurality of learning data (810, 820, 830) consisting of a user request and an output length of a response corresponding to the user request.

[0158] Specifically, the first neural network model (320) may include a neural network model learned based on the output lengths of multiple user requests and multiple responses output in response to the multiple user requests.

[0159] According to one embodiment, the first neural network model (320) may be a neural network model including a transformer. In this case, the first neural network model (320) may understand the user's intention or the user's question included in the user request. For example, the first neural network model (320) may understand the user's intention of "writing an email" for the user request included in the first learning data (810). In addition, the first neural network model (320) may understand the user's intention of "one-line summary" for the user request included in the second learning data (820) and "generating three titles" for the user request included in the third learning data (830).

[0160] According to the above-described method, the first neural network model (320) can understand the user's intention for the user's request included in a large amount of learning data, and can be trained to predict the output length based on the user's intention.

[0161] According to one embodiment, the first neural network model (320) can learn, based on the first learning data (810), that when the user's intention of "write an email" is included, the output length corresponds to approximately 150 tokens, and can learn, based on the second learning data (820), that when the user's intention of "summarize in one line" is included, the output length corresponds to approximately 10 tokens. In addition, the first neural network model (320) can learn, based on the third learning data (830), that when the user's intention of "create three titles" is included, the output length corresponds to approximately 15 tokens, and so on. Thus, the first neural network model (320) can be trained to output an expected output length corresponding to a user's question and type based on numerous types of learning data.

[0162] For example, when the first neural network model (320) is trained by the first learning data (810) and the second learning data (820), the first neural network model (320) can predict that the output length will be longer when the user request includes the user intent of “write an email” than when the user request includes the user intent of “summarize in one line.”

[0163] In another embodiment, the first neural network model (320) may be trained based on the number of tokens included in a user request and the output length of a response corresponding to the user request. For example, even if the user requests include the same type of user intent, "write an email," if the fourth training data includes a user request to write an email with content A, and the fifth training data includes a user request to write an email with content B, the output lengths of the fourth and fifth training data may differ. Specifically, if A includes 1,000 tokens while B includes only 100 tokens, the output length of the fourth training data is bound to be longer even if they include the same type of user intent, "write an email." Therefore, the first neural network model may be trained to predict the output length based not only on the user intent but also on the number of tokens included in the user request.

[0164] In the above description, it was only explained that the first neural network model (320) can be learned based on the user's question and intention included in the user request and the output length of the response output in response to the user request. However, it is obvious that the first neural network model (320) can predict the output length corresponding to the user request through various methods by learning the patterns and structures of numerous learning data.

[0165] In addition, in the above description, it was only explained that the first neural network model (320) may be a neural network model including a transformer, but it is not limited thereto, and the first neural network model (320) may be a neural network model including a CNN (Convolutional Neural Network), a DNN (Deep Neural Network), an RNN (Recurrent Neural Network), an RBM (Restricted Boltzmann Machine), a DBN (Deep Belief Network), a BRDNN (Bidirectional Recurrent Deep Neural Network), an LSTM (Long Short Term Memory), or a deep Q-Network.

[0166] In addition, the first neural network model (320) may be stored in an external device (200). Since the first neural network model (320) does not require as many computing resources as the second neural network model (350), the first neural network model (320) may also be stored in an external device (200), such as a smartphone, tablet PC, TV, etc., which have relatively low processor performance and relatively small memory space compared to a server device. In this case, the external device (200) may generate first information about the expected output length through the first neural network model (320), transmit a user request and data in which the first information is mapped to the user request to the electronic device (100), and the electronic device (100) may receive a plurality of user requests and data in which the first information is mapped to each of the plurality of user requests through the communication interface (120).

[0167] FIG. 9 is a flowchart illustrating a method for controlling an electronic device according to one or more embodiments of the present disclosure.

[0168] According to FIG. 9, in operation 910, the electronic device (100) can map a plurality of second pieces of information about a plurality of times at which each of the plurality of user requests was received to the plurality of user requests.

[0169] In operation 920, the electronic device (100) can store a plurality of first pieces of information corresponding to each of the plurality of user requests by mapping them to the plurality of user requests.

[0170] In operation 930, the electronic device (100) can identify whether there are m delayed user requests whose response waiting time exceeds a preset time.

[0171] If there are m delayed user requests (S930:Y), in operation 940, the electronic device (100) can identify whether there is a group containing nm or more user requests.

[0172] If it is identified that there is a group containing nm or more user requests (S940:Y), in operation 950, the electronic device (100) can input nm user requests and m delayed user requests included in the identified group into a second neural network model to output n responses.

[0173] If it is identified that there is no group containing nm or more user requests (S940:N), in operation 960, the electronic device (100) may select nm user requests from among the plurality of user requests based on the selection score.

[0174] Next, in operation 970, the electronic device (100) can input the selected nm user requests and m delayed user requests into a second neural network model to output n responses.

[0175] FIG. 10 is a flowchart illustrating a method for controlling an electronic device according to one or more embodiments of the present disclosure.

[0176] According to FIG. 10, in operation 1010, the electronic device (100) can input a plurality of received user requests into a first neural network model to output a plurality of pieces of first information.

[0177] In operation 1020, the electronic device (100) can store a plurality of first pieces of information corresponding to each of the plurality of user requests by mapping them to the plurality of user requests.

[0178] In operation 1030, the electronic device (100) can input n user requests among a plurality of user requests into a second neural network model based on a plurality of first pieces of information and output n responses.

[0179] According to one embodiment, the electronic device (100) can group a plurality of user requests based on a plurality of pieces of first information according to an expected output length to create a plurality of groups, and when it is identified that a group including n or more user requests exists, the electronic device can input n user requests included in the identified group into a second neural network model to output n responses.

[0180] According to another embodiment, the electronic device (100) may sort a plurality of user requests in order of decreasing expected output length based on a plurality of first pieces of information, group the user requests into the same group by n in order of decreasing expected output length, and input the n user requests included in each group in order of decreasing expected output length to a second neural network model.

[0181] According to another embodiment, the electronic device (100) may sort a plurality of user requests in order of increasing expected output length based on a plurality of pieces of first information, group the user requests into the same group by n pieces in order of increasing expected output length, and input the n user requests included in each group in order of increasing expected output length to a second neural network model.

[0182] In the description of FIGS. 1 to 10 described above, only an embodiment in which the electronic device (100) outputs n responses corresponding to n user requests using the first neural network model and the second neural network model stored in the memory has been described, but the electronic device (100) may be linked to an external server and may perform the operations described in the description of FIGS. 1 to 10 described above using various artificial intelligence models stored in the external server.

[0183] The various methods described in FIGS. 9 and 10 can be performed by an electronic device having the configuration shown in FIG. 2, but are not necessarily limited thereto, and can be performed by electronic devices having various configurations.

[0184] Meanwhile, in FIGS. 9 and 10, the order is mapped for all steps for convenience of explanation, but it is of course not necessarily limited to the order of steps that are not related to the order or can be performed in parallel.

[0185] The various embodiments of the present disclosure can be applied and implemented in all types of electronic devices, and each embodiment can be combined with each other in whole or in part to be applied to one device.

[0186] Meanwhile, the various embodiments described above may be implemented in a computer-readable recording medium or similar device using software, hardware, or a combination thereof. In some cases, the embodiments described herein may be implemented by the processor itself. In a software implementation, embodiments, such as the procedures and functions described herein, may be implemented as separate software modules. Each of the software modules may perform one or more functions and operations described herein.

[0187] Meanwhile, computer instructions for performing processing operations of the electronic device (100) according to various embodiments of the present disclosure described above may be stored in a non-transitory computer-readable medium.

[0188] Computer instructions stored on such non-transitory computer-readable media, when executed by a processor of a specific device, cause the specific device to perform the setting methods according to the various embodiments described above.

[0189] A non-transitory computer-readable medium refers to a medium that permanently stores data and can be read by a device, rather than a medium that stores data for a short period of time, such as a register, cache, or memory. Specific examples of non-transitory computer-readable media include CDs, DVDs, hard disks, Blu-ray discs, USBs, memory cards, and ROMs.

[0190] Although the preferred embodiments of the present disclosure have been illustrated and described above, the present disclosure is not limited to the specific embodiments described above, and various modifications may be made by a person having ordinary skill in the art to which the present disclosure pertains without departing from the gist of the present disclosure as claimed in the claims, and such modifications should not be understood individually from the technical idea or prospect of the present disclosure.

Claims

1. In electronic devices, communication interface; A memory storing a first neural network model that outputs first information about the expected output length of a response to a user request and a second neural network model that processes n (where n is a natural number greater than or equal to 2) user requests and outputs n responses; and comprising one or more processors; One or more of the above processors, Inputting a plurality of user requests received through the communication interface into the first neural network model and outputting a plurality of first pieces of information corresponding to each of the plurality of user requests, The plurality of first pieces of information corresponding to each of the plurality of user requests are mapped to the plurality of user requests and stored in the memory, An electronic device that inputs n user requests among the plurality of user requests stored in the memory into the second neural network model based on the plurality of first pieces of information and outputs n responses.

2. In paragraph 1, One or more of the above processors, Based on the plurality of first pieces of information, the plurality of user requests stored in the memory are grouped according to the expected output length to create a plurality of groups, An electronic device that, when a group containing n or more user requests is identified, inputs n user requests among the user requests included in the identified group into the second neural network model to output n responses.

3. In paragraph 2, One or more of the above processors, A plurality of second pieces of information about the time at which each of the plurality of user requests was received through the communication interface are mapped to the plurality of user requests and stored in the memory, An electronic device that inputs n user requests among the plurality of user requests stored in the memory into the second neural network model based on the plurality of first information and the plurality of second information and outputs n responses.

4. In paragraph 3, One or more of the above processors, Based on the plurality of second pieces of information, if it is identified that there are m delayed user requests (m is a natural number greater than or equal to 1 and less than n) whose response waiting time exceeds a preset time, it is identified whether there is a group among the plurality of groups that includes nm or more user requests, An electronic device that, when it is identified that there is a group containing nm or more user requests, inputs nm user requests and m delayed user requests included in the identified group into the second neural network model to output n responses.

5. In paragraph 4, One or more of the above processors, If it is identified that there are multiple groups containing more than nm user requests, the representative expected output length of the m delayed user requests is identified, By comparing the difference between the representative expected output length of each of the above multiple groups and the representative expected output length of the delayed user request, the group with the smallest difference value is selected among the above multiple groups, An electronic device that inputs nm user requests and m delayed user requests included in the selected group into the second neural network model and outputs n responses.

6. In paragraph 4, One or more of the above processors, If it is identified that there is no group containing more than nm user requests, nm user requests are selected from among the plurality of user requests stored in the memory in descending order of the selection score calculated based on the plurality of first information and the response waiting time, An electronic device that inputs the above-mentioned nm selected user requests and the above-mentioned m delayed user requests into the second neural network model and outputs n responses.

7. In paragraph 1, One or more of the above processors, Based on the plurality of first pieces of information, the plurality of user requests stored in the memory are sorted in order of the expected output length, Create multiple groups by grouping user requests into the same group in order of the expected output length, n in order of the expected output length, An electronic device that inputs n user requests included in each group in order from a group having a smaller expected output length to a group having a larger expected output length into the second neural network model.

8. In paragraph 1, One or more of the above processors, Based on the plurality of first pieces of information, the plurality of user requests stored in the memory are sorted in order of expected output length, Multiple groups are created by grouping user requests into the same group in order of the expected output length, n in each group, An electronic device that inputs n user requests included in each group in the order of the expected output length from the group with the largest expected output length to the group with the smallest expected output length into the second neural network model.

9. In paragraph 1, One or more of the above processors, An electronic device that receives data in which the first information is mapped to each of the plurality of user requests and the plurality of user requests from an external device through the communication interface.

10. In paragraph 1, The above first neural network model is, A neural network model learned based on the output lengths of the plurality of user requests and the plurality of responses output in response to the plurality of user requests, The above second neural network model is, An electronic device, which is a neural network model learned based on the plurality of user requests and the plurality of responses output in response to the plurality of user requests.

11. In a method for controlling an electronic device, A step of inputting a plurality of received user requests into a first neural network model and outputting a plurality of first pieces of information corresponding to each of the plurality of user requests; A step of mapping and storing the plurality of first pieces of information corresponding to each of the plurality of user requests to the plurality of user requests; and A step of inputting n user requests among the plurality of stored user requests into a second neural network model based on the plurality of first pieces of information and outputting n responses; The above first neural network model is a neural network model that outputs first information about the expected output length of a response to a user request, A control method for an electronic device, wherein the second neural network model is a neural network model that processes n user requests (n is a natural number greater than or equal to 2) and outputs n responses.

12. In paragraph 11, A step of creating a plurality of groups by grouping the plurality of user requests stored based on the plurality of first pieces of information according to the expected output length; and A control method of an electronic device, wherein when a group containing n or more user requests is identified, n user requests among the user requests included in the identified group are input to the second neural network model to output n responses.

13. In paragraph 12, A step of storing a plurality of second pieces of information about the time at which each of the plurality of user requests was received by mapping them to the plurality of user requests; and A control method of an electronic device, comprising: a step of inputting n user requests among the plurality of stored user requests into the second neural network model based on the plurality of first information and the plurality of second information, and outputting n responses.

14. In paragraph 13, Based on the plurality of second pieces of information, if it is identified that there are m delayed user requests (m is a natural number greater than or equal to 1 and less than n) whose response waiting time exceeds a preset time, a step of identifying whether there is a group among the plurality of groups that includes nm or more user requests; and A control method of an electronic device, comprising: a step of inputting nm user requests and m delayed user requests included in the identified group into the second neural network model to output n responses, when a group including nm or more user requests is identified; 15. A non-transitory computer-readable recording medium storing computer instructions that, when executed by a processor of an electronic device, cause the electronic device to perform an operation, the operation comprising: A step of inputting a plurality of received user requests into a first neural network model and outputting a plurality of first pieces of information corresponding to each of the plurality of user requests; A step of mapping and storing the plurality of first pieces of information corresponding to each of the plurality of user requests to the plurality of user requests; and A step of inputting n user requests among the plurality of stored user requests into a second neural network model based on the plurality of first pieces of information and outputting n responses; The above first neural network model is a neural network model that outputs first information about the expected output length of a response to a user request, A non-transitory computer-readable recording medium in which the above second neural network model is a neural network model that processes n user requests (n is a natural number greater than or equal to 2) and outputs n responses.

Citation Information

Patent Citations

  • Method and apparatus to operate search system through response time using machine learning

    KR102525918B1

  • Wet vacuum cleaner

    KR102629020B1

  • Natural language queries based on user defined attributes

    US10546001B1

  • Predicting Performance Of Multiple Queries Executing In A Database

    US20100082602A1

  • Data-driven checkpoint selector

    US20220092067A1