Electronic device and method for processing user utterance

By integrating a processor, memory, and communication module in electronic devices for efficient AI processing, the solution addresses the latency issue in user input responses, improving user convenience and efficiency in voice-activated tasks.

WO2025023722A1PCT designated stage expired Publication Date: 2025-01-30SAMSUNG ELECTRONICS CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/KR2024/010672
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-08-25
Filing Date
2024-07-24
Publication Date
2025-01-30

AI Technical Summary

Technical Problem

Current electronic devices face challenges in reducing the time interval and query latency between user ignition and system response, which affects user convenience and efficiency in speech recognition and natural language processing applications.

Method used

The implementation of an electronic device with a processor and memory that executes instructions to quickly process user inputs, including voice recognition and natural language understanding, using a combination of local and cloud-based AI models to generate responses, and a communication module for efficient data exchange, thereby reducing latency.

Benefits of technology

This solution significantly reduces the time interval between user input and system response, enhancing user convenience and efficiency in voice-activated tasks by leveraging both local and cloud-based AI processing capabilities.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure KR2024010672_30012025_PF_FP_ABST
    Figure KR2024010672_30012025_PF_FP_ABST
Patent Text Reader

Abstract

Disclosed are an electronic device and a method for processing a user utterance. An operation method of an electronic device (101, 201, 501) according to an embodiment may comprise an operation for outputting a first response (63) for a portion of a user utterance, in response to obtaining the portion. The method may comprise an operation for obtaining a user input (67) for the first response. The method may comprise an operation for outputting a second response (65) for the user utterance on the basis of the user input (67), in response to termination of the user utterance. Other embodiments may be possible.
Need to check novelty before this filing date? Find Prior Art

Description

Electronic devices and methods for processing user speech

[0001] The disclosure below relates to an electronic device and a method for processing user speech.

[0002] Applications involving speech recognition and / or natural language processing, such as voice assistants, can process user utterances using large language models.

[0003] The above information may be provided as background art to aid in understanding the present disclosure. No claim or determination is made as to whether any of the above is applicable as prior art related to the present disclosure.

[0004] To improve user convenience, techniques are needed to reduce the time interval between user utterance and system response and / or the cost of queries.

[0005] The technical tasks to be achieved in this document are not limited to the technical tasks mentioned above, and other technical tasks not mentioned will be clearly understood by those with ordinary skill in the technical field to which this document pertains from the description below.

[0006] An electronic device (101, 201, 501) according to one embodiment may include at least one processor (120, 203, 620) and a memory (130, 207, 630) storing instructions. The instructions may cause the electronic device (101, 201, 501) to perform a plurality of operations based on being individually or collectively executed by the at least one processor (120, 203, 620). The plurality of operations may include an operation of outputting a first response (63) to a portion of a user utterance in response to obtaining the portion. The plurality of operations may include an operation of obtaining a user input (67) for the first response. The above plurality of operations may include an operation of outputting a second response (65) to the user utterance based on the user input (67) in response to the termination of the user utterance. The operation of outputting the first response (63) may include an operation of retrieving data associated with an entity included in a portion of the user utterance or a combination of entities included in a portion of the user utterance from the memory (130, 207, 630). The operation of outputting the first response (63) may include an operation of outputting a list of items associated with the entity or the combination of entities based on the retrieved data.

[0007] An electronic device (101, 201, 501) according to one embodiment may include at least one processor (120, 203, 620) and a memory (130, 207, 630) storing instructions. The instructions may cause the electronic device (101, 201, 501) to perform a plurality of operations based on being individually or collectively executed by the at least one processor (120, 203, 620). The plurality of operations may include an operation of identifying an entity from a portion of a user utterance before the end of the user utterance. The plurality of operations may include an operation of obtaining data related to the entity from a data source in response to the identification of the entity. The plurality of operations may include an operation of outputting information about the entity based on the data before the end of the user utterance.

[0008] A method of operating an electronic device (101, 201, 501) according to one embodiment may include an operation of obtaining a portion of a user utterance and outputting a first response (63) to the portion. The method may include an operation of obtaining user input (67) for the first response. The method may include an operation of outputting a second response (65) to the user utterance based on the user input (67) in response to a termination of the user utterance.

[0009] According to one embodiment, a computer-readable recording medium storing one or more computer programs may include instructions for performing the method in a processor.

[0010] FIG. 1 is a block diagram of an electronic device within a network environment according to one embodiment.

[0011] FIG. 2 is a block diagram illustrating an integrated intelligence system according to one embodiment.

[0012] FIG. 3 is a diagram showing a form in which relationship information between concepts and operations is stored in a database according to one embodiment.

[0013] FIG. 4 is a diagram illustrating a screen for processing voice input received through an intelligent app by an electronic device according to one embodiment.

[0014] FIG. 5 is a drawing for explaining an ignition processing process of an electronic device according to one embodiment.

[0015] Figure 6 is a schematic block diagram of an electronic device according to one embodiment.

[0016] FIG. 7 is a diagram illustrating an example of an ignition processing process according to one embodiment.

[0017] FIG. 8 is a drawing for explaining an example of an ignition processing process according to one embodiment.

[0018] FIG. 9 is a drawing for explaining an example of an ignition processing process according to one embodiment.

[0019] FIG. 10 is a drawing for explaining an example of an ignition processing process according to one embodiment.

[0020] Fig. 11 is a drawing for explaining an example of an ignition processing process according to one embodiment.

[0021] Fig. 12 is a drawing for explaining an example of an ignition processing process according to one embodiment.

[0022] Fig. 13 is a drawing for explaining an example of an ignition processing process according to one embodiment.

[0023] Fig. 14 is a flowchart for explaining the operation of an electronic device according to one embodiment.

[0024] Fig. 15 is a flowchart for explaining the operation of an electronic device according to one embodiment.

[0025] Hereinafter, embodiments will be described in detail with reference to the attached drawings. In the description with reference to the attached drawings, identical components are assigned the same reference numerals regardless of the drawing numbers, and redundant descriptions thereof will be omitted.

[0026]

[0027] FIG. 1 is a block diagram of an electronic device (101) within a network environment (100) according to one embodiment. Referring to FIG. 1, in the network environment (100), the electronic device (101) may communicate with the electronic device (102) via a first network (198) (e.g., a short-range wireless communication network), or may communicate with at least one of the electronic device (104) and the server (108) via a network (199) (e.g., a long-range wireless communication network). According to one embodiment, the electronic device (101) may communicate with the electronic device (104) via the server (108). According to one embodiment, the electronic device (101) may include a processor (120), a memory (130), an input module (150), an audio output module (155), a display module (160), an audio module (170), a sensor module (176), an interface (177), a connection terminal (178), a haptic module (179), a camera module (180), a power management module (188), a battery (189), a communication module (190), a subscriber identification module (196), or an antenna module (197). In some embodiments, the electronic device (101) may omit at least one of these components (e.g., the connection terminal (178)), or may have one or more other components added. In some embodiments, some of these components (e.g., the sensor module (176), the camera module (180), or the antenna module (197)) may be integrated into one component (e.g., the display module (160)).

[0028] The processor (120) may, for example, execute software (e.g., a program (140)) to control at least one other component (e.g., a hardware or software component) of the electronic device (101) connected to the processor (120) and perform various data processing or calculations. According to one embodiment, as at least a part of the data processing or calculations, the processor (120) may store commands or data received from other components (e.g., a sensor module (176) or a communication module (190)) in a volatile memory (132), process the commands or data stored in the volatile memory (132), and store result data in a non-volatile memory (134). According to one embodiment, the processor (120) may include a main processor (121) (e.g., a central processing unit or an application processor) or a secondary processor (123) (e.g., a graphics processing unit, a neural processing unit (NPU), an image signal processor, a sensor hub processor, or a communication processor)) that can operate independently or together therewith. For example, if the electronic device (101) includes a main processor (121) and a secondary processor (123), the secondary processor (123) may be configured to use less power than the main processor (121) or to be specialized for a specified function. The secondary processor (123) may be implemented separately from the main processor (121) or as a part thereof.

[0029] The auxiliary processor (123) may control at least a portion of functions or states associated with at least one component (e.g., a display module (160), a sensor module (176), or a communication module (190)) of the electronic device (101), for example, on behalf of the main processor (121) while the main processor (121) is in an inactive (e.g., sleep) state, or together with the main processor (121) while the main processor (121) is in an active (e.g., application execution) state. In one embodiment, the auxiliary processor (123) (e.g., an image signal processor or a communication processor) may be implemented as a part of another functionally related component (e.g., a camera module (180) or a communication module (190)). In one embodiment, the auxiliary processor (123) (e.g., a neural network processing unit) may include a hardware structure specialized for processing artificial intelligence models. The artificial intelligence models may be generated through machine learning. This learning can be performed, for example, on the electronic device (101) itself where the artificial intelligence model is executed, or can be performed through a separate server (e.g., server (108)). The learning algorithm can include, for example, supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning, but is not limited to the examples described above. The artificial intelligence model can include multiple artificial neural network layers.The artificial neural network may be one of a deep neural network (DNN), a convolutional neural network (CNN), a recurrent neural network (RNN), a restricted Boltzmann machine (RBM), a deep belief network (DBN), a bidirectional recurrent deep neural network (BRDNN), a deep Q-network, or a combination of two or more of the above, but is not limited to the examples described above. In addition to, or alternatively to, a hardware structure, an artificial intelligence model may include a software structure.

