Electronic device, and method for providing user interface for user queries based on category by using same
The electronic device integrates query history into the user interface, addressing the challenge of remembering previous queries, thereby simplifying the process of inputting similar queries.
Patent Information
- Application Number
- PCT/KR2024/020170
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-01-12
- Filing Date
- 2024-12-10
- Publication Date
- 2025-07-03
AI Technical Summary
Users face difficulty in remembering previous queries when inputting similar queries, making it cumbersome to select a user interface related to a similar topic.
An electronic device determines the presence of history information related to a user query and displays the query and its corresponding answer together with a user interface, allowing users to view previous queries on the same subject intuitively.
Facilitates easy access to previous queries and answers, enhancing user experience by providing a seamless interface for related queries.
Smart Images

Figure KR2024020170_03072025_PF_FP_ABST
Abstract
Description
Method for providing a user interface for user queries based on categories of electronic devices and their use
[0001] Embodiments of the present disclosure relate to an electronic device and a method for providing a user interface for a user query based on a category using the same.
[0002] Recently, technologies for summarizing or condensing long sentences using LLM (large language model) have been developed. For example, electronic devices can obtain answers to user queries using LLM and provide the obtained answers to the user. The electronic device may provide a storage function that stores user queries and answers to the user queries in chronological order. Alternatively, the electronic device may not provide the storage function. For example, if the electronic device provides the storage function, a user may wish to additionally input a second user query on a similar topic to a previously entered user query in a user interface that includes the previously entered user query. In this case, the user may input the second user query through a user interface displayed as a selection of the user interface for inputting the second user query. Accordingly, the electronic device may provide the previously entered user query, the answer corresponding to the user query, the second user query, and the second answer corresponding to the second user query through the same user interface.
[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] However, if a user must select a user interface containing a previously entered user query to additionally enter a second user query on a similar topic, the user may have difficulty remembering when the user previously entered the user query. Accordingly, selecting a user interface containing a similar topic to the second user query to additionally enter the second user query can be difficult and cumbersome.
[0005] An electronic device according to various embodiments of the present disclosure may check whether history information related to the subject of an input user query exists, display a user interface including the history information if the history information exists, and display the input user query and an answer corresponding to the user query together on the user interface.
[0006] According to one embodiment of the present disclosure, an electronic device may include a display, a memory storing instructions, and a processor. According to one embodiment, the instructions, when executed by the processor, may cause the electronic device to receive a user query. According to one embodiment, the instructions, when executed by the processor, may cause the electronic device to determine whether the received user query includes a plurality of topics. According to one embodiment, the instructions, when executed by the processor, may cause the electronic device to display, on the display, the user query, a first answer corresponding to a first user query related to a first topic among the user queries, and a second answer corresponding to a second user query related to a second topic among the user queries, if the user query includes the plurality of topics. In one embodiment, the instructions, when executed by the processor, may cause the electronic device to, when a user input for selecting one of the first answer and the second answer is detected, determine whether history information corresponding to a topic related to the selected answer is stored in the memory. In one embodiment, the instructions, when executed by the processor, may cause the electronic device to, when history information corresponding to a topic related to the selected answer is stored in the memory, display on the display a user interface including the history information, a user query corresponding to the selected answer, and the selected answer.
[0007] According to one embodiment of the present disclosure, a method for providing a user interface for a user query based on a category may include an operation of receiving a user query. According to one embodiment, the method for providing a user interface for a user query based on a category may include an operation of checking whether the received user query includes a plurality of topics. According to one embodiment, the method for providing a user interface for a user query based on a category may include an operation of displaying, on a display, the user query, a first answer corresponding to a first user query related to a first topic among the user queries, and a second answer corresponding to a second user query related to a second topic among the user queries. According to one embodiment, the method for providing a user interface for a user query based on a category may include an operation of checking, when a user input for selecting one of the first answer and the second answer is detected, whether history information corresponding to a topic related to the selected answer is stored in a memory. According to one embodiment, a method for providing a user interface for a user query based on a category may include, when history information corresponding to a topic related to the selected answer is stored in the memory, an operation of displaying a user interface including the history information, the user query corresponding to the selected answer, and the selected answer on the display.
[0008] According to one embodiment of the present disclosure, a non-transitory computer-readable storage medium (or a computer program product) storing one or more programs may be described. The one or more programs according to one embodiment may include instructions for receiving a user query when executed by a processor of an electronic device. The one or more programs according to one embodiment may include instructions for determining whether the received user query includes a plurality of topics when executed by the processor of the electronic device. The one or more programs according to one embodiment may include instructions for displaying, on a display, the user query, a first answer corresponding to a first user query related to a first topic among the user queries, and a second answer corresponding to a second user query related to a second topic among the user queries, when the user query includes the plurality of topics, when executed by the processor of the electronic device. The one or more programs according to one embodiment may include instructions for determining, when a user input for selecting one of the first answer and the second answer is detected, whether history information corresponding to a topic related to the selected answer is stored in a memory. One or more programs according to one embodiment may include instructions that, when executed by a processor of an electronic device, display on the display a user interface including history information, a user query corresponding to the selected answer, and the selected answer, if history information corresponding to a topic related to the selected answer is stored in the memory.
[0009] An electronic device according to one embodiment of the present disclosure can display, when history information related to the subject of an input user query exists, a user query entered on a user interface including the history information and a response corresponding to the user query together, thereby allowing a user to view user queries on the same subject through the same user interface. Accordingly, the user can intuitively check the history information of user queries on the same subject.
[0010] FIG. 1 is a block diagram of an electronic device within a network environment according to one embodiment of the present disclosure.
[0011] FIG. 2 is a block diagram illustrating an electronic device according to one embodiment of the present disclosure.
[0012] FIG. 3 is a block diagram illustrating a user query UI provision module according to one embodiment of the present disclosure.
[0013] FIG. 4 is a flowchart illustrating a method for providing a user interface for a user query based on a category, according to one embodiment of the present disclosure.
[0014] FIGS. 5A and 5B are flowcharts illustrating a method for providing a user interface for a user query based on a category, according to one embodiment of the present disclosure.
[0015] FIG. 6 is a diagram illustrating a method for providing a user interface for a user query including one subject, according to one embodiment of the present disclosure.
[0016] FIG. 7 is a diagram illustrating a method for providing a user interface for a user query including multiple topics according to one embodiment of the present disclosure.
[0017] FIG. 8 is a diagram illustrating a method for providing a user interface for a user query including multiple topics according to one embodiment of the present disclosure.
[0018] FIG. 9 is a diagram illustrating a method for providing a user interface for a user query including multiple topics according to one embodiment of the present disclosure.
[0019] FIG. 10 is a flowchart illustrating a method for providing a user interface for a user query including multiple topics, according to one embodiment of the present disclosure.
[0020] FIG. 11 is a diagram illustrating a method for providing a user interface for a user query including multiple topics according to one embodiment of the present disclosure.
[0021] FIG. 12 is a flowchart illustrating a method for displaying a list of multiple user interfaces according to one embodiment of the present disclosure.
[0022] FIG. 13 and FIG. 14 are diagrams illustrating a method of displaying a list of multiple user interfaces according to one embodiment of the present disclosure.
[0023] FIG. 15 is a block diagram illustrating a generative artificial intelligence system according to one embodiment of the present disclosure.
[0024] Hereinafter, embodiments of the present disclosure will be described in detail with reference to the drawings so that those skilled in the art can easily implement the present disclosure. However, the present disclosure may be implemented in various different forms and is not limited to the embodiments described herein. In connection with the description of the drawings, the same or similar reference numerals may be used for identical or similar components. Furthermore, in the drawings and related descriptions, descriptions of well-known functions and configurations may be omitted for clarity and conciseness.
[0025] FIG. 1 is a block diagram of an electronic device (101) within a network environment (100) according to one embodiment of the present disclosure.
[0026] Referring to FIG. 1, in a network environment (100), an electronic device (101) may communicate with an electronic device (102) via a first network (198) (e.g., a short-range wireless communication network), or may communicate with at least one of an electronic device (104) or a server (108) via a second 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)).
[0027] 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.
[0028] 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.
[0029] The memory (130) can store various data used by at least one component (e.g., processor (120) or sensor module (176)) of the electronic device (101). The data can include, for example, software (e.g., program (140)) and input data or output data for commands related thereto. The memory (130) can include volatile memory (132) or non-volatile memory (134).
[0030] 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).
[0031] 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).
[0032] 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.
[0033] 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.
[0034] 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).
[0035] 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.
[0036] 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.
[0037] 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).
[0038] 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.
[0039] 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.
[0040] 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).
[0041] 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.
[0042] 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).
[0043] 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.
[0044] 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 printed circuit board (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).
[0045] According to various embodiments, the antenna module (197) may form a mmWave antenna module. According to 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.
[0046] 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)).
[0047] 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.
[0048] FIG. 2 is a block diagram illustrating an electronic device (101) according to one embodiment of the present disclosure.
[0049] Referring to FIG. 2, an electronic device (101) (e.g., the electronic device (101) of FIG. 1) may include a communication circuit (210) (e.g., the communication module (190) of FIG. 1), a memory (220) (e.g., the memory (130) of FIG. 1), a display (230) (e.g., the display module (160) of FIG. 1), and / or a processor (240) (e.g., the processor (120) of FIG. 1).
[0050] According to one embodiment of the present disclosure, a communication circuit (210) (e.g., a communication module (190) of FIG. 1) may control a communication connection between an electronic device (101) and at least one external electronic device (e.g., an electronic device (102) or an electronic device (104) of FIG. 1) (and / or a server (e.g., a server (108) of FIG. 1)) under the control of a processor (240).
[0051] In one embodiment, the communication circuit (210) can transmit at least one generated prompt to an external electronic device (e.g., the electronic device (102), the electronic device (104), and / or the server (108)) to obtain an answer corresponding to the user query generated under the control of the processor (240). The communication circuit (210) can receive an answer corresponding to the user query from the external electronic device.
[0052] According to one embodiment of the present disclosure, the memory (220) (e.g., the memory (130) of FIG. 1) performs a function of storing a program (e.g., the program (140) of FIG. 1) for processing and controlling the processor (240) of the electronic device (101), an operating system (OS) (e.g., the operating system (142) of FIG. 1), various applications, and / or input / output data, and may store a program that controls the overall operation of the electronic device (101). The memory (220) may store various setting information required when processing functions related to various embodiments of the present disclosure in the electronic device (101). The memory (220) may store executable instructions. For example, the memory (220) may store instructions that, when executed by the processor (240), cause the electronic device (101) to perform operations. For example, the instructions may be stored on a computer-readable recording medium. The recording medium may be tangible and non-transitory. The memory (220) and / or the recording medium may store one or more programs including the instructions.
[0053] In one embodiment, the memory (220) may store a conversation history database (e.g., the conversation history database (350) of FIG. 3) and / or a prompt history database (e.g., the prompt history database (355) of FIG. 3). The conversation history database may store user queries and answers corresponding to the user queries. Answers corresponding to the user queries may include text (e.g., sentences, code), images, and / or videos. The prompt history database may store at least one generated prompt.
[0054] According to one embodiment of the present disclosure, the display (230) displays an image under the control of the processor (240), and may be implemented as any one of a liquid crystal display (LCD), a light-emitting diode (LED) display, a micro LED (μLED) display, an organic light-emitting diode (OLED) display, an active matrix organic light-emitting diode (AMOLED) display, a micro electro mechanical systems (MEMS) display, an electronic paper display, a flexible display, a foldable display, or a rollable display. However, the present invention is not limited thereto.
[0055] In one embodiment, the display (230) may display text data corresponding to a user query under the control of the processor (240). If the user query includes multiple topics, the display (230) may display, under the control of the processor (240), the user query, a first answer corresponding to a first user query related to a first topic among the user queries, and a second answer corresponding to a second user query related to a second topic among the user queries. If a user input for selecting one of the first answer and the second answer is detected under the control of the processor (240), and history information corresponding to a topic related to the selected answer is stored in the memory (220), the display (230) may display a user interface including history information related to the topic, a related user query corresponding to the selected answer, and the selected answer. The display (230) may, under the control of the processor (240), display a second user interface including a user query corresponding to the selected answer and the selected answer if no history information corresponding to the topic related to the selected answer is stored in the memory (220).
[0056] According to one embodiment of the present disclosure, the processor (240) may include, for example, a microcontroller unit (MCU), and may control a plurality of hardware components connected to the processor (240) by running an operating system (OS) or an embedded software program. The processor (240) may control a plurality of hardware components according to, for example, instructions stored in a memory (220) (e.g., a program (140) of FIG. 1).
[0057] In one embodiment, the processor (240) may include at least one component (or module) for operation according to an embodiment of the present disclosure. For example, the processor (240) may include a user query UI provision module (241). The user query UI provision module (241) may include at least one functional unit, such as an automatic speech recognition (ASR) module (305), a topic classifier module (310), an embedding model (315), a conversation topic manager module (320), a session manager module (325), a prompt generator module (330), a generative model (LLM) (335), an executor module (340), at least one plug-in (345), a conversation history database (DB) (350), and / or a prompt history DB (355), as illustrated in FIG. 3. According to one embodiment, at least some of the functional units may be included in the processor (240) as hardware modules (e.g., circuitry), and / or implemented as software including one or more instructions executable by the processor (240). For example, operations performed by the processor (240) may be stored in the memory (220) and, when executed, executed by instructions that cause the processor (240) to operate. The user query UI provision module (241) described above will be described in more detail with reference to FIG. 3 described below.
[0058] In one embodiment, the processor (240) may receive a user query. For example, the user query may include data related to a question (or inquiry) entered by the user. For example, the processor (240) may receive the user query after receiving a specified voice wake-up word (e.g., "wake up") from the user or receiving an input of selecting a preset button. The user query may include voice data (e.g., a user utterance) received through a microphone (e.g., the input module (150) of FIG. 1) or text data received through a keypad.
[0059] In one embodiment, the processor (240) may determine whether a user query includes multiple topics. For example, the processor (240) may determine the intent of the received user query, and, based on the determined intent of the user query, determine whether the user query includes the multiple topics. If the user query includes multiple topics, the processor (240) may display, on the display (230), the user query, a first answer corresponding to a first user query related to a first topic among the user queries, and a second answer corresponding to a second user query related to a second topic among the user queries. For example, if the user query includes multiple topics, the processor (240) may generate a first prompt for obtaining a first answer corresponding to a first user query related to the first topic, and a second prompt for obtaining a second answer corresponding to a second user query related to the second topic. The processor (240) can retrieve the first prompt and the second prompt from the electronic device (101) and / or a server (e.g., server (108) of FIG. 1), and generate the retrieved search results as a first answer corresponding to a first user query related to a first topic and a second answer corresponding to a second user query related to a second topic.
[0060] In one embodiment, the processor (240) may display a user query, a first answer corresponding to the first user query related to a first topic among the user queries, and a second answer corresponding to a second user query related to a second topic among the user queries on the display (230). When a user input for selecting one of the first answer and the second answer is detected, the processor (240) may determine whether history information corresponding to the topic related to the selected answer is stored in the memory (220). If history information corresponding to the topic related to the selected answer is stored in the memory (220), the processor (240) may open a pre-stored session related to the intent of the user query and / or the topic, and display, on the display (230) as a user interface, history information related to the topic (e.g., at least one user query previously entered by a user related to the topic and at least one answer related to the at least one user query), the user query corresponding to the selected answer, and the selected answer. If the history information corresponding to the topic related to the selected answer is not stored in the memory (220), the processor (240) may create a session related to the intent and / or topic of the user query, and display the created session including the user query corresponding to the selected answer and the selected answer on the display (230) as a second user interface.
[0061] In one embodiment, if the user query does not include multiple topics, the processor (240) may determine that the user query includes one topic and display a third answer related to a third topic of the user query on the display (230). If a second user input for selecting a third answer related to the third topic of the user query is detected, the processor (240) may check whether history information related to the third topic of the user query is stored in the memory (220). The third topic according to one embodiment may be the same as or different from the first and second topics described above. If history information related to the third topic of the user query is stored in the memory (220), the processor (240) may open a pre-stored session related to the third topic of the user query, and display the opened session, including history information related to the third topic, the user query, and the third answer corresponding to the user query, as a third user interface, on the display (230). If the history information related to the third subject of the user query is not stored in the memory (220), the processor (240) can create a session related to the third subject of the user query, and display the user query and the third answer corresponding to the user query in the created session on the display (230) as a fourth user interface.
[0062] An electronic device (101) according to an embodiment of the present disclosure may include a display (230), a memory (220) that stores instructions, and a processor (240). The instructions according to an embodiment, when executed by the processor (240), may cause the electronic device (101) to receive a user query. The instructions according to an embodiment, when executed by the processor (240), may cause the electronic device (101) to determine whether the received user query includes a plurality of topics. The instructions according to an embodiment, when executed by the processor (240), may cause the electronic device (101) to display, on the display (230), the user query, a first answer corresponding to a first user query related to a first topic among the user queries, and a second answer corresponding to a second user query related to a second topic among the user queries, if the user query includes a plurality of topics. Instructions according to one embodiment, when executed by the processor (240), may cause the electronic device (101) to, when a user input for selecting one of the first answer and the second answer is detected, determine whether history information corresponding to a topic related to the selected answer is stored in the memory (220). Instructions according to one embodiment, when executed by the processor (240), may cause the electronic device (101) to, when history information corresponding to a topic related to the selected answer is stored in the memory (220), display on the display (230) a user interface including the history information, a user query corresponding to the selected answer, and the selected answer.
[0063] The instructions according to one embodiment, when executed by the processor (240), may cause the electronic device (101) to verify the intent of a received user query. The instructions according to one embodiment, when executed by the processor (240), may cause the electronic device (101) to verify whether the user query includes multiple topics based on the intent of the verified user query.
[0064] The instructions according to one embodiment, when executed by the processor (240), may cause the electronic device (101) to display on the display (230) a second user interface including a user query corresponding to the selected answer and the selected answer, if no history information corresponding to a topic related to the selected answer is stored in the memory (220).
[0065] The instructions according to one embodiment, when executed by the processor (240), may cause the electronic device (101) to determine, if the user query includes one subject, whether history information related to a third subject of the user query is stored in the memory (220). The instructions according to one embodiment, when executed by the processor (240), may cause the electronic device (101) to display, on the display (230), a third user interface including history information related to the third subject, the user query, and a third answer corresponding to the user query, if the history information related to the third subject is stored in the memory (220).
[0066] The instructions according to one embodiment, when executed by the processor (240), may cause the electronic device (101) to display, on the display (230), a fourth user interface including the user query and a third answer corresponding to the user query, if no history information related to the third subject of the user query is stored in the memory (220).
[0067] The instructions according to one embodiment, when executed by the processor (240), may cause the electronic device (101) to determine whether history information corresponding to a topic related to a selected answer is stored in the memory (220) based on a deep learning model. The deep learning model according to one embodiment may include one of an embedding vector generation model, a latent dirichlet allocation (LDA) model, or a word2Vec model.
[0068] The instructions according to one embodiment, when executed by the processor (240), may cause the electronic device (101) to display the first answer and the second answer on the display (230) such that they at least partially overlap. The instructions according to one embodiment, when executed by the processor (240), may cause the electronic device (101) to display a first answer corresponding to a first user query related to a first topic among user queries in a first area of the display (230), and to display a second answer corresponding to a second user query related to a second topic among user queries in a second area of the display (230).
[0069] The instructions according to one embodiment, when executed by the processor (240), may cause the electronic device (101) to determine where the first answer and the second answer are displayed on the display (230) based on a specified priority.
[0070] The instructions according to one embodiment, when executed by the processor (240), may cause the electronic device (101) to detect a second user input for displaying a fifth user interface including a user query related to a plurality of topics while displaying, on the display (230), a user query, a first answer corresponding to a first user query related to a first topic among the user queries, and a second answer corresponding to a second user query related to a second topic among the user queries. The instructions according to one embodiment, when executed by the processor (240), may cause the electronic device (101) to display, on the display (230), a fifth user interface including the user query, the first answer, and the second answer based on detecting the second user input.
[0071] According to one embodiment, the memory (220) may store a plurality of user interfaces related to a plurality of topics corresponding to a plurality of user queries. The instructions according to one embodiment, when executed by the processor (240), may cause the electronic device (101) to display a list of the plurality of user interfaces on the display (230) based on the detection of a third user input. The list of the plurality of user interfaces according to one embodiment may be displayed in a list based on a topic or in a list chronologically.
[0072] An electronic device (101) according to one embodiment of the present disclosure may include a display (230), a memory (220) storing instructions, and a processor (240). The instructions according to one embodiment, when executed by the processor (240), may cause the electronic device (101) to receive a user query. The instructions according to one embodiment, when executed by the processor (240), may cause the electronic device (101) to check the subject of the received user query. The instructions according to one embodiment, when executed by the processor (240), may cause the electronic device (101) to display the user query and an answer corresponding to the user query on the display (230) when the subject of the user query is one. The instructions according to one embodiment, when executed by the processor (240), may cause the electronic device (101) to, when a user input for selecting an answer is detected, determine whether history information corresponding to a topic related to the selected answer is stored in the memory (220). The instructions according to one embodiment, when executed by the processor (240), may cause the electronic device (101) to, when history information corresponding to a topic related to the selected answer is stored in the memory (220), display on the display (230) a user interface including history information related to a topic of a user query, the user query, and an answer corresponding to the user query.
[0073] FIG. 3 is a block diagram illustrating a user query UI provision module (241) according to one embodiment of the present disclosure.
[0074] Referring to FIG. 3, a processor (e.g., processor (240) of FIG. 2) of an electronic device (101) (e.g., electronic device (101) of FIG. 1) may include a user query UI provision module (241).
[0075] In one embodiment, the user query UI providing module (241) may include an automatic speech recognition (ASR) module (305), a topic classifier module (310), an embedding model (315), a conversation topic manager module (320), a session manager module (325), a prompt generator module (330), a generative models (LLM) (335), an executor module (340), at least one plug in (345), a conversation history database (DB) (350), and / or a prompt history DB (355).
[0076] In one embodiment, the ASR module (305) may receive a user query, for example, voice data (e.g., user utterance). The ASR module (305) may convert the received voice data into text data and transmit it to the topic classification module (310). However, the user query may also include text data entered via a keypad.
[0077] In one embodiment, the topic classification module (310) may determine and / or classify the intent and / or topic of a user query based on text data received from the ASR module (305). In one embodiment, the topic classification module (310) may perform syntactic analysis or semantic analysis based on the text data to determine the intent and / or topic of the user query. In one embodiment, the topic classification module (310) may determine the meaning of words extracted from the text data using linguistic features (e.g., grammatical elements) of morphemes or phrases, and may match the meaning of the determined words to the intent and / or topic to determine the intent and / or topic of the user query. In one embodiment, the topics may include, but are not limited to, performances / exhibitions, movies, restaurants, health, lodging, transportation, systems, device control, education, health / fitness, business / finance, and / or automobiles.
[0078] For example, when a user query “Play music and tell me today’s weather” is received by a user, the topic classification module (310) can identify a first intent (e.g., “play.music”) and a second intent (e.g., “show.weather”) of the user query. Based on the identified first intent (e.g., “play.music”) and second intent (e.g., “show.weather”), the topic classification module (310) can identify (or determine) that the user query includes multiple topics, namely, a first topic (e.g., “music”) and a second topic (e.g., “weather”).
[0079] In one embodiment, the embedding model (315) may include a deep learning model. For example, the deep learning model may include, but is not limited to, an embedding vector generation model, a latent dirichlet allocation (LDA) model, or a word-to-vector (word2Vec) model.
[0080] In one embodiment, the conversation topic management module (320) may determine whether a user query previously entered by the user is stored in the conversation history database (350) based on the intent and / or topic determined by the topic classification module (310) and the deep learning model included in the embedding model (315). For example, if a conversation history related to the intent and / or topic of the user query previously entered by the user exists, the conversation topic management module (320) may forward the intent and / or topic of the user query to the session management module (325) and / or the prompt generation module (330) so that the received user query can be subsequently displayed in the conversation history related to the topic (and / or intent).
[0081] In one embodiment, the session management module (325) may be a module that manages sessions. The session management module (325) may create a new session or open a previously saved session. For example, if there is no conversation history related to the intent and / or topic of a user query previously entered by the user, the session management module (325) may create a new session related to the intent and / or topic of the user query. In another example, if there is a conversation history related to the intent and / or topic of a user query previously entered by the user, the session management module (325) may open a previously saved session related to the intent and / or topic of the user query.
[0082] In one embodiment, the prompt generation module (330) may generate at least one prompt (e.g., text data (e.g., sentence)) to be input into the generative model (335) based on the intent and / or topic of the user query. However, the prompt generation module (330) may also generate at least one prompt (e.g., text data (e.g., sentence)) based on the intent and / or topic of the user query by using a pre-existing sample prompt. For example, when receiving the user query “How is the weather today”, the prompt generation module (330) may generate the prompt corresponding to the user query, “Samsung.weatherNews: This Plugin provides the functions for weather information, Function list: Get weather, Get location coordinates, Get current location coordinates”.
[0083] In one embodiment, when a user query includes multiple topics, the prompt generation module (330) can generate a prompt for each topic. The prompts generated for each topic can be input into the generative model (335) based on a plug-in (345) corresponding to each topic. In one embodiment, when the intent and / or topic of the user query is received from the conversation topic management module (320) because there is a conversation history related to the intent and / or topic of the user query previously input by the user, the prompt generation module (330) can generate a new prompt based on the history information and at least one previously generated prompt.
[0084] In one embodiment, the generative model (335) may generate an answer related to a user query based on the generated prompt. For example, the generative model (335) may retrieve the generated prompt from the electronic device (101) and generate the retrieved search result as an answer related to the user query. In another example, the generative model (335) may transmit the generated prompt to a server (e.g., server (108) of FIG. 1). The server (108) may retrieve the prompt received from the electronic device (101) and transmit the retrieved search result to the electronic device (101). The generative model (335) may generate the retrieved search result received from the server (108) as an answer related to the user query. In one embodiment, the answer related to the user query may include text (e.g., sentences, code), images, and / or videos.
[0085] In one embodiment, the execution module (340) may output an answer (e.g., text (e.g., sentence, code), image, and / or video) corresponding to a user query generated by the generative model (335).
[0086] In one embodiment, the conversation history database (350) may store user queries entered within a generated session and responses (e.g., text (e.g., sentences, code), images, and / or videos) corresponding to the output user queries.
[0087] In one embodiment, the prompt history database (355) may store generated prompts prior to being input into the generative model (335).
[0088] FIG. 4 is a flowchart illustrating a method for providing a user interface for a user query based on a category, according to one embodiment of the present disclosure.
[0089] In the following embodiments, the operations of FIG. 4 may be performed sequentially, but are not necessarily performed sequentially. For example, the order of the operations of FIG. 4 may be changed, and at least two operations may be performed in parallel.
[0090] According to one embodiment, operations 405 to 425 of FIG. 4 may be understood to be performed in a processor (e.g., processor (240) of FIG. 2) of an electronic device (e.g., electronic device (101) of FIG. 1).
[0091] Referring to FIG. 4, the processor (240) may receive a user query in operation 405. The user query may include data related to a question (or inquiry) input by the user. In one embodiment, the user query may include voice data (e.g., user utterance) received through a microphone (e.g., input module (150) of FIG. 1) or text data received through a keypad. For example, the processor (240) may receive voice data (e.g., user utterance) after receiving a designated voice wake-up word (e.g., wake up) from the user or receiving an input of selecting a set button. The processor (240) may convert the voice data (e.g., user utterance) into text data and display the converted text data on a display (e.g., display (230) of FIG. 2). For another example, the processor (240) may receive text data input via a keypad after receiving a voice wake word (e.g., wake up) specified by the user or an input for selecting a set button. The processor (240) may display the text data input via the keypad on the display (230).
[0092] In one embodiment, the processor (240) may, in operation 410, determine whether the received user query includes multiple topics.
[0093] In one embodiment, the processor (240) (e.g., the topic classification module (310) of FIG. 3) may verify the intent of a received user query and, based on the verified intent of the user query, determine whether the user query includes multiple topics. For example, the processor (240) (e.g., the topic classification module (310)) may perform grammatical analysis or semantic analysis to determine the intent and / or topic of the user query.
[0094] For example, when a user query “Play music and tell me today’s weather” is received, the processor (240) (e.g., topic classification module (310)) can identify a first intent (e.g., “play.music”) and a second intent (e.g., “show.weather”) of the user query. Based on the identified first intent (e.g., “play.music”) and second intent (e.g., “show.weather”), the processor (240) (e.g., topic classification module (310)) can identify (or determine) that the user query includes multiple topics, namely, a first topic (e.g., “music”) and a second topic (e.g., “weather”).
[0095] In one embodiment, in operation 415, if the user query includes multiple topics, the processor (240) may display, on the display (230), the user query, a first answer corresponding to a first user query related to a first topic among the user queries, and a second answer corresponding to a second user query related to a second topic among the user queries.
[0096] For example, the processor (240) may display on the display (230) a first answer corresponding to a first user query (e.g., “play music”) related to a first topic (e.g., “music”) among the user queries “play music and tell me today’s weather” and a second answer corresponding to a second user query (e.g., “tell me today’s weather”) related to a second topic (e.g., “weather”) among the user queries “play music and tell me today’s weather”.
[0097] In one embodiment, the processor (240) may display the first answer and the second answer on the display (230) so that they overlap at least partially. However, the processor (240) may display the user query (or the first user query) and the first answer in a first area of the display (230), and display the user query (or the second user query) and the second answer in a second area of the display (230) (e.g., in a multi-window format).
[0098] In one embodiment, the processor (240) (e.g., the prompt generation module (330) of FIG. 3) may generate a prompt (e.g., text data (e.g., sentences)) corresponding to a topic based on the intent and / or topic of the user query. However, the processor (240) (e.g., the prompt generation module (330)) may also generate a prompt (e.g., text data (e.g., sentences)) based on the intent and / or topic of the user query using pre-existing sample prompts.
[0099] In one embodiment, the processor (240) (e.g., the prompt generation module (330)) may generate prompts for each topic when a user query includes multiple topics. For example, the processor (240) (e.g., the prompt generation module (330)) may generate a first prompt for obtaining a first answer corresponding to a first user query and a second prompt for obtaining a second answer corresponding to a second user query.
[0100] In one embodiment, the processor (240) (e.g., the generative model (335) of FIG. 3) may generate a first answer corresponding to a first user query related to a first topic based on a first prompt. For example, the processor (240) (e.g., the generative model (335)) may retrieve the first prompt from the electronic device (101) and / or a server (e.g., the server (108) of FIG. 1) and generate the retrieved search result as a first answer corresponding to the first user query related to the first topic. Additionally, the processor (240) (e.g., the generative model (335)) may generate a second answer corresponding to a second user query related to a second topic based on a second prompt. For example, the processor (240) (e.g., generative model (335)) may retrieve a second prompt from the electronic device (101) and / or server (108) and generate the retrieved search results as a second answer corresponding to a second user query related to a second topic.
[0101] In one embodiment, the first and second answers corresponding to the user query may include text (e.g., sentences, code), images, and / or videos.
[0102] In one embodiment, the processor (240) (e.g., the conversation topic management module (320) of FIG. 3) may, in operation 420, when a user input for selecting one of the first and second answers is detected, check whether history information corresponding to the topic related to the selected answer is stored in a memory (e.g., the memory (220) of FIG. 2) (e.g., the conversation history database (350) of FIG. 3).
[0103] In one embodiment, the processor (240) (e.g., the conversation topic management module (320)) can determine whether the first topic and the second topic are topics previously mentioned by the user. For example, the processor (240) (e.g., the conversation topic management module (320)) can determine whether history information corresponding to the topic related to the selected answer is stored in the memory (220) (e.g., the conversation history database (350)) based on a deep learning model. For example, the deep learning model may include one of an embedding vector generation model, a latent dirichlet allocation (LDA) model, or a word2vec model, but is not limited thereto.
[0104] In one embodiment, the processor (240) (e.g., the execution module (340) of FIG. 3) may, in operation 425, display a user interface including the history information related to the topic, the related user query corresponding to the selected answer, and the selected answer on the display (230) if history information corresponding to the topic is stored in the memory (220) (e.g., the conversation history database (350)).
[0105] In one embodiment, if history information corresponding to a topic related to a selected answer is stored in the memory (220) (e.g., conversation history database (350)), the processor (240) (e.g., session management module (325) of FIG. 3) may open a previously stored session related to the intent and / or topic of the user query. The processor (240) (e.g., session management module (325)) may display, on the display (230) as a user interface, the opened session, including history information related to the topic, a related user query corresponding to the selected answer, and the selected answer. In one embodiment, the history information related to the topic may include at least one user query previously entered by a user related to the topic (e.g., a topic related to the selected answer) and at least one answer related to the at least one user query.
[0106] FIGS. 5A and 5B are flowcharts illustrating a method for providing a user interface for a user query based on a category, according to one embodiment of the present disclosure.
[0107] In the following embodiments, the operations of FIG. 5 may be performed sequentially, but are not necessarily performed sequentially. For example, the order of the operations of FIG. 5 may be changed, and at least two operations may be performed in parallel.
[0108] According to one embodiment, operations 505 to 550 of FIG. 5 may be understood to be performed in a processor (e.g., processor (240) of FIG. 2) of an electronic device (e.g., electronic device (101) of FIG. 1).
[0109] Since operations 505 to 530 of FIG. 5 according to various embodiments are substantially the same as operations 405 to 425 of FIG. 4 described above, a detailed description thereof may be replaced with the description of FIG. 4.
[0110] Referring to FIG. 5, the processor (240) may receive a user query in operation 505. For example, the user query may include data related to a question (or inquiry) input by the user. The processor (240) may receive the user query after receiving a designated voice wake-up word (e.g., wake up) from the user or an input of selecting a set button. The user query may include voice data (e.g., user utterance) received through a microphone (e.g., input module (150) of FIG. 1) or text data received through a keypad. If the user query is voice data received through a microphone, the processor (240) may convert the voice data into text data and display the converted text data on a display (e.g., display (230) of FIG. 2). Alternatively, the processor (240) may display text data received through the keypad on the display (230).
[0111] In one embodiment, the processor (240) (e.g., the topic classification module (310) of FIG. 3) may, in operation 510, determine whether a user query includes multiple topics. For example, the processor (240) (e.g., the topic classification module (310)) may determine the intent of the received user query and, based on the determined intent of the user query, determine whether the user query includes the multiple topics.
[0112] In one embodiment, when the user query includes multiple topics (e.g., YES in operation 510), the processor (240) (e.g., the execution module (340) of FIG. 3) may, in operation 515, display the user query, a first answer corresponding to a first user query related to a first topic among the user queries, and a second answer corresponding to a second user query related to a second topic among the user queries on a display (e.g., the display (230) of FIG. 2). For example, when the user query includes multiple topics, the processor (240) (e.g., the prompt generation module (330) of FIG. 3) may generate a first prompt for obtaining a first answer corresponding to a first user query related to the first topic and a second prompt for obtaining a second answer corresponding to a second user query related to the second topic. The processor (240) (e.g., the generative model (335) of FIG. 3) may generate a first answer corresponding to the first user query related to the first topic based on the first prompt. For example, the processor (240) (e.g., the generative model (335)) may retrieve a first prompt from the electronic device (101) and / or a server (e.g., the server (108) of FIG. 1) and generate the retrieved search result as a first answer corresponding to a first user query related to a first topic. In addition, the processor (240) (e.g., the generative model (335)) may generate a second answer corresponding to a second user query related to a second topic based on the second prompt. For example, the processor (240) (e.g., the generative model (335)) may retrieve a second prompt from the electronic device (101) and / or the server (108) and generate the retrieved search result as a second answer corresponding to a second user query related to a second topic.
[0113] In one embodiment, the processor (240) (e.g., the execution module (340)) may display on the display (230) a user query, a first answer corresponding to a first user query related to a first topic among the user queries, and a second answer corresponding to a second user query related to a second topic among the user queries.
[0114] In one embodiment, the processor (240) may determine whether a user input for selecting one of the first answer and the second answer is detected in operation 520. If a user input for selecting one of the first answer and the second answer is not detected (e.g., NO in operation 520), the processor (240) (e.g., execution module (340)) may branch to operation 515 and continue to display the user query, the first answer corresponding to the first user query related to the first topic among the user queries, and the second answer corresponding to the second user query related to the second topic among the user queries.
[0115] In one embodiment, when a user input for selecting one of the first answer and the second answer is detected (e.g., YES in operation 520), the processor (240) (e.g., the conversation topic management module (320) of FIG. 3) may, in operation 525, determine whether history information corresponding to a topic related to the selected answer is stored in a memory (e.g., the memory (220) of FIG. 2) (e.g., the conversation history database (350) of FIG. 3). If the history information corresponding to the topic related to the selected answer is stored in the memory (220) (e.g., the conversation history database (350)) (e.g., YES in operation 525), the processor (240) (e.g., the execution module (340)) may, in operation 530, display on the display (230) a user interface including history information related to the topic (e.g., at least one user query previously entered by the user related to the topic and at least one answer related to the at least one user query), a user query corresponding to the selected answer, and the selected answer. For example, if history information corresponding to a topic related to a selected answer is stored in the memory (220) (e.g., conversation history database (350)), the processor (240) (e.g., session management module (325) of FIG. 3) may open a pre-stored session related to the intent and / or topic of the user query, and display the opened session, including history information related to the topic (e.g., at least one user query previously entered by the user related to the topic and at least one answer related to the at least one user query), the user query corresponding to the selected answer, and the selected answer, on the display (230) as a user interface.
[0116] In one embodiment, if the history information corresponding to the topic related to the selected answer is not stored in the memory (220) (e.g., NO in operation 525), the processor (240) may, in operation 535, display a second user interface including the user query corresponding to the selected answer and the selected answer on the display (230). For example, if the history information corresponding to the topic related to the selected answer is not stored in the memory (220) (e.g., conversation history database (350)), the processor (240) (e.g., session management module (325)) may create a session related to the intent and / or topic of the user query, and display the created session including the user query corresponding to the selected answer and the selected answer on the display (230) as the second user interface.
[0117] In one embodiment, if the user query does not include multiple topics (e.g., NO in operation 510), the processor (240) (e.g., the execution module (340)) may, in operation 537, display a third answer related to the third topic of the user query on the display (230). According to one embodiment, the third topic may be the same as or different from the first topic and the second topic. For example, if the user query does not include multiple topics, the processor (240) may determine that the user query includes one topic (e.g., the third topic) and display a third answer related to the third topic of the user query on the display (230).
[0118] In one embodiment, the processor (240) may determine, in operation 539, whether a second user input for selecting a third answer is detected. If the second user input for selecting a third answer is not detected (e.g., NO in operation 539), the processor (240) (e.g., the execution module (340)) may branch to operation 537 and continue to display the user query and the third answer related to the third topic of the user query. If the second user input for selecting a third answer is detected (e.g., YES in operation 539), the processor (240) (e.g., the conversation topic management module (320)) may determine, in operation 540, whether history information related to the third topic of the user query is stored in the memory (220) (e.g., the conversation history database (350)). In one embodiment, if history information related to a third topic of the user query is stored in the memory (220) (e.g., conversation history database (350)) (e.g., YES in operation 540), the processor (240) may, in operation 545, display a third user interface including the history information related to the third topic, the user query, and the third answer corresponding to the user query on the display (230). For example, if history information related to the third topic of the user query is stored in the memory (220) (e.g., conversation history database (350)), the processor (240) (e.g., session management module (325)) may open a pre-stored session related to the third topic of the user query, and display the opened session, including the history information related to the third topic, the user query, and the third answer corresponding to the user query, as the third user interface on the display (230).
[0119] In one embodiment, if the history information related to the third subject of the user query is not stored in the memory (220) (e.g., NO in operation 540), the processor (240) may, in operation 550, display a fourth user interface including the user query and the third answer corresponding to the user query on the display (230). For example, if the history information related to the third subject of the user query is not stored in the memory (220) (e.g., conversation history database (350)), the processor (240) (e.g., session management module (325)) may create a session related to the third subject of the user query, include the user query and the third answer corresponding to the user query in the created session, and display the created session as the fourth user interface on the display (230).
[0120] FIG. 6 is a diagram illustrating a method for providing a user interface for a user query including one subject, according to one embodiment of the present disclosure.
[0121] Referring to Figure 6, reference number <610> As illustrated, a processor (e.g., processor (240) of FIG. 2) of an electronic device (e.g., electronic device (101) of FIG. 1) may receive a first user query (613) (e.g., “How is the weather today?”). The received first user query (613) may be displayed on a display (e.g., display (230) of FIG. 2).
[0122] In one embodiment, the processor (240) (e.g., the topic classification module (310) of FIG. 3) may verify the intent of the received first user query (613) and, based on the verified intent of the first user query (613), determine the first topic (e.g., weather) of the first user query (613). The processor (240) (e.g., the prompt generation module (330) of FIG. 3) may generate a first prompt to obtain a first answer (615) corresponding to the first user query (613). The processor (240) (e.g., the generative model (335) of FIG. 3) may generate the first answer (615) corresponding to the first user query (613) based on the first prompt. For example, the processor (240) (e.g., the generative model (335)) may retrieve a first prompt from the electronic device (101) and / or a server (e.g., the server (108) of FIG. 1) and generate the retrieved search result as a first answer (615) corresponding to the first user query (613). The processor (240) (e.g., the execution module (340) of FIG. 3) may display the first user query (613) and the first answer (615) corresponding to the first user query (613) on the display (230).
[0123] In one embodiment, after a first answer (615) corresponding to a first user query (613) is displayed, the processor (240) may receive a second user query (617) (e.g., “Tell me the news that people saw the most today.”). The received second user query (617) may be displayed on the display (230).
[0124] In one embodiment, the processor (240) (e.g., topic classification module (310)) can verify the intent of the received second user query (617) and, based on the verified intent of the second user query (617), determine a second topic (e.g., article) of the second user query (617). The processor (240) (e.g., prompt generation module (330)) can generate a second prompt to obtain a second answer (619) corresponding to the second user query (617). The processor (240) (e.g., generative model (335)) can generate the second answer (619) corresponding to the second user query (617) based on the second prompt. For example, the processor (240) (e.g., the generative model (335)) can retrieve the second prompt from the electronic device (101) and / or the server (108) and generate the retrieved search result as a second answer (619) corresponding to the second user query (617). The processor (240) (e.g., the execution module (340)) can display a first user interface (611) on the display (230) that includes, in addition to the first user query (613) and the first answer (615) corresponding to the first user query (613), a second answer (619) corresponding to the second user query (617).
[0125] In one embodiment, after a period of time has elapsed, the processor (240) may reference the <630> As illustrated, a third user query (633) (e.g., “How is the fine dust today?”) may be received. The received third user query (633) may be displayed on the display (230).
[0126] In one embodiment, the processor (240) (e.g., topic classification module (310)) can verify the intent of the received third user query (633) and, based on the verified intent of the third user query (633), determine the first topic (e.g., weather) of the third user query (633). The processor (240) (e.g., prompt generation module (330)) can generate a third prompt to obtain a third answer (635) corresponding to the third user query (633). The processor (240) (e.g., generative model (335)) can generate the third answer (635) corresponding to the third user query (633) based on the third prompt. For example, the processor (240) (e.g., the generative model (335)) may retrieve a third prompt from the electronic device (101) and / or a server (e.g., the server (108) of FIG. 1) and generate the retrieved search result as a third answer (635) corresponding to the third user query (633). The processor (240) (e.g., the execution module (340)) may display a second user interface (631) including the third user query (633) and the third answer (635) corresponding to the third user query (633) on the display (230).
[0127] In one embodiment, when a user input for selecting a third answer (635) corresponding to a third user query (633) is detected, the processor (240) may check whether history information corresponding to a first topic (e.g., weather) of the third user query (633) is stored in a memory (e.g., memory (220) of FIG. 2) (e.g., conversation history database (350) of FIG. 3). If history information corresponding to a first topic (e.g., weather) of the third user query (633) is stored in the memory (220) (e.g., conversation history database (350)), the processor (240) (e.g., execution module (340)) may, as indicated by reference numeral <650> As illustrated, a third user interface (651) including history information related to a first topic (e.g., a first user query (613) previously entered by a user in relation to the topic and a first answer (615) corresponding to the first user query (613)), a third user query (633) related to the first topic, and a third answer (635) corresponding to the third user query (633) related to the first topic may be displayed on the display (230). For example, if history information corresponding to a first topic (e.g., weather) of a third user query (633) is stored in the memory (220) (e.g., conversation history database (350)), the processor (240) (e.g., session management module (325) of FIG. 3) may open a pre-stored session related to the intention and / or topic of the third user query (633), and display the opened session, including history information related to the first topic (e.g., a first user query (613) previously input by a user related to the topic and a first answer (615) related to the first user query (613), a third user query (633), and a third answer (635) related to the third user query (633), on the display (230) as a third user interface (651).
[0128] FIG. 7 is a diagram illustrating a method for providing a user interface for a user query including multiple topics according to one embodiment of the present disclosure.
[0129] Referring to Fig. 7, reference number <710> As illustrated, a processor (e.g., processor (240) of FIG. 2) of an electronic device (e.g., electronic device (101) of FIG. 1) may receive a user query (713) (e.g., “How is the weather today? Is there a restaurant near here that I can have quick lunch?”). The received user query (713) may be displayed on a display (e.g., display (230) of FIG. 2).
[0130] In one embodiment, the processor (240) (e.g., the topic classification module (310) of FIG. 3) can verify the intent of the received user query (713) and determine the topic of the user query (713) based on the verified intent of the user query (713). In one embodiment, the processor (240) (e.g., the topic classification module (310) of FIG. 3) can verify whether the user query (713) includes multiple topics. For example, the processor (240) (e.g., the topic classification module (310)) can determine, based on the received user query (713), that the user query (713) includes multiple topics, for example, a first topic (e.g., weather) and a second topic (e.g., restaurants). The processor (240) (e.g., the prompt generation module (330) of FIG. 3) can generate a prompt for each topic when the user query (713) includes multiple topics. For example, the processor (240) (e.g., the prompt generation module (330)) may generate a first prompt to obtain a first answer (715) corresponding to a first user query (e.g., “How is the weather today?”) among the user queries (713) and a second prompt to obtain a second answer (717) corresponding to a second user query (e.g., “Is there a restaurant near here that I can have quick lunch?”).The processor (240) (e.g., the generative model (335) of FIG. 3) can retrieve the first prompt and the second prompt from the electronic device (101) and / or the server (e.g., the server (108) of FIG. 1), and generate the retrieved search results as a first answer (715) corresponding to a first user query (e.g., “How is the weather today?”) related to a first topic (e.g., weather) of the user query (713) and a second answer (717) corresponding to a second user query (e.g., “Is there a restaurant near here that I can have quick lunch?”) related to a second topic (e.g., restaurant).
[0131] In one embodiment, the processor (240) (e.g., the execution module (340) of FIG. 3) may display a user interface (711) on the display (230) that includes a user query (713), a first answer (715) corresponding to a first user query (e.g., “How is the weather today?”) related to a first topic (e.g., weather), and a second answer (717) corresponding to a second user query (e.g., “Is there a restaurant near here that I can have quick lunch?”) related to a second topic (e.g., restaurants). In one embodiment, the first answer (715) corresponding to the first user query (e.g., “How is the weather today?”) related to the first topic (e.g., weather) and the second answer (717) corresponding to the second user query (e.g., “Is there a restaurant near here that I can have quick lunch?”) related to the second topic (e.g., restaurants) may be displayed on the display (230) at least partially overlapping.
[0132] In one embodiment, when a user input (721) for selecting a first answer (715) among the first answer (715) and the second answer (717) is detected, the processor (240) (e.g., the conversation topic management module (320) of FIG. 3) may determine whether history information corresponding to a first topic (e.g., weather) related to the selected first answer (715) is stored in a memory (e.g., the memory (220) of FIG. 2) (e.g., the conversation history database (350) of FIG. 3). For example, the processor (240) (e.g., the conversation topic management module (320)) may determine, based on a deep learning model, whether history information corresponding to a first topic (e.g., weather) related to the selected first answer (715) is stored in the memory (220) (e.g., the conversation history database (350)).
[0133] In one embodiment, if history information corresponding to a first topic (e.g., weather) related to a selected first answer (715) is stored in the memory (220) (e.g., conversation history database (350)), the processor (240) (e.g., session management module (325) of FIG. 3) may, <750> As illustrated, a previously stored session related to a first topic (e.g., weather) may be opened. The processor (240) (e.g., session management module (325)) may display on the display (230) as a second user interface (751) the session related to the opened first topic (e.g., weather), including history information (755, 757) related to the first topic (e.g., weather), a first user query (761) related to the first topic (e.g., weather) (e.g., “How is the weather today?”) (e.g., the first user query (761) corresponding to the selected answer (715)), and a first answer (715) corresponding to the first user query (761) (e.g., “How is the weather today?”) (e.g., the selected answer (715)). In one embodiment, the history information (755, 757) related to the first topic (e.g., weather) may include at least one user query (755) previously entered by a user related to the first topic (e.g., weather) and at least one answer (757) related to the at least one user query (755).
[0134] FIG. 8 is a diagram illustrating a method for providing a user interface for a user query including multiple topics according to one embodiment of the present disclosure.
[0135] Referring to Fig. 8, reference number <810> As illustrated, a processor (e.g., processor (240) of FIG. 2) of an electronic device (e.g., electronic device (101) of FIG. 1) may receive a user query (811) (e.g., “Show me the information of BTS performance in Busan on September 11th and make reservations for the KTX to the Busan in the morning of the 11th.”). The received user query (811) may be displayed on a display (e.g., display (230) of FIG. 2).
[0136] In one embodiment, the processor (240) (e.g., the topic classification module (310) of FIG. 3) can verify the intent of the received user query (811) and determine the topic of the user query (811) based on the verified intent of the user query (811). In one embodiment, the processor (240) (e.g., the topic classification module (310) of FIG. 3) can verify whether the user query (811) includes multiple topics. For example, the processor (240) (e.g., the topic classification module (310)) can determine, based on the received user query (811), that the user query (811) includes multiple topics, for example, a first topic (e.g., performance / exhibition) and a second topic (e.g., transportation / reservation). The processor (240) (e.g., the prompt generation module (330) of FIG. 3) can generate a prompt for each topic when the user query (713) includes multiple topics. For example, the processor (240) (e.g., the prompt generation module (330)) may generate a first prompt to obtain a first answer corresponding to a first user query (e.g., “Show me the information of BTS performance in Busan on September 11th”) of the user query (811) and a second prompt to obtain a second answer corresponding to a second user query (e.g., “make reservations for the KTX to the Busan in the morning of the 11th”).The processor (240) (e.g., the generative model (335)) can retrieve the first prompt and the second prompt from the electronic device (101) and / or the server (e.g., the server (108) of FIG. 1), and generate the retrieved search results as a first answer corresponding to a first user query (e.g., “Show me the information of BTS performance in Busan on September 11th”) related to a first topic (e.g., performance / exhibition) and a second answer corresponding to a second user query (e.g., “make reservations for the KTX to the Busan in the morning of the 11th”) related to a second topic (e.g., transportation / reservation).
[0137] In one embodiment, the processor (240) (e.g., the execution module (340) of FIG. 3) has reference numeral <830> As illustrated, a first answer (831) corresponding to a first user query (e.g., “Show me the information of BTS performance in Busan on September 11th”) related to a first topic (e.g., performance / exhibition) and a second answer (833) corresponding to a second user query (e.g., “make reservations for the KTX to the Busan in the morning of the 11th”) related to a second topic (e.g., transportation / reservation) may be displayed on the display (230).
[0138] In one embodiment, a first answer (831) corresponding to a first user query (e.g., “Show me the information of BTS performance in Busan on September 11th”) related to a first topic (e.g., performance / exhibition) and a second answer (833) corresponding to a second user query (e.g., “make reservations for the KTX to the Busan in the morning of the 11th”) related to a second topic (e.g., transportation / reservation) may be displayed on the display (230) at least partially overlapping.
[0139] In one embodiment, the first answer (831) and the second answer (833) may be displayed on the display (230) based on a specified priority. For example, the processor (240) may preferentially display an answer requiring an additional action (or a next action) on the display (230). For example, among a first topic (e.g., performance / exhibition) and a second topic (e.g., transportation / reservation), the second answer (833) corresponding to a second user query (e.g., “make reservations for the KTX to the Busan in the morning of the 11th”) related to the second topic (e.g., transportation / reservation) requiring an additional action of making a reservation may be preferentially displayed on the display (230) over the first answer (831) (e.g., the second answer (833) may be displayed in a layer higher than the first answer (831).
[0140] In one embodiment, after displaying the first answer (831) and the second answer (833), if an input is detected to select an answer other than the answer (e.g., the first answer (831)) that was preferentially displayed within a specified time period (e.g., the second answer (833)), the processor (240) may store a topic related to the selected answer (e.g., the first answer (831)) in the memory (220), and when a user utterance related to a similar or identical topic is received thereafter, the selected answer (e.g., the first answer (831)) may be displayed on the display (230) with preference over the other answers.
[0141] In one embodiment, when a user input (835) for selecting a first answer (831) among the first answer (831) and the second answer (833) is detected, the processor (240) (e.g., the conversation topic management module (320) of FIG. 3) may check whether history information corresponding to a first topic (e.g., a performance / exhibition) related to the selected first answer (831) is stored in a memory (e.g., the memory (220) of FIG. 2) (e.g., the conversation history database (350) of FIG. 3). For example, the processor (240) (e.g., the conversation topic management module (320)) may check, based on a deep learning model, whether history information corresponding to a first topic (e.g., a performance / exhibition) related to the selected first answer (831) is stored in the memory (220) (e.g., the conversation history database (350)).
[0142] In one embodiment, if history information corresponding to a first topic (e.g., performance / exhibition) related to the selected first answer (831) is stored in the memory (220) (e.g., conversation history database (350)), reference number <850> As illustrated, the processor (240) (e.g., the session management module (325) of FIG. 3) may open a pre-stored session related to a first topic (e.g., a performance / exhibition). The processor (240) (e.g., the session management module (325)) may display, in the session related to the opened first topic (e.g., a performance / exhibition), history information (851, 853) related to the first topic (e.g., a performance / exhibition), a first user query (857) corresponding to the selected first answer (831) (e.g., “Show me the information of BTS performance in Busan on September 11th”), and the selected first answer (831). In one embodiment, the history information (851, 853) related to the first topic (e.g., performance / exhibition) may include at least one user query (851) previously entered by a user in relation to the first topic (e.g., performance / exhibition) and at least one answer (853) related to the at least one user query (851).
[0143] In another embodiment, when a user input (837) for selecting a second answer (833) among the first answer (831) and the second answer (833) is detected, the processor (240) (e.g., the conversation topic management module (320) of FIG. 3) may check whether history information corresponding to a second topic (e.g., transportation / reservation) related to the selected second answer (833) is stored in the memory (220) (e.g., the conversation history database (350)). For example, the processor (240) (e.g., the conversation topic management module (320)) may check whether history information corresponding to a second topic (e.g., transportation / reservation) related to the selected second answer (833) is stored in the memory (220) (e.g., the conversation history database (350)) based on a deep learning model. If the history information corresponding to the second topic (e.g., transportation / reservation) related to the selected second answer (833) is stored in the memory (220) (e.g., conversation history database (350)), the reference number <870> As illustrated, the processor (240) (e.g., the session management module (325)) may open a previously stored session related to a second topic (e.g., transportation / reservation). The processor (240) (e.g., the session management module (325)) may display, in the opened session related to the second topic (e.g., transportation / reservation), history information (871) related to the second topic (e.g., transportation / reservation), a second user query (873) corresponding to a selected second answer (833) (e.g., “make reservations for the KTX to the Busan in the morning of the 11th”), and the selected second answer (833). In one embodiment, the history information (871) related to the second topic (e.g., transportation / reservation) may include at least one user query previously entered by a user related to the second topic (e.g., transportation / reservation) and at least one answer related to the at least one user query.
[0144] Although the first and second answers are described as being displayed on the display (230) with at least a partial overlap in FIGS. 7 and 8 according to various embodiments, this is not limited thereto. For example, the processor (240) may display the first answer in a first area of the display (230) and the second answer in a second area of the display (230). In this regard, various embodiments will be described later in FIG. 9.
[0145] FIG. 9 is a diagram illustrating a method for providing a user interface for a user query including multiple topics according to one embodiment of the present disclosure.
[0146] Referring to FIG. 9, a processor (e.g., processor (240) of FIG. 2) of an electronic device (e.g., electronic device (101) of FIG. 1) may receive a user query (913) (e.g., “How is the weather today? Is there a restaurant near here that I can have quick lunch?”). The user query (913) may include voice data (e.g., user utterance) received via a microphone (e.g., input module (150) of FIG. 1) or text data received via a keypad. For example, the processor (240) may convert voice data (e.g., user utterance) into text data and display the converted text data on a display (e.g., display (230) of FIG. 2). As another example, the processor (240) may display text data input via a keypad on the display (230).
[0147] In one embodiment, the processor (240) (e.g., the topic classification module (310) of FIG. 3) can verify the intent of the received user query (913) and determine the topic of the user query (913) based on the verified intent of the user query (913). In one embodiment, the processor (240) (e.g., the topic classification module (310) of FIG. 3) can verify whether the user query (811) includes multiple topics. For example, the processor (240) (e.g., the topic classification module (310)) can determine, based on the received user query (913), that the user query (913) includes multiple topics, for example, a first topic (e.g., weather) and a second topic (e.g., restaurants). The processor (240) (e.g., the prompt generation module (330) of FIG. 3) can generate a prompt for each topic when the user query (913) includes multiple topics. For example, the processor (240) (e.g., the prompt generation module (330)) can generate a first prompt to obtain a first answer (917) corresponding to a first user query (e.g., “How is the weather today?”) of the user query (913) and a second prompt to obtain a second answer (915) corresponding to a second user query (e.g., “Is there a restaurant near here that I can have quick lunch?”).The processor (240) (e.g., the generative model (335) of FIG. 3) can retrieve the first prompt and the second prompt from the electronic device (101) and / or a server (e.g., the server (108) of FIG. 1), and generate the retrieved search results as a first answer (917) corresponding to a first user query (e.g., “How is the weather today?”) related to a first topic (e.g., weather) of the user query (913) and a second answer (915) corresponding to a second user query (e.g., “Is there a restaurant near here that I can have quick lunch?”) related to a second topic (e.g., restaurant).
[0148] In one embodiment, when the size of the display (230) exceeds a specified size or supports multi-window, the processor (240) may divide the display (230) into a plurality of regions. For example, the processor (240) (e.g., the execution module (340) of FIG. 3) may display a first user interface (910) including a first answer (917) corresponding to a first user query (e.g., “How is the weather today?”) related to a first subject (e.g., weather) of the user query (913) in a first region of the display (230), and may display a second user interface (920) including a second answer (915) corresponding to a second user query (e.g., “Is there a restaurant near here that I can have quick lunch?”) related to a second subject (e.g., restaurant) of the user query (913) in a second region of the display (230).
[0149] In one embodiment, the first answer (917) and the second answer (915) may be displayed on the display (230) based on a specified priority. For example, the processor (240) may display an answer requiring additional action (or a next action) in the upper area (or lower area) or the left area (or right area) of the multiple divided areas of the display (230), but is not limited thereto. For example, after displaying the first answer (917) and the second answer (915), if an input is detected to select an answer other than the answer displayed in the upper region (or lower region) or the left region (or right region) of the plurality of divided regions of the display (230) within a specified time (e.g., an answer displayed in the lower region (or upper region) or the right region (or left region) of the plurality of divided regions of the display (230), the processor (240) may store a topic related to the selected answer in the memory (220), and if a user utterance related to a similar or identical topic is received thereafter, the processor may display the selected answer in the upper region (or lower region) or the left region (or right region) of the plurality of divided regions of the display (230).
[0150] While various embodiments have been described in FIGS. 7 through 9 as displaying multiple responses corresponding to a user query containing multiple topics, the present invention is not limited thereto. For example, the processor (240) may provide multiple responses corresponding to a user query containing multiple topics through a single user interface. In this regard, various embodiments will be described in FIGS. 10 and 11 , which will be described later.
[0151] As described above with reference to FIGS. 4 to 9 according to various embodiments, if history information related to the subject of an input user query exists, the processor (240) can display the input user query and the corresponding answer to the user query together on a user interface including the history information. Accordingly, the user can view user queries on the same subject through the same user interface, thereby intuitively checking the history information of user queries on the same subject.
[0152] FIG. 10 is a flowchart illustrating a method for providing a user interface for a user query including multiple topics, according to one embodiment of the present disclosure.
[0153] According to one embodiment, operations 1005 and 1010 of FIG. 10 may be understood to be performed in a processor (e.g., processor (240) of FIG. 2) of an electronic device (e.g., electronic device (101) of FIG. 1).
[0154] FIG. 10 according to various embodiments may be an additional operation of operation 415 of FIG. 4 or operation 515 of FIG. 5a described above.
[0155] Referring to FIG. 10, the processor (240) may detect a second user input for displaying a fifth user interface including a user query related to a plurality of topics in operation 1005 while displaying the first and second answers. In one embodiment, the plurality of topics may be different topics. For example, even if a user query includes a plurality of different topics and history information related to one of the plurality of topics is stored in a memory (e.g., the memory (220) of FIG. 2) (e.g., the conversation history database (350) of FIG. 3), the user may want to display the user query related to the plurality of different topics and the plurality of answers corresponding to the user query through a single user interface. The second user input may include an input for displaying the user query and the plurality of answers corresponding to the user query through a single user interface, even if the user query includes a plurality of topics.
[0156] In one embodiment, the processor (240) may display a fifth user interface including a user query, a first answer, and a second answer on the display (230) in operation 1010. Based on the detection of a second user input, the fifth user interface including the user query, the first answer, and the second answer is displayed, thereby allowing the user to view multiple answers corresponding to the input user query through a single user interface (e.g., the fifth user interface).
[0157] FIG. 11 is a diagram illustrating a method for providing a user interface for a user query including multiple topics according to one embodiment of the present disclosure.
[0158] Referring to FIG. 11, a processor (e.g., processor (240) of FIG. 2) of an electronic device (e.g., electronic device (101) of FIG. 1) is indicated by reference numeral <1110> As illustrated, a user query (1113) (e.g., “How is the weather today? Is there a restaurant near here that I can have quick lunch?”) can be received. The user query (1113) can include voice data (e.g., user utterance) received through a microphone (e.g., input module (150) of FIG. 1) or text data received through a keypad. For example, the processor (240) can convert voice data (e.g., user utterance) into text data and display the converted text data on a display (e.g., display (230) of FIG. 2). As another example, the processor (240) can display text data input through a keypad on the display (230).
[0159] In one embodiment, the processor (240) (e.g., the topic classification module (310) of FIG. 3) can verify the intent of the received user query (1113) and, based on the verified intent of the user query (1113), determine the topic of the user query (1113). In one embodiment, the processor (240) (e.g., the topic classification module (310) of FIG. 3) can verify whether the user query (1113) includes multiple topics. For example, the processor (240) (e.g., the topic classification module (310)) can determine, based on the received user query (1113), that the user query (1113) includes multiple topics, for example, a first topic (e.g., weather) and a second topic (e.g., restaurant). The processor (240) (e.g., the prompt generation module (330) of FIG. 3) may generate a first prompt to obtain a first answer (1115) corresponding to a first user query (e.g., “How is the weather today?”) and a second prompt to obtain a second answer (1117) corresponding to a second user query (e.g., “Is there a restaurant near here that I can have quick lunch?”) when the user query (1113) includes multiple topics. The processor (240) (e.g., the generative model (335) of FIG. 3) can retrieve the first prompt and the second prompt from the electronic device (101) and / or the server (e.g., the server (108) of FIG. 1), and generate the retrieved search results as a first answer (1115) corresponding to a first user query (e.g., “How is the weather today?”) related to a first topic (e.g., weather) of the user query (1113) and a second answer (1117) corresponding to a second user query (e.g., “Is there a restaurant near here that I can have quick lunch?”) related to a second topic (e.g., restaurant).
[0160] In one embodiment, the processor (240) (e.g., the execution module (340) of FIG. 3) may display a user interface (1111) on the display (230) that includes a user query (1113), a first answer (1115) corresponding to a first user query (e.g., “How is the weather today?”) related to a first topic (e.g., weather), and a second answer (1117) corresponding to a second user query (e.g., “Is there a restaurant near here that I can have quick lunch?”) related to a second topic (e.g., restaurants). In one embodiment, the first answer (1115) corresponding to the first user query (e.g., “How is the weather today?”) related to the first topic (e.g., weather) and the second answer (1117) corresponding to the second user query (e.g., “Is there a restaurant near here that I can have quick lunch?”) related to the second topic (e.g., restaurants) may be displayed on the display (230) at least partially overlapping.
[0161] In one embodiment, the processor (240) may detect a user input (1121) for displaying a user interface including a user query (1113) related to multiple topics. For example, the user input (1121) for displaying a user interface including a user query (1113) related to multiple topics may include an input for displaying the user query and multiple answers corresponding to the user query through a single user interface, even if the user query includes multiple different topics and history information related to one of the multiple topics is stored in a memory (e.g., the memory (220) of FIG. 2) (e.g., the conversation history database (350) of FIG. 3). For example, the user input (1121) may include an input for selecting an indicator (1119) (or an object, an item, a button) (e.g., a view in one window) for displaying answers corresponding to the user query through a single user interface.
[0162] In one embodiment, based on the detection of a user input (1121), the processor (240) may display a user interface (1151) on the display (230) that includes a user query (1113), a first answer (1115), and a second answer (1117). In this case, the processor (240) may display the first answer (1115) and the second answer (1117) so as to correspond to the order of the input user queries, for example, the order of the first user query and the second user query. For example, the processor (240) may display the first answer (1115) corresponding to the first user query (e.g., “How is the weather today?”) related to the first topic (e.g., weather), and then display the second answer (1117) corresponding to the second user query (e.g., “Is there a restaurant near here that I can have quick lunch?”) related to the second topic (e.g., restaurants). However, the present invention is not limited thereto.
[0163] FIG. 12 is a flowchart illustrating a method for displaying a list of multiple user interfaces according to one embodiment of the present disclosure.
[0164] According to one embodiment, operations 1205 and 1210 of FIG. 12 may be understood to be performed in a processor (e.g., processor (240) of FIG. 2) of an electronic device (e.g., electronic device (101) of FIG. 1).
[0165] Referring to FIG. 12, in operation 1205, the processor (240) may display a list of a plurality of user interfaces on a display (e.g., the display (230) of FIG. 2) based on detection of a third user input. The plurality of user interfaces may be related to a topic. However, the present invention is not limited thereto, and the plurality of user interfaces may also be related to a specific point in time at which at least one user query is received. In operation 1210, the processor (240) may display a list of user interfaces on the display (230) in a changed display mode based on detection of a fourth user input for changing the display mode of the list of the plurality of user interfaces. For example, the display mode of the list of the plurality of user interfaces may include a topic-based display mode, a time-based display mode, and a favorite-based display mode. However, the present invention is not limited thereto.
[0166] FIG. 13 and FIG. 14 are diagrams illustrating a method of displaying a list of multiple user interfaces according to one embodiment of the present disclosure.
[0167] Referring to FIG. 13, a processor (e.g., processor (240) of FIG. 2) of an electronic device (e.g., electronic device (101) of FIG. 1) can display a list of multiple user interfaces on a display (e.g., display (230) of FIG. 2). For example, the processor (240) may display a list of user interfaces, as indicated by reference numeral <1310> As shown in , a list of multiple user interfaces in subject order (e.g., subject A (1321), subject B (1323), subject C (1325), subject D (1327)) can be displayed on the display (230).
[0168] In one embodiment, the processor (240) may detect a user input for changing the display mode of a list of multiple user interfaces. The display mode of the list of multiple user interfaces may include, but is not limited to, a topic-based display mode, a time-based display mode, or a favorites-based display mode.
[0169] For example, based on detecting a user input (1333) selecting an object (1331) (or an item, indicator, button) (e.g., view by timeline) to change the display mode of a list of multiple user interfaces from a subject-based display mode to a time-based display mode, the processor (240) may reference the <1350> As shown in , a list of multiple user interfaces (e.g., Aug 8th (1361), Aug 19th (1363), Sep 1st (365), Sep 8th (1367)) in chronological order (or date order) can be displayed on the display (230).
[0170] Not limited thereto, the processor (240) detects a user input (not shown) for selecting an object (not shown) for changing the display mode of a list of multiple user interfaces from a subject-based display mode to a favorite-based display mode, and based on this, the processor (240) can display on the display (230) a list (1461) of multiple user interfaces set as favorites (e.g., subject A (1421), subject B (1423), subject C (1425)) and a list (1471) of multiple user interfaces not set as favorites (e.g., subject D (1427), subject E (1429), subject F (1431)).
[0171] FIG. 15 is a block diagram illustrating a generative artificial intelligence system according to one embodiment of the present disclosure.
[0172] Referring to FIG. 15, a generative artificial intelligence system (e.g., an intelligent server, server (108) of FIG. 1) according to one embodiment may include a user query / response interface (1510), knowledge repositories (1520), applications / service components (1530), an AI framework (1550), and / or a generative AI model (1570).
[0173] In one embodiment, the user query / response interface (1510) can receive a user query. The user query may be in the form of natural language, an image, and / or a video. In one embodiment, when transmitting a user query, context information may be transmitted together. The context information may include various additional information at the time the user query is received. For example, the context information may include information about the application currently being used by the user and / or information about the user's location. In one embodiment, the user query may also be in the form of a mixture of natural language, an image, sound, and context information. However, the user query may also be in a non-natural language form, such as selecting a menu.
[0174] In one embodiment, the user query / response interface (1510) may output results from the generative artificial intelligence system to the user. The output may be provided in natural language or in the form of specific content. However, this is not limited to this, and the output may also be provided in the form of an action requested by the user.
[0175] In one embodiment, the AI framework (1550) can receive a user query and coordinate and control each component necessary to perform the user intent based on the user query.
[0176] In one embodiment, the AI framework (1550) may include a prompt design component (1551), an application and plug-in management component (APIs / Plugins Management component) (1553), and / or an output modification component (1555) (or refiner component).
[0177] In one embodiment, a user query received at the user query / response interface (1510) may be transmitted to a prompt design component (1551). The prompt design component (1551) may be used to generate prompts suitable for inputting the user query into a large language model (LLM) or large multimodal models (LMM). The prompt design component (1551) may include an AI component that uses machine learning algorithms or neural networks to develop better prompts over time. The prompt design component (1551) may access a knowledge repository (1520) (or knowledge component) containing user preference data, a prompt library, and prompt examples to generate prompts and pass them to the large language model (LLM) or large multimodal models (LMM).
[0178] In one embodiment, the application and plugin management component (1553) may communicate with external information when a request for additional information is made when a user query is passed as input to the generative AI model (1570). The application and plugin management component (1553) may establish a channel for communicating with the outside of the AI interface through an application programming interface (API) and may enable access to various data sources through the established channel. In addition, the application and plugin management component (1553) may request an action to ultimately perform the user query through the API if the application or service needs to perform the action, rather than an intermediate result. Information obtained from the outside may be passed as input to the generative AI model (1570) along with the user query.
[0179] In one embodiment, the output modification component (1555) can fine-tune the output from the generative AI model (1570). For example, the output modification component (1555) can verify whether the content generated through the large-scale language model (LLM) and / or the large-scale multi-modal model (LMM) is irrelevant, biased, and / or harmful. In addition, the output modification component (1555) can determine to what extent the content matches the user's desired result and, if necessary, perform additional processing. The output modification component (1555) can additionally configure and provide hints to the user to avoid undesired output.
[0180] In one embodiment, a generative AI model (1570) may generally refer to an artificial intelligence neural network that creates new types of data based on user query information. Representative examples of image generating models include a generative adversarial network (GAN) and a variational auto encoder (VAE), and recently, examples of generative models include a Diffusion-based generative model using a VAE and a Transformer structure. In addition, a language generating model is a model trained to statistically output the most appropriate output value based on an input value, and representative examples include models such as CHAT-GPT 3 and CHAT-GPT 4. In addition, a language generating model may include large multimodal models (LMMs) (e.g., a generative model (335) of FIG. 3) that can recognize various types of data input, such as text, images, and / or speech, and generate new data corresponding thereto.
[0181] A method for providing a user interface for a user query based on a category according to one embodiment of the present disclosure may include an operation of receiving a user query. A method for providing a user interface for a user query based on a category according to one embodiment may include an operation of checking whether a received user query includes a plurality of topics. If a user query includes a plurality of topics, a method for providing a user interface for a user query based on a category according to one embodiment may include an operation of displaying, on a display (230), the user query, a first answer corresponding to a first user query related to a first topic among the user queries, and a second answer corresponding to a second user query related to a second topic among the user queries. A method for providing a user interface for a user query based on a category according to one embodiment may include an operation of checking, when a user input for selecting one of the first answer and the second answer is detected, whether history information corresponding to a topic related to the selected answer is stored in a memory (220). A method for providing a user interface for a user query based on a category according to one embodiment may include, when history information corresponding to a topic related to a selected answer is stored in a memory (220), an operation of displaying a user interface including history information, a user query corresponding to the selected answer, and the selected answer on a display (230).
[0182] The operation of determining whether a received user query includes multiple topics according to one embodiment may include determining the intent of the received user query. The operation of determining whether a received user query includes multiple topics according to one embodiment may include determining whether the user query includes multiple topics based on the intent of the determined user query.
[0183] A method for providing a user interface for a user query based on a category according to one embodiment may include an operation of displaying a second user interface including a user query corresponding to a selected answer and the selected answer on a display (230) when history information corresponding to a topic related to a selected answer is not stored in a memory (220).
[0184] A method for providing a user interface for a user query based on a category according to one embodiment may include, when the user query includes one topic, an operation of checking whether history information related to a third topic of the user query is stored in a memory (220). A method for providing a user interface for a user query based on a category according to one embodiment may include, when the history information related to the third topic is stored in the memory (220), an operation of displaying a third user interface including history information related to the third topic, the user query, and a third answer corresponding to the user query on a display (230).
[0185] A method for providing a user interface for a user query based on a category according to one embodiment may include an operation of displaying a fourth user interface including the user query and a third answer corresponding to the user query on a display (230) when history information related to a third topic of the user query is not stored in the memory (220).
[0186] The operation of checking whether history information corresponding to a topic related to a selected answer according to one embodiment is stored in the memory (220) may include an operation of checking whether history information corresponding to a topic related to the selected answer is stored in the memory (220) based on a deep learning model. The deep learning model according to one embodiment may include one of an embedding vector generation model, a latent dirichlet allocation (LDA) model, or a word2Vec model.
[0187] A method for providing a user interface for a user query based on a category according to one embodiment may include an operation of determining where a first answer and a second answer are displayed on a display (230) based on a specified priority.
[0188] A method for providing a user interface for a user query based on a category according to one embodiment may include an operation of detecting a second user input for displaying a fifth user interface including a user query related to a plurality of topics while displaying a user query, a first answer corresponding to a first user query related to a first topic among the user queries, and a second answer corresponding to a second user query related to a second topic among the user queries on a display (230). A method for providing a user interface for a user query based on a category according to one embodiment may include an operation of displaying a fifth user interface including the user query, the first answer, and the second answer on the display (230) based on detection of a second user input.
[0189] A method for providing a user interface for a user query based on a category according to one embodiment may include an operation of displaying a list of a plurality of user interfaces related to a plurality of topics corresponding to a plurality of user queries on a display (230) based on detection of a third user input. The list of the plurality of user interfaces according to one embodiment may be displayed in a list based on a topic or in a list chronologically.
[0190] A non-transitory computer-readable recording medium storing instructions that, when executed by a processor (240) of an electronic device (101) according to one embodiment of the present disclosure, cause the processor (240) to perform operations, may cause the processor (240) to perform an operation of receiving a user query. A non-transitory computer-readable recording medium storing instructions that, when executed by a processor (240) of an electronic device (101) according to one embodiment, cause the processor (240) to perform operations, may cause the processor (240) to perform an operation of checking whether a received user query includes a plurality of topics. A non-transitory computer-readable recording medium storing instructions that, when executed by a processor (240) of an electronic device (101) according to one embodiment, cause the processor (240) to perform operations, may cause the processor (240) to perform an operation of displaying, on a display (230), a user query, a first answer corresponding to a first user query related to a first topic among the user queries, and a second answer corresponding to a second user query related to a second topic among the user queries, when a user query includes a plurality of topics. A non-transitory computer-readable recording medium storing instructions that, when executed by a processor (240) of an electronic device (101) according to one embodiment, cause the processor (240) to perform operations, may cause the processor (240) to perform an operation of checking, when a user input for selecting one of the first answer and the second answer is detected, whether history information corresponding to a topic related to the selected answer is stored in the memory (220).A non-transitory computer-readable recording medium storing instructions that, when executed by a processor (240) of an electronic device (101) according to one embodiment, cause the processor (240) to perform operations, wherein, when history information corresponding to a topic related to a selected answer is stored in a memory (220), the storage medium can cause the processor (240) to perform operations of displaying, on a display (230), history information, a user query corresponding to the selected answer, and a user interface including the selected answer.
[0191] 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.
[0192] 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 component (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.
[0193] 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).
[0194] Various embodiments of the present document may be implemented as software (e.g., a program (140)) including one or more instructions stored in a storage medium (e.g., an internal memory (136) or an external memory (138)) readable by a machine (e.g., an electronic device (101)). For example, a processor (e.g., a processor (120)) of the machine (e.g., an electronic device (101)) 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.
[0195] According to one embodiment, the method according to various embodiments disclosed in this document may be provided as a computer program product. The computer program product may be traded between sellers and buyers as a product. The computer program product may be distributed in the form of a device-readable storage medium (e.g., compact disc read-only memory (CD-ROM)) or may be provided through an application store (e.g., Play Store). TM ) or directly between two user devices (e.g., smart phones), online distribution (e.g., downloading or uploading). In the case of online distribution, at least a portion of the computer program product may be at least temporarily stored or temporarily created in a machine-readable storage medium, such as the memory of a manufacturer's server, an application store's server, or an intermediary server.
[0196] 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 placed 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.
Claims
1. In an electronic device (101), Display (230); Memory (220) for storing instructions; and Contains a processor (240), The above instructions, when executed by the processor (240), cause the electronic device (101) to: Receive user queries, Check whether the received user query contains multiple topics, If the user query includes the plurality of topics, the user query, a first answer corresponding to a first user query related to a first topic among the user queries, and a second answer corresponding to a second user query related to a second topic among the user queries are displayed on the display (230). When a user input for selecting one of the first and second answers is detected, it is checked whether history information corresponding to the topic related to the selected answer is stored in the memory (220), and An electronic device that displays, on the display (230), a user interface including the history information, a user query corresponding to the selected answer, and the selected answer, when history information corresponding to a topic related to the selected answer is stored in the memory (220).
2. In paragraph 1, The above instructions, when executed by the processor (240), cause the electronic device (101) to: Verify the intent of the user query received above, and An electronic device that determines whether the user query includes the plurality of topics based on the intent of the identified user query.
3. In paragraph 1 or 2, The above instructions, when executed by the processor (240), cause the electronic device (101) to: An electronic device that causes a user query corresponding to the selected answer and a second user interface including the selected answer to be displayed on the display (230) if history information corresponding to a topic related to the selected answer is not stored in the memory (220).
4. In any one of paragraphs 1 to 3, The above instructions, when executed by the processor (240), cause the electronic device (101) to: If the above user query includes one topic, it is checked whether history information related to a third topic of the above user query is stored in the memory (220), If history information related to the third subject is stored in the memory (220), a third user interface including history information related to the third subject, the user query, and a third answer corresponding to the user query is displayed on the display (230), and An electronic device that causes a fourth user interface including the user query and a third answer corresponding to the user query to be displayed on the display (230) when history information related to the third topic of the user query is not stored in the memory (220).
5. In any one of paragraphs 1 to 4, The above instructions, when executed by the processor (240), cause the electronic device (101) to: Based on the deep learning model, it is checked whether the history information corresponding to the topic related to the selected answer is stored in the memory (220). An electronic device wherein the deep learning model comprises one of an embedding vector generation model, a latent dirichlet allocation (LDA) model, or a word2Vec model.
6. In any one of paragraphs 1 to 5, The above instructions, when executed by the processor (240), cause the electronic device (101) to: The above first answer and the above second answer are displayed on the display (230) so as to overlap at least partly, or An electronic device that displays a first answer corresponding to a first user query related to the first subject in a first area of the display (230), and displays a second answer corresponding to a second user query related to the second subject in a second area of the display (230).
7. In paragraph 6, The above instructions, when executed by the processor (240), cause the electronic device (101) to: An electronic device that determines where the first answer and the second answer are displayed on the display (230) based on a specified priority.
8. In any one of paragraphs 1 to 7, The above instructions, when executed by the processor (240), cause the electronic device (101) to: While displaying the user query, the first answer corresponding to the first user query related to the first topic among the user queries, and the second answer corresponding to the second user query related to the second topic among the user queries on the display (230), detecting a second user input for displaying a fifth user interface including the user query related to the plurality of topics, and An electronic device that causes a fifth user interface including the user query, the first answer, and the second answer to be displayed on the display (230) based on the detection of the second user input.
9. In any one of paragraphs 1 to 8, The above memory (220) stores a plurality of user interfaces related to a plurality of topics corresponding to a plurality of user queries, The above instructions, when executed by the processor (240), cause the electronic device (101) to: Based on the detection of a third user input, a list of the plurality of user interfaces is displayed on the display (230). An electronic device in which a list of the above plurality of user interfaces is displayed, listed by topic or listed in chronological order.
10. A method for providing a user interface for a user query based on a category, Action to receive user queries; An action for checking whether the received user query contains multiple topics; When the user query includes the plurality of topics, an operation of displaying on a display (230) the user query, a first answer corresponding to a first user query related to a first topic among the user queries, and a second answer corresponding to a second user query related to a second topic among the user queries; When a user input for selecting one of the first and second answers is detected, an operation for checking whether history information corresponding to a topic related to the selected answer is stored in the memory (220); and A method comprising: displaying, on the display (230), a user interface including the history information, a user query corresponding to the selected answer, and the selected answer, if history information corresponding to a topic related to the selected answer is stored in the memory (220).
11. In Article 10, A method further comprising the action of displaying a user query corresponding to the selected answer and a second user interface including the selected answer on the display (230) if the history information corresponding to the topic related to the selected answer is not stored in the memory (220).
12. In clause 10 or 11, If the above user query includes one topic, an operation of checking whether history information related to a third topic of the above user query is stored in the memory (220); When history information related to the third subject is stored in the memory (220), an operation of displaying a third user interface including history information related to the third subject, the user query, and a third answer corresponding to the user query on the display (230); and A method further comprising the action of displaying a fourth user interface including the user query and a third answer corresponding to the user query on the display (230) if history information related to the third topic of the user query is not stored in the memory (220).
13. In any one of paragraphs 10 to 12, An operation of detecting a second user input for displaying a fifth user interface including the user query related to the plurality of topics, while displaying on the display (230) the user query, a first answer corresponding to the first user query related to the first topic among the user queries, and a second answer corresponding to the second user query related to the second topic among the user queries; and An operation of displaying a fifth user interface including the user query, the first answer, and the second answer on the display (230) based on the detection of the second user input; Further comprising an action of displaying on the display (230) a list of a plurality of user interfaces related to a plurality of topics corresponding to a plurality of user queries, based on the detection of a third user input; A method in which the list of the above multiple user interfaces is displayed by listing them based on topics or by listing them in chronological order.
14. In an electronic device (101), Display (230); Memory (220) for storing instructions; and Contains a processor (240), The above instructions, when executed by the processor (240), cause the electronic device (101) to: Receive user queries, Check the subject of the user query received above, If the subject of the above user query is one, the user query and the answer corresponding to the user query are displayed on the display (230). When a user input for selecting the above answer is detected, it is checked whether history information corresponding to the topic related to the selected answer is stored in the memory (220), and An electronic device that displays a user interface including history information related to a subject of the user query, the user query, and an answer corresponding to the user query on the display (230) when history information corresponding to a subject related to the selected answer is stored in the memory (220).
15. A non-transitory computer-readable medium storing instructions that, when executed by a processor (240) of an electronic device (101), cause the processor (240) to perform operations, Action to receive user queries; An action for checking whether the received user query contains multiple topics; When the user query includes the plurality of topics, an operation of displaying on a display (230) the user query, a first answer corresponding to a first user query related to a first topic among the user queries, and a second answer corresponding to a second user query related to a second topic among the user queries; When a user input for selecting one of the first and second answers is detected, an operation for checking whether history information corresponding to a topic related to the selected answer is stored in the memory (220); and A computer-readable recording medium that causes an operation to be executed to display, on the display (230), a user interface including the history information, a user query corresponding to the selected answer, and the selected answer, when history information corresponding to a topic related to the selected answer is stored in the memory (220).
Citation Information
Patent Citations
Search result display method and device, equipment and medium
CN113486252A
Chat management method, chat system, future intent prediction server divice, answer generation server device, and program
JP2020181336A
Intelligence provision methods
JP2022166258A
Processing search queries and generating a search result page including search object related information
US20160335359A1
KR20190109614A