[0030] The memory (130) can store various data used by at least one component (e.g., the processor (120) or the sensor module (176)) of the electronic device (101). The data can include, for example, software (e.g., the program (140)) and input data or output data for commands related thereto. The memory (130) can include a volatile memory (132) or a non-volatile memory (134). According to one embodiment, instructions stored in the memory (130) can cause the electronic device (101) to perform one or more operations based on being individually or collectively executed by at least one processor (e.g., the main processor (121) and / or the auxiliary processor (123)). For example, instructions stored in the memory (130) may be executed by one processor (e.g., a main processor (121) or an auxiliary processor (123) such as a communication processor) or by multiple processors operating cooperatively (e.g., a main processor (121) and an auxiliary processor (123)).

[0031] The program (140) may be stored as software in the memory (130) and may include, for example, an operating system (142), middleware (144), or an application (146).

[0032] The input module (150) can receive commands or data to be used in a component of the electronic device (101) (e.g., a processor (120)) from an external source (e.g., a user) of the electronic device (101). The input module (150) can include, for example, a microphone, a mouse, a keyboard, a key (e.g., a button), or a digital pen (e.g., a stylus pen).

[0033] The audio output module (155) can output audio signals to the outside of the electronic device (101). The audio output module (155) can include, for example, a speaker or a receiver. The speaker can be used for general purposes, such as multimedia playback or recording playback. The receiver can be used to receive incoming calls. In one embodiment, the receiver can be implemented separately from the speaker or as part of the speaker.

[0034] The display module (160) can visually provide information to an external party (e.g., a user) of the electronic device (101). The display module (160) may include, for example, a display, a holographic device, or a projector and a control circuit for controlling the device. In one embodiment, the display module (160) may include a touch sensor configured to detect a touch, or a pressure sensor configured to measure the intensity of a force generated by the touch.

[0035] The audio module (170) can convert sound into an electrical signal, or vice versa, convert an electrical signal into sound. According to one embodiment, the audio module (170) can acquire sound through the input module (150), output sound through the sound output module (155), or an external electronic device (e.g., electronic device (102)) (e.g., speaker or headphone) directly or wirelessly connected to the electronic device (101).

[0036] The sensor module (176) can detect the operating status (e.g., power or temperature) of the electronic device (101) or the external environmental status (e.g., user status) and generate an electrical signal or data value corresponding to the detected status. According to one embodiment, the sensor module (176) can include, for example, a gesture sensor, a gyro sensor, a barometric pressure sensor, a magnetic sensor, an acceleration sensor, a grip sensor, a proximity sensor, a color sensor, an IR (infrared) sensor, a biometric sensor, a temperature sensor, a humidity sensor, or an illuminance sensor.

[0037] The interface (177) may support one or more designated protocols that may be used to directly or wirelessly connect the electronic device (101) with an external electronic device (e.g., the electronic device (102)). In one embodiment, the interface (177) may include, for example, a high definition multimedia interface (HDMI), a universal serial bus (USB) interface, an SD card interface, or an audio interface.

[0038] The connection terminal (178) may include a connector through which the electronic device (101) may be physically connected to an external electronic device (e.g., electronic device (102)). According to one embodiment, the connection terminal (178) may include, for example, an HDMI connector, a USB connector, an SD card connector, or an audio connector (e.g., a headphone connector).

[0039] A haptic module (179) can convert electrical signals into mechanical stimuli (e.g., vibration or movement) or electrical stimuli that a user can perceive through tactile or kinesthetic sensations. In one embodiment, the haptic module (179) can include, for example, a motor, a piezoelectric element, or an electrical stimulation device.

[0040] The camera module (180) can capture still images and videos. According to one embodiment, the camera module (180) may include one or more lenses, image sensors, image signal processors, or flashes.

[0041] The power management module (188) can manage power supplied to the electronic device (101). According to one embodiment, the power management module (188) can be implemented, for example, as at least a part of a power management integrated circuit (PMIC).

[0042] A battery (189) may power at least one component of the electronic device (101). In one embodiment, the battery (189) may include, for example, a non-rechargeable primary battery, a rechargeable secondary battery, or a fuel cell.

[0043] The communication module (190) may support the establishment of a direct (e.g., wired) communication channel or a wireless communication channel between the electronic device (101) and an external electronic device (e.g., electronic device (102), electronic device (104), or server (108)), and the performance of communication through the established communication channel. The communication module (190) may operate independently from the processor (120) (e.g., application processor) and may include one or more communication processors that support direct (e.g., wired) communication or wireless communication. According to one embodiment, the communication module (190) may include a wireless communication module (192) (e.g., a cellular communication module, a short-range wireless communication module, or a global navigation satellite system (GNSS) communication module) or a wired communication module (194) (e.g., a local area network (LAN) communication module, or a power line communication module). Among these communication modules, the corresponding communication module can communicate with an external electronic device (104) via a first network (198) (e.g., a short-range communication network such as Bluetooth, wireless fidelity (WiFi) direct, or infrared data association (IrDA)) or a second network (199) (e.g., a long-range communication network such as a legacy cellular network, a 5G network, a next-generation communication network, the Internet, or a computer network (e.g., a LAN or WAN)). These various types of communication modules can be integrated into a single component (e.g., a single chip) or implemented as multiple separate components (e.g., multiple chips). The wireless communication module (192) can verify or authenticate the electronic device (101) within a communication network such as the first network (198) or the second network (199) by using subscriber information (e.g., an international mobile subscriber identity (IMSI)) stored in the subscriber identification module (196).

[0044] The wireless communication module (192) can support 5G networks and next-generation communication technologies following the 4G network, such as NR access technology (new radio access technology). The NR access technology can support high-speed transmission of high-capacity data (eMBB (enhanced mobile broadband)), minimization of terminal power and connection of multiple terminals (mMTC (massive machine type communications)), or high reliability and low latency (URLLC (ultra-reliable and low-latency communications)). The wireless communication module (192) can support, for example, a high-frequency band (e.g., mmWave band) to achieve a high data transmission rate. The wireless communication module (192) can support various technologies for securing performance in a high-frequency band, such as beamforming, massive multiple-input and multiple-output (MIMO), full dimensional MIMO (FD-MIMO), array antenna, analog beam-forming, or large scale antenna. The wireless communication module (192) can support various requirements specified in the electronic device (101), an external electronic device (e.g., the electronic device (104)), or a network system (e.g., the second network (199)). According to one embodiment, the wireless communication module (192) can support a peak data rate (e.g., 20 Gbps or more) for eMBB realization, a loss coverage (e.g., 164 dB or less) for mMTC realization, or a U-plane latency (e.g., 0.5 ms or less for downlink (DL) and uplink (UL), or 1 ms or less for round trip) for URLLC realization.

[0045] The antenna module (197) can transmit or receive signals or power to or from an external device (e.g., an external electronic device). In one embodiment, the antenna module (197) may include an antenna including a radiator formed of a conductor or a conductive pattern formed on a substrate (e.g., a PCB). In one embodiment, the antenna module (197) may include a plurality of antennas (e.g., an array antenna). In this case, at least one antenna suitable for a communication method used in a communication network, such as the first network (198) or the second network (199), may be selected from the plurality of antennas by, for example, the communication module (190). A signal or power may be transmitted or received between the communication module (190) and an external electronic device through the selected at least one antenna. In some embodiments, in addition to the radiator, another component (e.g., a radio frequency integrated circuit (RFIC)) may be additionally formed as a part of the antenna module (197).

[0046] In one embodiment, the antenna module (197) may form a mmWave antenna module. In one embodiment, the mmWave antenna module may include a printed circuit board, an RFIC disposed on or adjacent a first side (e.g., a bottom side) of the printed circuit board and capable of supporting a designated high-frequency band (e.g., a mmWave band), and a plurality of antennas (e.g., an array antenna) disposed on or adjacent a second side (e.g., a top side or a side side) of the printed circuit board and capable of transmitting or receiving signals in the designated high-frequency band.

[0047] At least some of the above components can be interconnected and exchange signals (e.g., commands or data) with each other via a communication method between peripheral devices (e.g., a bus, GPIO (general purpose input and output), SPI (serial peripheral interface), or MIPI (mobile industry processor interface)).

[0048] According to one embodiment, commands or data may be transmitted or received between the electronic device (101) and an external electronic device (104) via a server (108) connected to a second network (199). Each of the external electronic devices (102 or 104) may be the same or a different type of device as the electronic device (101). According to one embodiment, all or part of the operations executed in the electronic device (101) may be executed in one or more of the external electronic devices (102, 104, or 108). For example, when the electronic device (101) is to perform a certain function or service automatically or in response to a request from a user or another device, the electronic device (101) may, instead of or in addition to executing the function or service itself, request one or more external electronic devices to perform the function or at least a part of the service. One or more external electronic devices that receive the request may execute at least a portion of the requested function or service, or an additional function or service related to the request, and transmit the result of the execution to the electronic device (101). The electronic device (101) may process the result as is or additionally and provide it as at least a portion of a response to the request. For this purpose, cloud computing, distributed computing, mobile edge computing (MEC), or client-server computing technology may be used, for example. The electronic device (101) may provide an ultra-low latency service by using distributed computing or mobile edge computing, for example. In another embodiment, the external electronic device (104) may include an Internet of Things (IoT) device. The server (108) may be an intelligent server utilizing machine learning and / or a neural network. According to one embodiment, the external electronic device (104) or the server (108) may be included in the second network (199).The electronic device (101) can be applied to intelligent services (e.g., smart home, smart city, smart car, or healthcare) based on 5G communication technology and IoT-related technology.

[0049]

[0050] Referring to FIG. 2, an integrated intelligent system (20) of one embodiment may include an electronic device (201) (e.g., electronic device (101) of FIG. 1), an intelligent server (200) (e.g., server (108) of FIG. 1), and a service server (300) (e.g., server (108) of FIG. 1).

[0051] An electronic device (201) of one embodiment may be a terminal device (or electronic device) that can connect to the Internet, and may be, for example, a mobile phone, a smart phone, a personal digital assistant (PDA), a laptop computer, a TV, white goods, a wearable device, an HMD, or a smart speaker.

[0052] According to the illustrated embodiment, the electronic device (201) may include a communication interface (202) (e.g., interface (177) of FIG. 1), a microphone (206) (e.g., input module (150) of FIG. 1), a speaker (205) (e.g., audio output module (155) of FIG. 1), a display module (204) (e.g., display module (160) of FIG. 1), a memory (207) (e.g., memory (130) of FIG. 1), or a processor (203) (e.g., processor (120) of FIG. 1). The above-listed components may be operatively or electrically connected to each other.

[0053] The communication interface (202) of one embodiment may be configured to connect to an external device and transmit and receive data. The microphone (206) of one embodiment may receive sound (e.g., user speech) and convert it into an electrical signal. The speaker (205) of one embodiment may output the electrical signal as sound (e.g., voice).

[0054] The display module (204) of one embodiment may be configured to display an image or video. The display module (204) of one embodiment may also display a graphical user interface (GUI) of a running app (or application program). The display module (204) of one embodiment may receive touch input via a touch sensor. For example, the display module (204) may receive text input via a touch sensor in an on-screen keyboard area displayed within the display module (204).

[0055] In one embodiment, the memory (207) may store a client module (209), a software development kit (SDK) (208), and a plurality of apps (211). The client module (209) and the SDK (208) may constitute a framework (or solution program) for performing general-purpose functions. In addition, the client module (209) or the SDK (208) may constitute a framework for processing user input (e.g., voice input, text input, touch input).

[0056] The plurality of apps (211) stored in the memory (207) of one embodiment may be programs for performing a specified function. According to one embodiment, the plurality of apps (211) may include a first app (211_1) and a second app (211_2). According to one embodiment, each of the plurality of apps (211) may include a plurality of operations for performing a specified function. For example, the apps may include an alarm app, a message app, and / or a schedule app. According to one embodiment, the plurality of apps (211) may be executed by the processor (203) to sequentially execute at least some of the plurality of operations.

[0057] In one embodiment, the processor (203) can control the overall operation of the electronic device (201). For example, the processor (203) can be electrically connected to a communication interface (202), a microphone (206), a speaker (205), and a display module (204) to perform a designated operation.

[0058] The processor (203) of one embodiment may also execute a program stored in the memory (207) to perform a designated function. For example, the processor (203) may execute at least one of the client module (209) or the SDK (208) to perform the following operations for processing user input. The processor (203) may control the operations of multiple apps (211), for example, through the SDK (208). The following operations described as operations of the client module (209) or the SDK (208) may be operations executed by the processor (203).

[0059] The client module (209) of one embodiment can receive user input. For example, the client module (209) can receive a voice signal corresponding to a user utterance detected through the microphone (206). Alternatively, the client module (209) can receive a touch input detected through the display module (204). Alternatively, the client module (209) can receive a text input detected through a keyboard or a visual keyboard. In addition, the client module (209) can receive various forms of user input detected through an input module included in the electronic device (201) or an input module connected to the electronic device (201). The client module (209) can transmit the received user input to the intelligent server (200). The client module (209) can transmit status information of the electronic device (201) to the intelligent server (200) together with the received user input. The status information can be, for example, execution status information of an app.

[0060] The client module (209) of one embodiment may receive a result corresponding to the received user input. For example, the client module (209) may receive a result corresponding to the received user input if the intelligent server (200) can produce a result corresponding to the received user input. The client module (209) may display the received result on the display module (204). Additionally, the client module (209) may output the received result as audio through the speaker (205).

[0061] In one embodiment, the client module (209) can receive a plan corresponding to the received user input. The client module (209) can display the results of executing multiple operations of the app according to the plan on the display module (204). For example, the client module (209) can sequentially display the results of executing multiple operations on the display module (204) and output audio through the speaker (205). The electronic device (201) can, for example, display only some results of executing multiple operations (e.g., the result of the last operation) on the display module (204) and output audio through the speaker (205).

[0062] In one embodiment, the client module (209) may receive a request from the intelligent server (200) to obtain information necessary to produce a result corresponding to a user input. In one embodiment, the client module (209) may transmit the necessary information to the intelligent server (200) in response to the request.

[0063] In one embodiment, the client module (209) can transmit result information of executing multiple operations according to a plan to the intelligent server (200). The intelligent server (200) can use the result information to confirm that the received user input has been processed correctly.

[0064] In one embodiment, the client module (209) may include a voice recognition module. In one embodiment, the client module (209) may recognize voice inputs that perform limited functions through the voice recognition module. For example, the client module (209) may execute an intelligent app that processes voice inputs to perform organic actions based on a specified input (e.g., "Wake up!").

[0065] An intelligent server (200) of one embodiment can receive information related to a user voice input from an electronic device (201) via a communication network. According to one embodiment, the intelligent server (200) can convert data related to the received voice input into text data. According to one embodiment, the intelligent server (200) can generate a plan for performing a task corresponding to the user voice input based on the text data.

[0066] In one embodiment, the plan may be generated by an artificial intelligence (AI) system. The AI ​​system may be a rule-based system, a neural network-based system (e.g., a feedforward neural network (FNN) or a recurrent neural network (RNN)), or a combination of the aforementioned or another AI system. In one embodiment, the plan may be selected from a set of predefined plans or may be generated in real time in response to a user request. For example, the AI ​​system may select at least one plan from a plurality of predefined plans.

[0067] In one embodiment, the intelligent server (200) can transmit the results according to the generated plan to the electronic device (201), or transmit the generated plan to the electronic device (201). In one embodiment, the electronic device (201) can display the results according to the plan on the display module (204). In one embodiment, the electronic device (201) can display the results of executing an operation according to the plan on the display module (204).

[0068] An intelligent server (200) of one embodiment may include a front end (215), a natural language platform (220), a capsule database (230), an execution engine (240), an end user interface (250), a management platform (260), a big data platform (270), or an analytic platform (280).

[0069] A front end (215) of one embodiment can receive user input from an electronic device (201). The front end (215) can transmit a response corresponding to the user input.

[0070] According to one embodiment, the natural language platform (220) may include an automatic speech recognition module (ASR module) (221), a natural language understanding module (NLU module) (223), a planner module (225), a natural language generator module (NLG module) (227), or a text to speech module (TTS module) (229).

[0071] An automatic speech recognition module (221) of one embodiment may convert data related to a voice input received from an electronic device (201) into text data. A natural language understanding module (223) of one embodiment may determine a domain (and / or intent information) corresponding to a voice input (e.g., a user utterance) using text data of the voice input. A domain may correspond to a category (or service) associated with an action (or function) that a user wishes to perform using the device. A domain may be classified according to a service (e.g., an app) related to the text. For example, a Grace Note domain may correspond to a music search service (e.g., a Grace Note service). A Melon domain may correspond to a music playback service (e.g., a Melon service). A domain may be related to intent information corresponding to the text. A natural language understanding module (223) of one embodiment may determine a user's intent using text data of the voice input. For example, the natural language understanding module (223) can perform syntactic analysis or semantic analysis on user input in the form of text data to determine the user's intention. In one embodiment, the natural language understanding module (223) can determine the meaning of words extracted from user input by using linguistic features (e.g., grammatical elements) of morphemes or phrases, and can determine the user's intention by matching the meaning of the determined words to the intention. The natural language understanding module (223) can obtain intent information corresponding to the user's utterance. The intent information may be information indicating the user's intent determined by interpreting text data. The intent information may include information indicating an action (or function) that the user intends to execute using the device. A slot may be detailed information related to the intent information. The slot may be obtained based on a domain corresponding to the utterance.A slot may be variable information required to perform an action. In one embodiment, the variable information constituting a slot may include a named entity.

[0072] In one embodiment, the planner module (225) can generate a plan using the intent and parameters determined by the natural language understanding module (223). According to one embodiment, the planner module (225) can determine a plurality of domains necessary to perform a task based on the determined intent. The planner module (225) can determine a plurality of operations included in each of the plurality of domains determined based on the intent. According to one embodiment, the planner module (225) can determine parameters necessary to execute the determined plurality of operations or result values ​​output by the execution of the plurality of operations. The parameters and the result values ​​can be defined as concepts of a specified format (or class). Accordingly, the plan can include a plurality of operations and a plurality of concepts determined by the user's intent. The planner module (225) can determine the relationships between the plurality of operations and the plurality of concepts in a stepwise (or hierarchical) manner. For example, the planner module (225) can determine the execution order of a plurality of actions based on the user's intention based on a plurality of concepts. In other words, the planner module (225) can determine the execution order of a plurality of actions based on parameters required for the execution of the plurality of actions and results output by the execution of the plurality of actions. Accordingly, the planner module (225) can generate a plan including association information (e.g., ontology) between the plurality of actions and the plurality of concepts. The planner module (225) can generate the plan using information stored in a capsule database (230) in which a set of relationships between concepts and actions is stored.

[0073] The natural language generation module (227) of one embodiment can convert specified information into text format. The information converted into text format may be in the form of natural language speech. The text-to-speech conversion module (229) of one embodiment can convert information in text format into information in speech format.

[0074] According to one embodiment, some or all of the functions of the natural language platform (220) may also be implemented in the electronic device (201).

[0075] The capsule database (230) may store information on the relationships between a plurality of concepts and actions corresponding to a plurality of domains. According to one embodiment, a capsule may include a plurality of action objects (or action information) and concept objects (or concept information) included in a plan. According to one embodiment, the capsule database (230) may store a plurality of capsules in the form of a concept action network (CAN). According to one embodiment, the plurality of capsules may be stored in a function registry included in the capsule database (230).

[0076] The capsule database (230) may include a strategy registry that stores strategy information necessary for determining a plan corresponding to a voice input. The strategy information may include reference information for determining a single plan when there are multiple plans corresponding to a user input. According to one embodiment, the capsule database (230) may include a follow-up registry that stores information on follow-up actions for suggesting follow-up actions to a user in a specified situation. The follow-up actions may include, for example, follow-up utterances. According to one embodiment, the capsule database (230) may include a layout registry that stores layout information of information output through the electronic device (201). According to one embodiment, the capsule database (230) may include a vocabulary registry that stores vocabulary information included in capsule information. According to one embodiment, the capsule database (230) may include a dialog registry that stores information on a dialogue (or interaction) with a user. The capsule database (230) can update stored objects through a developer tool. The developer tool may include, for example, a function editor for updating action objects or concept objects. The developer tool may include a vocabulary editor for updating vocabulary. The developer tool may include a strategy editor for creating and registering strategies that determine plans. The developer tool may include a dialog editor for creating conversations with users.The developer tool may include a follow-up editor that activates follow-up goals and allows editing of follow-up utterances that provide hints. The follow-up goals may be determined based on currently set goals, user preferences, or environmental conditions. In one embodiment, the capsule database (230) may also be implemented within the electronic device (201).

[0077] The execution engine (240) of one embodiment can produce a result using the generated plan. The end user interface (250) can transmit the produced result to the electronic device (201). Accordingly, the electronic device (201) can receive the result and provide the received result to the user. The management platform (260) of one embodiment can manage information used in the intelligent server (200). The big data platform (270) of one embodiment can collect user data. The analysis platform (280) of one embodiment can manage the quality of service (QoS) of the intelligent server (200). For example, the analysis platform (280) can manage the components and processing speed (or efficiency) of the intelligent server (200).

[0078] In one embodiment, a service server (300) may provide a service (e.g., food ordering or hotel reservation) specified to an electronic device (201). In one embodiment, the service server (300) may be a server operated by a library. In one embodiment, the service server (300) may provide information for generating a plan corresponding to received user input to the intelligent server (200). The provided information may be stored in the capsule database (230). In addition, the service server (300) may provide result information according to the plan to the intelligent server (200).

[0079] In the integrated intelligence system (20) described above, the electronic device (201) can provide various intelligent services to the user in response to user input. The user input may include, for example, input via a physical button, touch input, or voice input.

[0080] In one embodiment, the electronic device (201) may provide a voice recognition service through an intelligent app (or voice recognition app) stored within the device. In this case, for example, the electronic device (201) may recognize a user utterance or voice input received through the microphone and provide the user with a service corresponding to the recognized voice input.

[0081] In one embodiment, the electronic device (201) may perform a designated action based on the received voice input, either alone or in conjunction with the intelligent server and / or service server. For example, the electronic device (201) may execute an app corresponding to the received voice input and perform a designated action through the executed app.

[0082] In one embodiment, when an electronic device (201) provides a service together with an intelligent server (200) and / or a service server (300), the electronic device (201) can detect a user's speech using the microphone (206) and generate a signal (or voice data) corresponding to the detected user's speech. The electronic device (201) can transmit the voice data to the intelligent server (200) using the communication interface (202).

[0083] An intelligent server (200) according to one embodiment may generate a plan for performing a task corresponding to a voice input received from an electronic device (201), or a result of performing an operation according to the plan, in response to a voice input. The plan may include, for example, a plurality of operations for performing a task corresponding to a user's voice input, and a plurality of concepts related to the plurality of operations. The concept may define parameters input to the execution of the plurality of operations, or result values ​​output by the execution of the plurality of operations. The plan may include association information between the plurality of operations and the plurality of concepts.

[0084] An electronic device (201) of one embodiment can receive the response using a communication interface (202). The electronic device (201) can output a voice signal generated within the electronic device (201) to the outside using the speaker (205), or can output an image generated within the electronic device (201) to the outside using the display module (204).

[0085]

[0086] FIG. 3 is a diagram showing a form in which relationship information between concepts and actions is stored in a database according to various embodiments.

[0087] The capsule database (e.g., the capsule database (230) of FIG. 2) of the intelligent server (e.g., the intelligent server (200) of FIG. 2) may store capsules in the form of a CAN (concept action network) (400). The capsule database may store operations for processing tasks corresponding to a user's voice input and parameters necessary for the operations in the form of a CAN (concept action network).

[0088] The capsule database may store a plurality of capsules (capsule (A) (401), capsule (B) (404)) corresponding to each of a plurality of domains. According to one embodiment, one capsule (e.g., capsule (A) (401)) may correspond to one domain (e.g., location (geo), application). In addition, one capsule may correspond to at least one service provider (e.g., CP 1 (402) or CP 2 (403)) for performing a function for a domain related to the capsule. According to one embodiment, one capsule may include at least one operation (410) and at least one concept (420) for performing a specified function.

[0089] The above natural language platform (e.g., the natural language platform (220) of FIG. 2) can generate a plan for performing a task corresponding to a received voice input using capsules stored in a capsule database. For example, the planner module of the natural language platform (e.g., the planner module (225) of FIG. 2) can generate a plan using capsules stored in a capsule database. For example, a plan (407) can be generated using actions (4011, 4013) and concepts (4012, 4014) of capsule A (401) and actions (4041) and concepts (4042) of capsule B (404).

[0090]

[0091] FIG. 4 is a diagram illustrating a screen for processing voice input received through an intelligent app by an electronic device according to various embodiments.

[0092] The electronic device (201) can execute an intelligent app to process user input through an intelligent server (e.g., the intelligent server (200) of FIG. 2).

[0093] According to one embodiment, on screen 310, when the electronic device (201) recognizes a designated voice input (e.g., wake up!) or receives an input via a hardware key (e.g., a dedicated hardware key), the electronic device (201) may execute an intelligent app for processing the voice input. For example, the electronic device (201) may execute the intelligent app while the schedule app is running. According to one embodiment, the electronic device (201) may display an object (e.g., an icon) (311) corresponding to the intelligent app on the display module (204) (e.g., the display module (160) of FIG. 1, the display module (204) of FIG. 2). According to one embodiment, the electronic device (201) may receive a voice input by a user's speech. For example, the electronic device (201) may receive a voice input such as "Tell me my schedule for this week!" According to one embodiment, the electronic device (201) can display a user interface (UI) (313) (e.g., an input window) of an intelligent app displaying text data of received voice input on a display module (204).

[0094] According to one embodiment, on the 320 screen, the electronic device (201) may display a result corresponding to the received voice input on the display module (204). For example, the electronic device (201) may receive a plan corresponding to the received user input and display 'this week's schedule' on the display module (204) according to the plan.

[0095]

[0096] FIG. 5 is a drawing for explaining an ignition processing process of an electronic device according to one embodiment.

[0097] Referring to FIG. 5, according to one embodiment, the electronic device (501) may include at least some of the configurations of the electronic device (101) described with reference to FIG. 1 and the electronic device (201) described with reference to FIG. 2. The intelligent server (503) may include at least some of the configurations of the intelligent server (200) described with reference to FIG. 2. With respect to the electronic device (501) and the intelligent server (503), any description overlapping with that described with reference to FIGS. 1 to 4 will be omitted.

[0098] According to one embodiment, an electronic device (501) (e.g., the electronic device (101) of FIG. 1 or the electronic device (201) of FIG. 2) and an intelligent server (503) (e.g., the intelligent server (200) of FIG. 2) may be connected via a local area network (LAN), a wide area network (WAN), a value added network (VAN), a mobile radio communication network, a satellite communication network, or a combination thereof. The electronic device (501) and the intelligent server (503) may communicate with each other via a wired communication method or a wireless communication method (e.g., wireless LAN (WiFi), Bluetooth, Bluetooth low energy, ZigBee, WiFi direct (WFD), ultra-wide band (UWB), infrared data association (IrDA), near field communication (NFC)). The electronic device (501) can communicate with a peripheral device (e.g., the electronic device (102) of FIG. 1 or the electronic device (104) of FIG. 1) located around the electronic device (501).

[0099] According to one embodiment, the electronic device (501) may be implemented as at least one of a smartphone, a tablet personal computer, a mobile phone, a speaker (e.g., an AI speaker), a video phone, an e-book reader, a desktop personal computer, a laptop personal computer, a netbook computer, a workstation, a server, a personal digital assistant (PDA), a portable multimedia player (PMP), an MP3 player, a mobile medical device, a camera, or a wearable device.

[0100] According to one embodiment, the electronic device (501) may obtain a voice signal corresponding to a user's (50) utterance (e.g., a speech utterance) and transmit the voice signal to an intelligent server (503). The intelligent server (503) may obtain text data corresponding to the user's (50) utterance based on the voice signal. The text data may be text data converted from a voice portion into a computer-readable text through an automatic speech recognition (ASR) process for the voice signal. However, if the user's utterance is a text utterance rather than a voice utterance, the process of converting the voice signal into text data may be omitted. The intelligent server (503) may analyze the user's utterance using the text data. The intelligent server (503) may use the analysis results (e.g., intent information, entities, and / or capsules) to perform a necessary function or provide a response (e.g., a question, an answer) to the user to a device (e.g., the electronic device (501)). The intelligent server (503) may be implemented in software. Part or all of the intelligent server (503) may be implemented in the electronic device (501) and / or the intelligent server (503) (e.g., the intelligent server (200) of FIG. 2). An on-device artificial intelligence (AI) capable of processing user speech without communication with the intelligent server (503) may be installed in the electronic device (501). Components such as the natural language platform (220) described with reference to FIGS. 2 to 4 may be implemented in the electronic device (501).

[0101] According to one embodiment, an automatic speech recognition module (e.g., an automatic speech recognition module (221) of FIG. 2) included in the natural language platform (220) can convert a user utterance into text data. A natural language understanding module (e.g., a natural language understanding module (223) of FIG. 2) included in the natural language platform (220) can determine domain and / or intent information corresponding to the user utterance using text data corresponding to the user utterance.

[0102] In one embodiment, a domain may correspond to a category (or service) associated with an action (or function) that a user wishes to perform using a device. Domains may be categorized based on the service (e.g., application) associated with the user's utterance. For example, the Grace Note domain may correspond to a music search service (e.g., the Grace Note service). For example, the Melon domain may correspond to a music playback service (e.g., the Melon service).

[0103] According to one embodiment, multiple user utterances can be processed based on their respective corresponding domains. Tasks corresponding to user utterances can be processed in capsules (e.g., applications). One capsule can correspond to one domain. One capsule can include at least one action and at least one concept for performing a specified function. One capsule (or domain) can include or process multiple pieces of intent information. A capsule can process a task corresponding to a user utterance based on intent information. The intent information can be determined by the capsule or a natural language understanding module.

[0104] In one embodiment, intent information may be information indicating a user's intent, as determined by interpreting text data. Intent information may include information indicating an action (or function) the user intends to perform using the device.

[0105] In one embodiment, a slot may represent a placeholder (or variable) associated with a specific type of information to be extracted from user input (e.g., a user utterance) to generate a response corresponding to the user utterance. An entity may represent a value extracted from the user input and assigned to the corresponding slot. For example, if the text converted from the user utterance is "Tell me the weather today," the electronic device (501) may identify a "data slot" from the user input and assign "today" to the "date slot."

[0106] According to one embodiment, the electronic device (501) can output a response corresponding to a user utterance. For example, in response to receiving the user utterance "Tell me the weather in Seoul today" from the user (50), the electronic device (501) can perform a voice recognition process and a natural language processing process to output a response (e.g., "The weather in Seoul today is clear").

[0107] According to one embodiment, the electronic device (501) can output the response in various ways. For example, the electronic device (501) can output the response visually using a display module (e.g., the display module (160) of FIG. 1). As another example, the electronic device (501) can output the response audibly using an audio module (e.g., the audio module (170) of FIG. 1).

[0108] According to one embodiment, some or all of the operations performed in the electronic device (501) may be performed in the electronic device (501) and / or the intelligent server (503). The following description will be continued on the assumption that the electronic device (501) performs the operations.

[0109]

[0110] Figure 6 is a schematic block diagram of an electronic device according to one embodiment.

[0111] Referring to FIG. 6, according to one embodiment, the electronic device (501) may include a processor (620) (e.g., processor 120 of FIG. 1, processor 203 of FIG. 2) and a memory (630) (e.g., memory 130 of FIG. 1, memory 207 of FIG. 2). The processor (620) may access the memory (630) to execute one or more instructions. The processor (620) may cause the electronic device (501) to perform one or more operations for generating (or outputting) a response to a user utterance based on one or more modules (e.g., software modules).

[0112] According to one embodiment, the processor (620) may include an automatic speech recognition (ASR) module (641) (e.g., the automatic speech recognition module (221) of FIG. 2), an entity extraction module (643), a first retriever (645), a data crawler (647), a data processor (649), a second retriever (651), a first ranking module (653), a second ranking module (655), a reader (657), a capsule (659) (e.g., the capsule of FIG. 3), and / or a response module (661).

[0113] According to one embodiment, the ASR module (641) can convert a speech signal corresponding to a user utterance (e.g., a voice utterance) into text data in real time. If the user utterance is a text utterance rather than a voice utterance, the process performed by the ASR module (641) may be omitted. In the following description, it is assumed that the text data corresponding to the user utterance is input to the entity extraction module (643) and / or the second retriever (651) in real time.

[0114] According to one embodiment, the entity extraction module (643) can extract in real time, from a portion of a user utterance, values ​​(e.g., entities, combinations of entities) related to information for determining the intent of the user utterance. For example, if the user utterance is “Tell me a Michael Jackson song,” the entity extraction module (643) can extract the entity “Michael Jackson” and / or the combination of entities “Michael Jackson song” from the portion of the user utterance in real time before the end of the user utterance. The entity extraction module (643) can transmit data related to the entity (or combination of entities) extracted from the portion of the user utterance to the first retriever (645). For example, the value transmitted to the first retriever (645) can be a token (e.g., a token of an n-gram).

[0115] In one embodiment, the first retriever (645) may request information about data (e.g., entities, combinations of entities) received from the entity extraction module (643) to the data crawler (647). For example, if the entity “Michael Jackson” is extracted from a user utterance, the first retriever (645) may request information about the entity “Michael Jackson” (e.g., images, textual data) to the data crawler (647). The first retriever (645) may include a rule-based model and / or a statically-based model.

[0116] In one embodiment, the first retriever (645) may output a first response (63) to the user (e.g., information about an entity or a combination of entities and the source of the information) based on data received from the data processor (645). In the present disclosure, the first response (63) may represent a response to a portion of a user utterance (e.g., an entity or a combination of entities). The first retriever (645) may output the first response (63) in various ways. For example, the first retriever (645) may visually output the first response through the screen of the electronic device (501).

[0117] In one embodiment, the first retriever (645) may transmit data related to the first response (63) to the first ranking module (653).

[0118] In one embodiment, the data crawler (647) may, in response to a request for information from the first retriever (645), retrieve information about an entity (or a combination of entities) extracted from a portion of a user utterance from one or more data sources. For example, the data crawler (647) may retrieve (or obtain) information (or data) from an external data source, such as a website, and / or an internal data source stored in the memory (630). For example, the data crawler (647) may extract text data related to an entity (or a combination of entities) from the data source. The data crawler (647) may transmit the information and / or the source of the information to the data processor (649).

[0119] In one embodiment, the data processor (649) may process data (e.g., information and / or sources of information) received from the data crawler (649) to be suitable for the first retriever (645) and transmit the processed data to the first retriever (645). For example, the data processor (649) may perform data preprocessing, such as database indexing.

[0120] In one embodiment, the first ranking module (653) can determine the user's intent related to an entity (or combination of entities) extracted from a portion of the user utterance based on the user input (67) for the first response (63). For example, if the user utterance is "Tell me about Michael," the first retriever (645) can output a list of celebrities with the name "Michael" (e.g., first name) as the first response (63), and the user can select any one person (e.g., singer Michael Jackson) from the list. Based on the user selection, the first ranking module (653) can determine that the user's intent related to the entity "Michael" included in the portion of the user utterance is "Michael Jackson." The first ranking module (653) can transmit data related to the user intent to the reader (657) in various formats. For example, the first ranking module (653) can transmit data to the reader (657) in a format suitable for the generative model (e.g., prompt format, JSON (JavaScript Object Notation)).

[0121] In one embodiment, the second retriever (651) may receive text data corresponding to an entire user utterance (e.g., an entire user utterance) and generate a response corresponding to the user utterance. In the present disclosure, the user utterance may refer to a user utterance whose endpoint is detected. The text data input to the second retriever (651) may be text including one or more sentences. For example, the input to the second retriever (651) may be text such as "Tell me the age difference between the director of the movie Avatar and the director of the movie Titanic." In one embodiment, the second retriever (651) may include a rule-based model and / or a statically-based model.

[0122] In one embodiment, the second retriever (651) may generate one or more candidate responses corresponding to a user utterance. For example, if the user utterance is "Tell me about a sport that suits me," the second retriever (651) may generate baseball, basketball, and soccer as candidate responses based on data (e.g., the user's lifestyle pattern) stored in a data source (e.g., memory (630)). The second retriever (651) may transmit the one or more candidate responses to the reader (657). The process performed by the second retriever (651) may be omitted based on the user utterance (61) and the first user response (63). For example, if the first response (63) and the second response (65) are substantially the same, such as when the user utterance is "Tell me about Michael Jackson," one or more processes performed by the second retriever (651) may be omitted. In the present disclosure, the second response (65) may represent a response to a user utterance whose endpoint is detected.

[0123] In one embodiment, the second ranking module (655) may receive one or more candidate responses from the second retriever (651) and determine a rank for the one or more candidate responses. For example, if “baseball,” “basketball,” and “soccer” are received as candidate responses from the second retriever (651), the second ranking module (655) may determine the rank of the candidate responses in the order of “baseball,” “basketball,” and “soccer” based on user-related information such as user policies (e.g., kids mode), user lifestyle patterns, and / or user electronic device usage patterns (e.g., frequency of application usage). The second ranking module (655) may transmit data related to the candidate responses (e.g., the highest-ranking candidate response) to the reader (657) in various formats. For example, the second ranking module (655) can transmit data to the reader (657) in a format suitable for the generation model (e.g., prompt format, JSON). The second ranking module (655) can generate additional user responses based on user input for the second response (65) generated based on candidate responses (e.g., the highest ranked candidate response). For example, if the second response (65) “The sport that suits you is baseball” is output, but the user answers the second response (65) with “I hate baseball. Tell me another sport,” the second ranking module (655) can output the additional user response “The sport that suits you is basketball” based on the ranking of the previously generated candidate responses (e.g., baseball (1), basketball (2), soccer (3)). If the process performed by the second retriever (651) is omitted and / or if only one candidate response is generated by the second retriever (651), one or more processes performed by the second ranking module (655) may be omitted.

[0124] In one embodiment, the reader (657) (e.g., a generative model) may generate various types of output based on data input from the first ranking module (653) and / or the second ranking module (653). For example, the reader (657) may generate output including one or more of information corresponding to a user utterance, an application programming interface (API), and a command.

[0125] In one embodiment, a capsule (659) (e.g., an application) may perform a specific action based on data received from a reader (657). For example, a capsule (659), such as an alarm application (e.g., a clock), may receive data (e.g., alarm setting related data) from a reader (657), set an alarm, and provide information about the set alarm to a user.

[0126] According to one embodiment, the response module (661) may output data received from the reader (657) or capsule (659) as is, or may post-process the data received from the reader (657) or capsule (659) and output the post-processed data. For example, the response module (661) may convert data received from the reader (657) or capsule (659) into data in another format, such as an image or video, and output the converted data.

[0127] According to one embodiment, the memory (630) may store data used by at least one component (e.g., the processor (620)) of the electronic device (501). For example, the memory (630) may store user-related data such as information about an external electronic device (e.g., an IoT device) connected to the electronic device (501), a user's electronic device usage pattern (e.g., frequency of use of applications), and / or a user's lifestyle pattern.

[0128]

[0129] FIG. 7 is a diagram illustrating an example of an ignition processing process according to one embodiment.

[0130] Referring to FIG. 7, according to one embodiment, the electronic device (501) can identify an entity (or a combination of entities) included in a portion of a user utterance in real time, and output a response (e.g., the first response (63) of FIG. 6) to the identified entity (or combination of entities). The electronic device (501) can output the response to the identified entity (or combination of entities) before the end of the user utterance. For example, if the user utterance is “Tell me a Michael Jackson song,” the electronic device (501) can identify the entity “Michael Jackson” and / or the combination of entities “Michael Jackson song” included in the portion of the user utterance in real time, and output information (71) about the identified entity and / or information (73) about the combination of entities before the end of the user utterance.

[0131]

[0132] FIG. 8 is a drawing for explaining an example of an ignition processing process according to one embodiment.

[0133] Referring to FIG. 8, according to one embodiment, the electronic device (501) can identify entities (or combinations of entities) included in a portion of a user utterance in real time, and provide a response (e.g., the first response (63) of FIG. 6) for each of the identified entities (or combinations of entities). The electronic device (501) can provide a response for the identified entities (or combinations of entities) before the end of the user utterance. For example, if the user utterance is “Tell me the difference between the S23 screen size and the S22 screen size,” the electronic device (501) can identify a first combination of entities “S23 screen size” and a second combination of entities “S22 screen size” from the user utterance in real time, and output information (81, 83) about the combinations of the identified entities before the end of the user utterance.

[0134] According to one embodiment, the electronic device (501) may output a response to the user utterance (e.g., the second response (65) of FIG. 6) after the end of the user utterance. For example, if the user utterance is “Tell me the difference between the screen sizes S23 and S22,” the electronic device (501) may output information (81, 83) about combinations of entities included in the portion of the user utterance (e.g., the first response) before the end of the user utterance, and output information (85) about the user utterance (e.g., the second response) after the end of the user utterance.

[0135] In one embodiment, the electronic device (501) may indicate that user utterance processing is in progress from the time the user utterance is acquired until information about the user utterance (85) (e.g., a second response) is output. For example, the electronic device (501) may display a status notification message such as “User utterance processing is in progress. The final response to the user utterance has not yet been output.” on an area (e.g., area (550)) of the display of the electronic device (501). As another example, the electronic device (501) may differentiate the output form (e.g., the color and / or shape of a speech bubble) of information about combinations of entities included in a portion of the user utterance (e.g., a first response) from the output form of information about the user utterance (85).

[0136] According to one embodiment, the electronic device (501) may terminate user speech processing in response to user input received before information (85) about the user speech is output. If the user has obtained target information from information (81, 83) about entities included in a portion of the user speech, the user may no longer need information (85) about the user speech. The electronic device (501) may provide a user interface (e.g., button (560)) for terminating user speech processing, and the electronic device (501) may terminate user speech processing in response to user input received through the user interface.

[0137] According to one embodiment, since information (e.g., information (81), information (83)) about entities (or combinations of entities) included in a portion of a user utterance is output before the end of the user utterance, the user can obtain substantially the same information as the information (e.g., information (85)) that the user wants to obtain via the user utterance in a short period of time.

[0138] FIG. 9 is a diagram illustrating an example of an ignition processing process according to one embodiment.

[0139] Referring to FIG. 9, according to one embodiment, the electronic device (501) may determine whether to cancel output of a response (e.g., the first response (63)) to an entity (or a combination of entities) based on a relationship between a response (e.g., the first response (63) of FIG. 6) to an entity (or a combination of entities) included in a portion of a user utterance and a response to the user utterance (e.g., the second response (65) of FIG. 6). For example, when the relationship between the response to the entity (e.g., the first response (63)) and the response to the user utterance (e.g., the second response (65)) is low, the electronic device (501) may cancel output of the response to the entity (e.g., the first response (63)) and output only the response to the user utterance (e.g., the second response (65)). For another example, if a response to an entity (e.g., a first response (63)) and a response to a user utterance (e.g., a second response (65)) are contradictory, the electronic device (501) may cancel the output of the response to the entity (e.g., the first response (63)) and output only the response to the user utterance (e.g., the second response (65)). For example, if the user utterance is “Tell me an American singer who was active around the same time as Michael Jackson,” the electronic device (501) may identify the entity “Michael Jackson” from a portion of the user utterance and output information (1001) about the identified entity. The electronic device (501) may output information (1003) about the user utterance after the end of the user utterance. When the relevance of information (1001) and information (1003) is low, the electronic device (1003) may output either the user interface (1005) or the user interface (1007) after the end of the user's speech. The user interface (1005) may include both information (1001) and information (1003), and the user interface (1007) may include only information (1003).

[0140]

[0141] FIG. 10 is a drawing for explaining an example of an ignition processing process according to one embodiment.

[0142] Referring to FIG. 10, according to one embodiment, the electronic device (501) can output a response (e.g., a first response (63) of FIG. 6) to an entity (or combination of entities) included in a portion of a user utterance, and can output a response (e.g., a second response (65) of FIG. 6) to the user utterance based on a user input (e.g., a user input (67) of FIG. 6) for the response (e.g., the first response).

[0143] According to one embodiment, the electronic device (501) may output a response (e.g., response (63)) in the form of a list of items related to the entity based on parameters (e.g., domain, category) related to the entity. For example, the electronic device (501) may output a response in the form of a list for an entity related to a fashion item (e.g., shoes, outfit) that includes an ambiguous entity such as color and / or various sub-items. For example, if the user utterance is “Find me shoes that go well with red clothes,” the electronic device (501) may identify the entities “red,” “outfit,” and “shoes” in real time from a portion of the user utterance, and output responses (1111, 1113, 1115) in the form of a list for the identified entities. The response (1111) may be a list containing colors similar to red (e.g., red, crimson, cherry red, magenta).

[0144] According to one embodiment, the electronic device (501) may output a response (1117) to the user utterance after the end of the user utterance based on user input (e.g., user selection) for the responses (1111, 1113, 1115). For example, the user may select “crimson,” “suit,” and “boots” from the responses (1111, 1113, 1115) using various means (e.g., voice input, non-voice input such as touch or gesture). The electronic device (501) (e.g., the reader (657) of the electronic device (501)) may generate one or more prompts (e.g., “Find me shoes that go well with a red outfit,” “The color red is close to crimson, the outfit is a suit, and the shoes are boots”) based on the user selection. An electronic device (501) (e.g., a reader (657) of the electronic device (501)) can generate a response (117) corresponding to one or more prompts, such as "The black boots look good on you", using a generative model. The electronic device (501) can display the response (117) on a portion of a screen of the electronic device (501).

[0145] According to one embodiment, the electronic device (501) may maintain an output state of a response (e.g., a first response (63)) to an entity (or a combination of entities) included in a portion of a user utterance, even after the end of the user utterance, based on the form of the response (e.g., a first response (63)) to the entity (or a combination of entities). For example, if the response (e.g., a first response (63)) to an entity (or a combination of entities) is output in a form that can be selected by the user, such as a list, the electronic device (501) may maintain an output state of the response (e.g., a first response (63)) to the entity (or a combination of entities) even after the end of the user utterance.

[0146] According to one embodiment, the electronic device (501) can obtain additional user input for a response (e.g., the first response (63)) to an entity (or a combination of entities) even after a response (e.g., the second response (65)) to the user utterance is output. The electronic device (501) can change the response (e.g., the second response (65)) to the user utterance based on the additional user input. For example, if the user utterance is “Find me shoes that go well with red clothes” and the user selects “crimson”, “suit”, and “boots” from the responses (1111, 1113, 1115), the electronic device (501) can output the response (1117) to the user utterance “Black boots go well with you”. After the response (1117) is output, the user may select an item (e.g., sneakers) different from the previously selected item (e.g., boots) from the response (1115) for the entity "shoes." In response to the user's selection, the electronic device (501) may change the response (1117) to the user utterance to the response (1118) "The white sneakers look good on you."

[0147]

[0148] Fig. 11 is a drawing for explaining an example of an ignition processing process according to one embodiment.

[0149] Referring to FIG. 11, according to one embodiment, the electronic device (501) may output a response (e.g., the first response (63) of FIG. 6) to an entity (or a combination of entities) included in a portion of a user utterance by using data stored in the memory of the electronic device (e.g., the memory (630) of FIG. 6). For example, if the user utterance is “Set the TV to turn on in 30 minutes,” the electronic device (501) may identify the entity “TV” in real time from the portion of the user utterance, and obtain data related to the identified entity from the memory (630). The electronic device (501) may obtain information about TVs (e.g., a living room TV and a bedroom TV) connected to the electronic device (501) from the memory (630), and output a list (1201) of TVs. The electronic device (501) may output a response (1203) to the user utterance after the user utterance is terminated based on user input (e.g., user selection such as touch and / or gesture for items within the list) to the list (1201).

[0150]

[0151] Fig. 12 is a diagram illustrating an example of a speech processing process according to one embodiment. Fig. 12 may be a diagram illustrating a process for processing an additional user speech (1303) assuming that a response (1203) to the user speech (1301) illustrated in Fig. 11 has been output.

[0152] Referring to FIG. 12, according to one embodiment, the electronic device (501) may process an additional user utterance (1303) based on an intermediate user input for a user utterance (1301). The additional user utterance (1303) may refer to a user utterance obtained after the end of the user utterance (1301). The intermediate user input may refer to a user input for a response (e.g., a list (1201)) related to an entity (or a combination of entities) included in a portion of the user utterance (1301). For example, in a state where a response (1203) to a user utterance (1301) is output, the electronic device (501) can obtain an additional user utterance (1303) “Turn off the TV,” and the electronic device (501) can output a response (1205) “I turned off the living room TV” to the additional user utterance (1303) based on an intermediate user input (e.g., selection of “living room TV”).

[0153]

[0154] Fig. 13 is a diagram illustrating an example of a speech processing process according to one embodiment. Fig. 13 may be a diagram illustrating a process for generating an additional response (1207) as a whole in a state in which a response (1205) to an additional user speech (1303) illustrated in Fig. 12 is output.

[0155] Referring to FIG. 13, according to one embodiment, the electronic device (501) may generate an additional response based on the final response in response to obtaining additional user input for an intermediate response. The intermediate response may represent a response to entities (or a combination of entities) included in a portion of the user utterance (e.g., the first response (61) of FIG. 6), and the final response may represent a response to the user utterance (e.g., the second response (63) of FIG. 6). For example, the user may select an item (e.g., bedroom TV) different from a previously selected item (e.g., living room TV) from the list (1201) while a response (1203) to the user utterance (1301) is output. The electronic device (501) may, in response to obtaining an additional user input for the list (1201) (e.g., selection of "living room TV"), output an additional response "I set the living room TV to turn on after 30 minutes" based on the final response (1203) to the user utterance (1301). In this case, as illustrated in FIG. 14, if the final response (1203) to the user utterance (1301) and the final response (1205) to the additional user utterance (1303) have been output, the electronic device (501) may output an additional response (1207) "I set the living room TV to turn on after 30 minutes, and turned the living room TV off" based on the final responses (1203, 1205) to the user utterance (1301) and the additional user utterance (1303).

[0156]

[0157] Fig. 14 is a flowchart for explaining the operation of an electronic device according to one embodiment.

[0158] Referring to FIG. 14, according to one embodiment, operations 1410 to 1430 may be performed sequentially, but are not limited thereto. For example, two or more operations may be performed in parallel. Operations 1410 to 1430 may be substantially the same as the operations of the electronic device described with reference to FIGS. 1 to 13 (e.g., the electronic device (101) of FIG. 1, the electronic device (201) of FIG. 4, and the electronic device (501) of FIGS. 5 to 13). Therefore, any redundant description will be omitted.

[0159] In operation 1410, the electronic device (101, 201, 501) may output a first response (e.g., first response (63) of FIG. 6) to a portion of the user utterance in response to obtaining the portion of the user utterance.

[0160] In operation 1420, the electronic device (101, 201, 501) may obtain a user input (e.g., user input (67) of FIG. 6) for a first response (63).

[0161] At operation 1430, the electronic device (101, 201, 501) may output a second response to the user speech (e.g., the second response (65) of FIG. 6) based on the user input (67) in response to the end of the user speech.

[0162]

[0163] Fig. 15 is a flowchart for explaining the operation of an electronic device according to one embodiment.

[0164] Referring to FIG. 15, according to one embodiment, operations 1510 to 1530 may be performed sequentially, but are not limited thereto. For example, two or more operations may be performed in parallel. Operations 1510 to 1530 may be substantially the same as the operations of the electronic device described with reference to FIGS. 1 to 13 (e.g., the electronic device (101) of FIG. 1, the electronic device (201) of FIG. 4, and the electronic device (501) of FIGS. 5 to 13). Therefore, any redundant description will be omitted.

[0165] In operation 1510, the electronic device (101, 201, 501) can identify an entity from a portion of the user speech before the end of the user speech.

[0166] In operation 1520, the electronic device (101, 201, 501) may, in response to the identification of the entity, obtain data related to the entity from a data source (e.g., an external data source such as a web site and / or an internal data source stored in memory (630).

[0167] In operation 1530, before the end of the user utterance, information about the entity can be output based on the acquired data.

[0168]

[0169] An electronic device (101, 201, 501) according to one embodiment may include at least one processor (120, 203, 620) and a memory (130, 207, 630) storing instructions. The instructions may cause the electronic device (101, 201, 501) to perform a plurality of operations based on being individually or collectively executed by the at least one processor (120, 203, 620). The plurality of operations may include an operation of outputting a first response (63) to a portion of a user utterance in response to obtaining the portion. The plurality of operations may include an operation of obtaining a user input (67) for the first response. The above plurality of actions may include an action of outputting a second response (65) to the user utterance based on the user input (67) in response to termination of the user utterance.

[0170] The above part may contain one or more entities.

[0171] The operation of outputting the first response (63) may include an operation of outputting information about an entity or a combination of entities before the end of the user speech.

[0172] The act of outputting the above information may include an act of outputting a list of items related to the entity and combinations of the entities.

[0173] The operation of outputting the above information may include an operation of retrieving data associated with the entity or a combination of entities from the memory (130, 207, 630). The operation of outputting the information may include an operation of outputting information about the entity or a combination of entities based on the retrieved data.

[0174] The action of obtaining the above user input (67) may include an action of receiving a user selection for the above list.

[0175] The electronic device (101, 201, 501) may further include a display operatively connected to the processor (120, 203, 620). The first response (63) and the second response (65) may be output through the display.

[0176] The operation of outputting the second response (65) may include an operation of outputting one of the first user interface and the second user interface through the display based on the first response (63).

[0177] The first user interface may include the second response. The second user interface may include the first response and the second response.

[0178] The operation of outputting through the display may include an operation of outputting one of the first user interface and the second user interface through the display based on the relationship between the first response (63) and the second response (65) or the form of the first response (63).

[0179] The above multiple operations may further include an operation of outputting a third response (1207) based on the second response (65) in response to obtaining additional user input for the first response (63) after outputting the second response (65).

[0180] An electronic device (101, 201, 501) according to one embodiment may include at least one processor (120, 203, 620) and a memory (130, 207, 630) storing instructions. The instructions may cause the electronic device (101, 201, 501) to perform a plurality of operations based on being individually or collectively executed by the at least one processor (120, 203, 620). The plurality of operations may include an operation of identifying an entity from a portion of a user utterance before the end of the user utterance. The plurality of operations may include an operation of obtaining data related to the entity from a data source in response to the identification of the entity. The plurality of operations may include an operation of outputting information about the entity based on the data before the end of the user utterance.

[0181] The obtaining operation may include extracting textual data related to the entity from the data source.

[0182] A method of operating an electronic device (101, 201, 501) according to one embodiment may include an operation of obtaining a portion of a user utterance and outputting a first response (63) to the portion. The method may include an operation of obtaining user input (67) for the first response. The method may include an operation of outputting a second response (65) to the user utterance based on the user input (67) in response to a termination of the user utterance.

[0183] The operation of outputting the first response (63) may include an operation of outputting information about an entity or a combination of entities before the end of the user speech.

[0184] The act of outputting the above information may include an act of outputting a list of items related to the entity and combinations of the entities.

[0185] The operation of outputting the above information may include an operation of retrieving data associated with the entity or a combination of entities from a memory (130, 207, 630) included in the electronic device (101, 201, 501). The operation of outputting the information may include an operation of outputting information about the entity or a combination of entities based on the retrieved data.

[0186] The first response (63) and the second response (65) can be output through the display of the electronic device (101, 201, 501).

[0187] The operation of outputting the second response (65) may include an operation of outputting one of the first user interface and the second user interface through the display based on the first response (63). The first user interface may include the second response. The second user interface may include the first response and the second response.

[0188] The operation of outputting through the display may include an operation of outputting one of the first user interface and the second user interface through the display based on the relationship between the first response (63) and the second response (65) or the form of the first response (63).

[0189]

[0190] Electronic devices according to the various embodiments disclosed in this document may take various forms. Electronic devices may include, for example, portable communication devices (e.g., smartphones), computer devices, portable multimedia devices, portable medical devices, cameras, wearable devices, or home appliances. Electronic devices according to the embodiments of this document are not limited to the aforementioned devices.

[0191] The various embodiments of this document and the terminology used therein are not intended to limit the technical features described in this document to specific embodiments, but should be understood to include various modifications, equivalents, or substitutes of the embodiments. In connection with the description of the drawings, similar reference numerals may be used for similar or related components. The singular form of a noun corresponding to an item may include one or more of the items, unless the context clearly indicates otherwise. In this document, each of the phrases "A or B", "at least one of A and B", "at least one of A or B", "A, B, or C", "at least one of A, B, and C", and "at least one of A, B, or C" can include any one of the items listed together in the corresponding phrase among those phrases, or all possible combinations thereof. Terms such as "first," "second," or "first" or "second" may be used merely to distinguish one component from another, and do not limit the components in any other respect (e.g., importance or order). When a component (e.g., a first component) is referred to as "coupled" or "connected" to another (e.g., a second component), with or without the terms "functionally" or "communicatively," it means that the component can be connected to the other component directly (e.g., wired), wirelessly, or through a third component.

[0192] The term "module" used in various embodiments of this document may include a unit implemented in hardware, software, or firmware, and may be used interchangeably with terms such as logic, logic block, component, or circuit. A module may be an integral component, or a minimum unit or part of such a component that performs one or more functions. For example, according to one embodiment, a module may be implemented in the form of an application-specific integrated circuit (ASIC).

[0193] Various embodiments of the present document may be implemented as software (e.g., a program (1740)) including one or more instructions stored in a storage medium (e.g., an internal memory (1736) or an external memory (1738)) readable by a machine (e.g., an electronic device (1701)). For example, a processor (e.g., a processor (1720)) of the machine (e.g., an electronic device (1701)) may call at least one instruction among the one or more instructions stored from the storage medium and execute it. This enables the machine to operate to perform at least one function according to the at least one called instruction. The one or more instructions may include code generated by a compiler or code executable by an interpreter. The machine-readable storage medium may be provided in the form of a non-transitory storage medium. Here, 'non-transitory' simply means that the storage medium is a tangible device and does not contain signals (e.g., electromagnetic waves), and the term does not distinguish between cases where data is stored semi-permanently or temporarily on the storage medium.

[0194] According to one embodiment, the method according to various embodiments disclosed in the present document may be provided as included in a computer program product. The computer program product may be traded as a product between a seller and a buyer. The computer program product may be distributed in the form of a machine-readable storage medium (e.g., compact disc read-only memory (CD-ROM)), or may be distributed online (e.g., downloaded or uploaded) via an application store (e.g., Play Store™) or directly between two user devices (e.g., smart phones). In the case of online distribution, at least a portion of the computer program product may be temporarily stored or temporarily generated in a machine-readable storage medium, such as the memory of a manufacturer's server, an application store's server, or an intermediary server.

[0195] According to various embodiments, each component (e.g., a module or a program) of the above-described components may include one or more entities, and some of the entities may be separated and arranged in other components. According to various embodiments, one or more components or operations of the aforementioned components may be omitted, or one or more other components or operations may be added. Alternatively or additionally, a plurality of components (e.g., a module or a program) may be integrated into a single component. In such a case, the integrated component may perform one or more functions of each of the plurality of components identically or similarly to those performed by the corresponding component among the plurality of components prior to the integration. According to various embodiments, the operations performed by a module, program, or other component may be executed sequentially, in parallel, iteratively, or heuristically, or one or more of the operations may be executed in a different order, omitted, or one or more other operations may be added.

[0196] The effects that can be obtained from the present disclosure are not limited to the effects mentioned above, and other effects that are not mentioned can be clearly understood by a person having ordinary skill in the art to which the present disclosure belongs from this document.

Claims

1. In electronic devices (101, 201, 501), At least one processor (120, 203, 620); and Memory for storing instructions (130, 207, 630) Including, The above instructions cause the electronic device (101, 201, 501) to perform a plurality of operations based on being individually or collectively executed by the at least one processor (120, 203, 620), The above multiple actions are: In response to obtaining a portion of a user utterance, an action of outputting a first response (63) to said portion; An operation for obtaining user input (67) for the first response; and In response to the termination of the user utterance, an action of outputting a second response (65) to the user utterance based on the user input (67). Including, The operation of outputting the above first response (63) is: An operation of retrieving data associated with an entity included in a portion of the user utterance or a combination of entities included in a portion of the user utterance from the memory (130, 207, 630); and An action of outputting a list of items related to the entity or combination of entities based on the retrieved data. An electronic device (101, 201, 501) comprising:

2. In paragraph 1, The operation of obtaining the above user input (67) is as follows: An action to receive user selection for the above list. An electronic device (101, 201, 501) comprising:

3. In any one of paragraphs 1 and 2, A display operatively connected to the above processor (120, 203, 620) Including more, The above first response (63) and the above second response (65) are, An electronic device (101, 201, 501) outputting through the above display.

4. In any one of paragraphs 1 to 3, The operation of outputting the above second response (65) is: An operation of outputting one of the first user interface and the second user interface through the display based on the first response (63) An electronic device (101, 201, 501) comprising:

5. In any one of paragraphs 1 to 4, The above first user interface, Including the second response above, The second user interface is as follows: The above first response and the above second response An electronic device (101, 201, 501) comprising:

6. In any one of paragraphs 1 to 5, The actions output through the above display are: An operation of outputting one of the first user interface and the second user interface through the display based on the relationship between the first response (63) and the second response (65) or the form of the first response (63). An electronic device (101, 201, 501) comprising:

7. In any one of paragraphs 1 to 6, The above multiple actions are: In response to obtaining additional user input for the first response (63) after the output of the second response (65), an operation of outputting a third response (1207) based on the second response (65) An electronic device (101, 201, 501) further comprising:

8. In electronic devices (101, 201, 501), At least one processor (120, 203, 620); and Memory for storing instructions (130, 207, 630) Including, The above instructions cause the electronic device (101, 201, 501) to perform a plurality of operations based on being individually or collectively executed by the at least one processor (120, 203, 620), The above multiple actions are: An act of identifying entities from a portion of a user utterance prior to the end of the user utterance; In response to the identification of said entity, an operation of obtaining data related to said entity from a data source; and An action to output information about the entity based on the data before the end of the user utterance. An electronic device (101, 201, 501) comprising:

9. In paragraph 8, The above acquisition action is An action to extract textual data related to the entity from the above data source. An electronic device (101, 201, 501) comprising:

10. In the operating method of an electronic device (101, 201, 501), In response to obtaining a portion of a user utterance, an action of outputting a first response (63) to said portion; An operation for obtaining user input (67) for the first response; and In response to the termination of the user utterance, an action of outputting a second response (65) to the user utterance based on the user input (67). A method comprising:

11. In paragraph 10, The operation of outputting the above first response (63) is: An action to output information about an entity or a combination of entities before the end of the above user utterance. A method comprising:

12. In any one of paragraphs 10 to 11, The action of printing the above information is: An action that outputs a list of items related to the above entities and combinations of the above entities. A method comprising:

13. In any one of paragraphs 10 to 12, The action of printing the above information is: An operation of retrieving data associated with said entity or a combination of said entities from a memory (130, 207, 630) included in said electronic device (101, 201, 501); and An action of outputting information about the entity or a combination of the entities based on the retrieved data. A method comprising:

14. In any one of paragraphs 10 to 13, The above first response (63) and the above second response (65) are, A method for outputting information through a display of the above electronic device (101, 201, 501).

15. In any one of paragraphs 10 to 14, The operation of outputting the above second response (65) is: An operation of outputting one of the first user interface and the second user interface through the display based on the first response (63) Including, The above first user interface, Including the second response above, The second user interface is, The above first response and the above second response A method comprising:

Citation Information

Patent Citations

  • Automatic dish washing system

    KR1020200132689A

  • Automatic peeling device

    KR1020210011616A

  • Document management service server which is able to provide expected reading time information for an electronic document, and the operating method thereof

    KR1020240038311A

  • Method for outputting speech recognition results based on determination of sameness and appratus using the same

    KR102153220B1

  • Peptides specifically binding to ovomucoid and uses thereof

    KR102759471B1