A method, computer device, and computer program that provide personalized interactions through integration with external systems.
By integrating AI agents with external systems to update user memory, the solution addresses the limitation of past conversation consideration, enabling personalized and optimized dialogues.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-09-04
- Publication Date
- 2026-03-18
AI Technical Summary
Existing AI agents lack the ability to consider past conversations with users, requiring users to repeat information and take proactive actions due to the agents' inability to account for their situation, leading to inconvenience.
Integrate an AI agent with external systems to update user memory information, allowing personalized dialogues by linking with third-party services to store and generate dialogues based on user context and past interactions.
Enables personalized and natural dialogues tailored to the user's recent state and circumstances, optimizing interactions by incorporating external information to maintain up-to-date user profiles.
Smart Images

Figure 2026049696000001_ABST
Abstract
Description
Technical Field
[0001] The following description relates to a technology for providing an interactive service based on an AI (Artificial Intelligence) agent for checking the health status of a user.
Background Art
[0002] The dictionary meaning of artificial intelligence can be said to be a technology that realizes human learning ability, reasoning ability, perception ability, natural language understanding ability, etc. through computer programs. Such artificial intelligence has developed by leaps and bounds with deep learning.
[0003] In particular, with the development of artificial intelligence, various language models have been developed. Such language models not only recognize text and understand its meaning, but also extract information from data containing a large amount of text such as documents, classify it, and even reach the level of generating text.
[0004] Such language models are actively utilized in various fields. For example, search services, document creation (such as resume creation, report creation, post creation, etc.), free talk for various categories, data parsing from given text (such as data summarization, classification, etc.), provision of specialized knowledge, programming, conversion of given text into an appropriate style, etc. There are various fields that are executed based on text.
[0005] Recently, agents that provide an interactive function are being actively used to provide services to users in various fields such as shopping, search, healthcare, and customer support services.
[0006] However, such agents could only consider the content of the conversation with the user in the current dialogue session, and there were limitations to their ability to consider past conversations between the agent and the user. As a result, users had to repeat their information in each different dialogue session with the agent, and had to take proactive actions such as correcting what the agent said without considering the user's situation, which caused inconvenience for the user. [Overview of the project] [Problems that the invention aims to solve]
[0007] Through integration with external systems, third parties (3 rd Based on the information provided by the party service, it is possible to generate a dialogue to check the user's health status.
[0008] Personalized conversations can be generated not only through direct interaction with the user, but also by updating the user's memory information using information injected from external systems. [Means for solving the problem]
[0009] A method for providing interaction for a computer device including at least one processor, wherein at least one processor, in conjunction with an external system, enables interaction with a third party (3 rd The present invention provides a dialogue provision method that includes the steps of: receiving external information provided in relation to a user by a party service; storing stored information about the user based on the external information using at least one processor; generating agent utterances for interaction with the user using at least one processor and at least one processor; and performing a dialogue with the user by providing the agent utterances to the user through a dialogue session between the agent and the user using at least one processor.
[0010] According to one embodiment, the receiving step may include a step that interacts with an external system by making an API (Application Programming Interface) call.
[0011] In another embodiment, the receiving step may include receiving external information in conjunction with other applications installed on the user's electronic device or IoT devices linked to the electronic device.
[0012] In another embodiment, the receiving step may include receiving the registered information as external information if the administrator of the AI agent infrastructure dialogue service provided by the computer device has registered information indicating the user's state or status.
[0013] In another embodiment, the storage step may include a step of updating the stored information to the latest information by combining existing information and new information obtained from external sources.
[0014] In another embodiment, the update step may include updating the stored information by any one of the following operations: a first operation (PASS) which maintains the existing information and does not store the new information; a second operation (APPEND) which maintains the existing information and stores the new information; a third operation (REPLACE) which deletes the existing information and stores the new information; and a fourth operation (DELETE) which deletes the existing information and does not store the new information.
[0015] In another embodiment, the step of generating an agent's utterance may involve generating the agent's utterance by utilizing one of several sentences that constitute the memory information based on the context of the dialogue session.
[0016] In another embodiment, the dialogue provision method may further include a step of updating stored information based on the dialogue of a previous dialogue session of the dialogue session using at least one processor.
[0017] In another embodiment, the updating step may involve updating the memory information using a summary of the user's utterances from a previous dialogue session.
[0018] In another embodiment, the updating step may include, when the previous dialogue session has ended, summarizing in sentence form any specific user utterances from the dialogue of the previous dialogue session that belong to a predetermined category.
[0019] This provides a computer program that causes a computer device to execute a method for providing dialogue.
[0020] The present invention provides a computer device that includes at least one processor implemented to execute instructions readable by the computer device, the computer device having at least one processor that processes the following: receiving external information provided by a third-party service in relation to a user in conjunction with an external system; storing stored information about the user based on the external information; using the stored information to generate agent utterances for interaction with the user; and performing interaction with the user by providing the agent utterances to the user through a dialogue session between the agent and the user. [Effects of the Invention]
[0021] According to embodiments of the present invention, when generating a dialogue to check the user's health status, by linking with an external system and updating the user's memory information using information provided by a third-party service, a personalized dialogue can be generated, thereby enabling an optimal and natural dialogue that is suited to the user's recent state and circumstances. [Brief explanation of the drawing]
[0022] [Figure 1] This diagram shows an example of a network environment in one embodiment of the present invention. [Figure 2]A block diagram showing an example of a computer device according to an embodiment of the present invention. [Figure 3] A block diagram showing an example of an interaction providing device according to an embodiment of the present invention. [Figure 4] A conceptual diagram for explaining an interaction service of an AI agent-based platform according to an embodiment of the present invention. [Figure 5] A conceptual diagram for explaining an interaction service of an AI agent-based platform according to an embodiment of the present invention. [Figure 6] A conceptual diagram for explaining an interaction service of an AI agent-based platform according to an embodiment of the present invention. [Figure 7] A conceptual diagram for explaining an interaction service of an AI agent-based platform according to an embodiment of the present invention. [Figure 8] A conceptual diagram for explaining an interaction service of an AI agent-based platform according to an embodiment of the present invention. [Figure 9] A conceptual diagram for explaining an interaction service of an AI agent-based platform according to an embodiment of the present invention. [Figure 10] A conceptual diagram for explaining an interaction service of an AI agent-based platform according to an embodiment of the present invention. [Figure 11] A conceptual diagram for explaining an interaction service by linking with an external system according to an embodiment of the present invention. [Figure 12] A conceptual diagram for explaining an interaction service by linking with an external system according to an embodiment of the present invention. [Figure 13] A diagram showing an example of a personalized interaction by linking with an external system according to an embodiment of the present invention. [Figure 14] A diagram showing an example of a personalized interaction by linking with an external system according to an embodiment of the present invention. [Figure 15] A diagram showing an example of a personalized interaction by linking with an external system according to an embodiment of the present invention. [Figure 16]This figure shows an example of personalized dialogue through external system integration in one embodiment of the present invention. [Figure 17] This figure shows an example of personalized dialogue through external system integration in one embodiment of the present invention. [Figure 18] This figure shows an example of personalized dialogue through external system integration in one embodiment of the present invention. [Modes for carrying out the invention]
[0023] Embodiments of the present invention will be described in detail below with reference to the accompanying drawings.
[0024] Embodiments of the present invention relate to a technology that provides an AI agent-based conversational service for checking a user's health status.
[0025] Embodiments including those specifically disclosed herein can provide personalized conversations tailored to the user's recent state and circumstances by linking with an external system and generating conversations to check the user's health status based on information provided by a third-party service.
[0026] An interactive device according to an embodiment of the present invention may be implemented by at least one computer device, and an interactive method according to an embodiment of the present invention may be executed by at least one computer device included in the interactive device. In this case, a computer program according to an embodiment of the present invention may be installed and executed in the computer device, and the computer device may execute the interactive method according to an embodiment of the present invention in accordance with the control of the executed computer program. The above-described computer program may be combined with the computer device and recorded on a computer-readable recording medium in order to have the computer execute the interactive method.
[0027] Figure 1 is a diagram showing an example of a network environment in one embodiment of the present invention. The network environment in Figure 1 shows an example that includes a plurality of electronic devices 110, 120, 130, 140, a plurality of servers 150, 160, and a network 170. Figure 1 is merely an example for the purpose of explaining the invention, and the number of electronic devices and servers is not limited to that shown in Figure 1. Furthermore, the network environment in Figure 1 is merely an example for the purpose of explaining an environment applicable to this embodiment, and the environment applicable to this embodiment is not limited to the network environment in Figure 1.
[0028] The multiple electronic devices 110, 120, 130, and 140 may be fixed terminals or mobile terminals implemented by computer devices. Examples of the multiple electronic devices 110, 120, 130, and 140 include smartphones, mobile phones, navigation systems, personal computers (PCs), notebook PCs, digital broadcasting terminals, PDAs (Personal Digital Assistants), PMPs (Portable Multimedia Players), and tablets. As an example, Figure 1 shows a smartphone as an example of electronic device 110, but in embodiments of the present invention, electronic device 110 may mean one of a variety of physical computer devices that can communicate with other electronic devices 120, 130, 140 and / or servers 150, 160 via the network 170 using substantially wireless or wired communication methods.
[0029] The communication method is not limited, and may include not only communication methods that utilize communication networks that can be included in network 170 (for example, mobile communication networks, wired internet, wireless internet, broadcasting networks), but also short-range wireless communication between devices. For example, network 170 may include one or more arbitrary networks such as PAN (personal area network), LAN (local area network), CAN (campus area network), MAN (metropolitan area network), WAN (wide area network), BBN (broadband network), and the Internet. Furthermore, network 170 may include, but is not limited to, one or more network topologies, including bus networks, star networks, ring networks, mesh networks, star-bus networks, tree or hierarchical networks.
[0030] Servers 150 and 160 may each be implemented by one or more computer devices that communicate with multiple electronic devices 110, 120, 130, and 140 via the network 170 to provide commands, code, files, content, services, etc. For example, server 150 may be a system that provides services (for example, a conversational service for an AI agent platform) to multiple electronic devices 110, 120, 130, and 140 connected via the network 170.
[0031] Figure 2 is a block diagram showing an example of a computer device in one embodiment of the present invention. Each of the aforementioned electronic devices 110, 120, 130, and 140, as well as each of the servers 150 and 160, may be implemented by the computer device 200 shown in Figure 2.
[0032] Such a computer device 200 may include a memory 210, a processor 220, a communication interface 230, and an input / output interface 240, as shown in Figure 2. The memory 210 is a computer-readable recording medium and may include RAM (random access memory), ROM (read-only memory), and a permanent mass storage device such as a disk drive. Here, the permanent mass storage device such as ROM and a disk drive may be included in the computer device 200 as a separate permanent storage device distinct from the memory 210. The memory 210 may also store an operating system and at least one program code. Such software components may be loaded into the memory 210 from a computer-readable recording medium separate from the memory 210. Such a separate computer-readable recording medium may include a floppy disk drive, a disk, a tape, a DVD / CD-ROM drive, a memory card, and other computer-readable recording media. In other embodiments, the software components may be loaded into the memory 210 through a communication interface 230 which is not a computer-readable recording medium. For example, software components may be loaded into the memory 210 of the computer device 200 based on a computer program installed by a file received via the network 170.
[0033] The processor 220 may be configured to process computer program instructions by performing basic arithmetic, logic, and input / output operations. Instructions may be provided to the processor 220 by memory 210 or a communication interface 230. For example, the processor 220 may be configured to execute instructions received according to program code stored in a recording device such as memory 210.
[0034] The communication interface 230 may provide a function for the computer device 200 to communicate with other devices (for example, the recording device described above) via the network 170. For example, requests, instructions, data, files, etc., generated by the processor 220 of the computer device 200 according to program code recorded in a recording device such as memory 210 may be transmitted to other devices via the network 170 under the control of the communication interface 230. Conversely, signals, instructions, data, files, etc., from other devices may be received by the computer device 200 via the network 170 through the communication interface 230 of the computer device 200. Signals, instructions, data, etc., received via the communication interface 230 may be transmitted to the processor 220 or memory 210, and files, etc., may be recorded on a recording medium (the persistent recording device described above) that the computer device 200 may further include.
[0035] The input / output interface 240 may be a means for interface with the input / output device 250. For example, the input device may include a microphone, keyboard, or mouse, and the output device may include a display or speaker. In another example, the input / output interface 240 may be a means for interface with a device that integrates input and output functions into one, such as a touchscreen. The input / output device 250 may consist of the computer device 200 and one other device.
[0036] In other embodiments, the computer device 200 may include fewer or more components than those shown in Figure 2. However, it is not necessary to explicitly show most of the conventional components in the figure. For example, the computer device 200 may be implemented to include at least some of the input / output devices 250 described above, and may further include other components such as transceivers and databases.
[0037] The following describes specific embodiments of methods and devices for providing personalized interactions through integration with external systems.
[0038] AI agent-based conversational services allow AI agents to check on a user's health status through natural conversation via telephone or messenger.
[0039] The AI agent-based dialogue service may summarize the content of the previous session and store it as memory information about the user once the conversation with the user has ended, and provides a "memory dialogue" function that generates a conversation in the next session based on the memory information about the user.
[0040] AI agent-based dialogue services generate dialogues based on remembered information about the user. However, if the user does not mention a specific topic, such as their own state or situation, during their dialogue with the AI agent, the AI agent is unable to remember the user's information.
[0041] In this embodiment, even if the user does not mention their own state or situation during interaction with the AI agent, the memory information necessary for "memory dialogue" can be updated using information from an external system through integration with that system. Memory information about the user can be artificially injected not only through direct interaction between the AI agent and the user, but also from compatible systems.
[0042] The computer device 200 according to this embodiment may provide AI agent-based conversational services to a client by connecting to a dedicated application installed on the client or to a web / mobile site associated with the computer device 200. The computer device 200 may be configured with a computer-implemented conversational service provider. For example, the conversational service provider may be implemented as an independently operating program, or it may be implemented in an in-app form for a specific application so that it can operate on that specific application.
[0043] The processor 220 of the computer device 200 may be implemented with components for performing the following interaction provision method. Depending on the embodiment, the components of the processor 220 may be selectively included in or excluded from the processor 220. Also, depending on the embodiment, the components of the processor 220 may be separated or merged for the expression of the functions of the processor 220.
[0044] Such a processor 220 and its components may control the computer device 200 to perform steps included in the following interaction provision method. For example, the processor 220 and its components may be implemented to execute instructions from the operating system code contained in the memory 210 and the code of at least one program.
[0045] Here, the components of the processor 220 may be representations of different functions that are executed by the processor 220 in accordance with instructions provided by the program code recorded in the computer device 200.
[0046] The processor 220 may read necessary instructions from memory 210, which is loaded with instructions related to the control of the computer device 200. In this case, the instructions read may include instructions for controlling the processor 220 to perform the steps described below.
[0047] The steps included in the interaction delivery method described below may be performed in a different order than shown in the diagram, some steps may be omitted, or additional processes may be included.
[0048] The steps included in the interaction provision method may be performed on the server 150, and in some embodiments, at least part of the steps may be performed on the electronic device 110 which is a client.
[0049] Figure 3 is a block diagram showing an example of a dialogue provider in one embodiment of the present invention. The dialogue provider 300 may be implemented by the computer device 200 shown in Figure 2.
[0050] Referring to Figure 3, the agent may be included as a function of various types of electronic devices 20, or as a function of a website, application, or software that provides various services in which interaction takes place between the user and the agent, such as conversational services, care services, or customer service.
[0051] The format of the dialogue 30 between the user and the agent can be diverse, and may take the form of a voice call or chat, for example. For the sake of clarity, we will not distinguish whether the dialogue is voice or chat. Furthermore, regardless of the format of the dialogue, dialogue generated by the user will be referred to as "user utterances," and dialogue generated by the agent will be referred to as "agent utterances." On the other hand, the agent that engages in dialogue with the user may also be called a "bot" or "chatbot."
[0052] The dialogue provision device 300 according to the present invention is a memory-management-based dialogue system used in long-term dialogues, i.e., when multiple dialogues take place between a user and an agent with time differences. As shown in Figures 4-6, when a large number of dialogue sessions (e.g., Session 1, Session 2, Session 3) are formed between a user and an agent, the device provides a method for structuring the dialogue of the current dialogue session based on the dialogue content of previously formed dialogue sessions.
[0053] The dialogue provider 300 according to the present invention may perform a series of processes, including receiving a dialogue 30 between a user and an agent and storing information regarding the content of the dialogue in a memory 330. In the present invention, information regarding previous dialogue content stored in the memory 330 may be referred to as "user memory information". For example, it is assumed that the first dialogue session (Session 1, Figure 4), the second dialogue session (Session 2, Figure 5), and the third dialogue session (Session 3, Figure 6) are dialogue sessions that occurred in order from the first dialogue session.
[0054] If a second dialogue session is in progress, user memory information 421 and 422 based on user-agent dialogues 401 and 402 from a previously conducted first dialogue session may be used in the agent's utterance 404 of the second dialogue session. Furthermore, if a dialogue session corresponding to a third dialogue session is in progress, user memory information 421, 422, 423, and 424 based on user-agent dialogues 401, 402, 403, and 404 corresponding to at least one of the first and second dialogue sessions may be used in the agent's utterance 406 of the third dialogue session.
[0055] At least a portion of the user's utterances 401 in the first dialogue session and related content may be stored in the memory 330 as user memory information 421 and 422. Furthermore, the dialogue provider 300 may use the user memory information stored in the memory 330 to generate agent utterances 404 in a second dialogue session formed between the user and the agent after the first dialogue session.
[0056] When the first dialogue session ends, the dialogue provider 300 may store at least a portion of the dialogue from the first dialogue session and related content in text form in the memory 330. Furthermore, if a second dialogue session is conducted between the user and the agent after the first dialogue session, the dialogue provider 300 may use one of the texts corresponding to the user's stored information to generate an agent utterance related to it.
[0057] For example, the agent may generate the utterance "How is your throat?" 404a to check the user's state or condition in relation to the user memory information "I have a sore throat due to a cold" 421 stored in a previous conversation session (or past conversation session).
[0058] As another example, in response to user memory information 422 corresponding to "I have an appointment to go to the hospital," an agent utterance 404b, "What did the doctor say?", may be generated to check whether the user has gone to the hospital.
[0059] Similarly, when the second dialogue session ends, the dialogue provider 300 may store information regarding at least a portion of the content of the dialogue conducted in the second dialogue session in the memory 330 as user memory information 423, 424. The user memory information stored in the memory 330 may be used in a third dialogue session conducted after the second dialogue session.
[0060] Thus, the dialogue provider 300 according to the present invention manages and utilizes the content of dialogues conducted in multiple dialogue sessions between the user and the agent in the memory 330, thereby continuously monitoring and managing various states (e.g., health, sleep, etc.) or situations (e.g., living situation, work situation, etc.) of the user, and enabling natural dialogues tailored to the user.
[0061] On the other hand, in the dialogue provider 300 according to the present invention, the memory 330 may be updated in order to maintain the user's latest information on the same theme or category. That is, user memory information stored based on past dialogue sessions may be updated based on the dialogue of the current dialogue session.
[0062] For example, in the first dialogue session, the user memory information contains the content "I have a sore throat due to a cold" 421 (or a sentence (hereinafter, for the sake of explanation, the term "sentence" will be used, but it does not necessarily have to be in the form of a sentence)). If, in the second dialogue session, it is analyzed that the user's throat condition has improved, the user no longer has a sore throat, so the sentence "I have a sore throat due to a cold" 421 can be deleted and memory 330 updated.
[0063] As a similar example, the user's memory information contains the statement "I have a hospital appointment" (422). In this case, if it is analyzed from the dialogue (403b) that took place in the second dialogue session that the user has already been to the hospital, then there is no longer any need to store the statement "I have a hospital appointment" (422) in the user's memory information, and this sentence can be deleted.
[0064] Thus, the dialogue provider 300 according to the present invention can store information that should be remembered in relation to the user as user memory information in the dialogue of a dialogue session between the user and the agent, and delete unnecessary information. Furthermore, by using the user memory information in the next dialogue session to generate the agent's utterances, it is possible to generate natural dialogue based on the user's latest situation or state.
[0065] For this purpose, the dialogue provisioning device 300 according to the present invention may include a summarization unit 310, a memory operator 320, a memory 330, and a generation unit 340, as shown in Figure 3.
[0066] As shown in Figures 7 and 8, the summarization unit 310 may receive the dialogue content (D) of a dialogue session conducted between the agent and the user and generate a summary 315. The dialogue of the Nth dialogue session may be transmitted to the summarization unit 310 and processed after the Nth dialogue session has ended. The entity transmitting the dialogue to the summarization unit 310 may be a service server that provides dialogue services, but the present invention is not particularly limited to this.
[0067] The summarization unit 310 receives a dialogue D, which includes the agent's utterance and the user's utterance, and the summarization unit 310 may generate a summary 315 based on the dialogue D.
[0068] More specifically, the summarization unit 310 may summarize the information from the dialogue that should be remembered in relation to the user in the form of natural language sentences.
[0069] The summarization unit 310 may consist of a language model trained to summarize information that should be remembered in relation to the user from the dialogue (D) in the form of natural language sentences. For example, when a dialogue is input using a language model that has been tuned with a pre-trained language model (Pre-trained Language Model) that has already completed training on various types of information, and which consists of a dialogue session and a training dataset (SET) composed of key information to be remembered in the dialogue session, the summarization unit 310 may generate summary content (for example, a summary sentence (hereinafter, for the sake of explanation, the term "summary sentence" will be used, but it does not necessarily have to be in the form of a summary sentence)). Preferably, the language model may be trained to generate the summary sentence using a newline as a delimiter.
[0070] Specifically, the user information to be stored in the dialogue record D is divided into various natural language sentences S={s1, s2, ..., s k A summarization model that summarizes sentences into a gold summary sentence may learn its parameters to minimize the given loss function for each gold summary sentence.
[0071] The summarization unit 310 may be trained to generate summary sentences only for pre-set categories (category or topic). For example, the pre-set categories may be categories related to various states and situations of the user. As an example, the pre-set categories may be related to health, sleep, exercise, diet, work, etc.
[0072] In this case, based on dialogue content in dialogue D that is related to the health category, such as "My throat is better, but I have a slight headache" 701, the summarization unit 310 may generate summary information such as "My throat is better, but I have a headache" 711.
[0073] Furthermore, based on dialogue content such as "I was told to wait and see a little longer. I made another appointment for next week." 702 within dialogue D, the summarization unit 310 may generate summary information such as "a medical appointment has been made" 712.
[0074] Furthermore, based on dialogue content in dialogue D that is related to the sleep category, such as "I haven't been sleeping very well lately" 703, the summarization unit 310 may generate summary information such as "state of sleep deprivation" 713.
[0075] On the other hand, the summarization unit 310 has been trained to generate summary sentences only for user utterances included in the dialogue of a dialogue session that fall under a pre-set category. As a result, it does not need to generate summary sentences for user utterances that fall under a category other than the pre-set category. For example, as shown in Figure 8, the summarization unit 310 may generate summary sentences 821, 822, 831, 832, and 833 for user utterances 801, 802, 811, 812, and 813 related to health, sleep, exercise, diet, or work that fall under a pre-set category during the dialogue of a dialogue session (such as Session 1 or Session 2). It does not need to generate summary sentences for other categories that are not pre-set, for example, dialogue 803 in the category of "weather" ("It's been really hot lately. I can't stand the heat.").
[0076] When a dialogue is received, the summarization unit 310 may use a summarization model to generate summary sentences of the user utterances and agent utterances that constitute the dialogue, categorized according to pre-set categories. Specifically, the summarization model may be a language model that has been trained to receive dialogue and category information (e.g., "health," "sleep") as input and generate summary information related to such categories from the dialogue content. Therefore, the summary sentences generated by the summarization unit 310 may exist with information matching which category the summary sentence belongs to. The memory where the summary sentences are stored may contain summary sentences categorized according to pre-set categories. The summarization unit 310 may classify the categories of the sentences before summarizing them, and as a result, may generate summary sentences only for sentences classified into pre-set categories. Therefore, data resources can be saved by not generating summary sentences for sentences that do not require summarization.
[0077] Next, the memory operator 320 may control the operation of the memory 330 so that the user stored information (or user information) in the memory 330 maintains the most up-to-date information about the user.
[0078] The memory 330 may be located inside or outside the interaction provider 300 (for example, an external server, cloud server, or cloud storage). As shown in Figure 7, the memory operator 320 may use the summary sentence (or summary information 711, 712, 713) summarized by the summarization unit 310 and user memory information (specifically, sentences 721, 722, 723 that constitute the user memory information) pre-stored in the memory 330 to determine an action to be taken on the memory 330.
[0079] As shown in Figure 7, the user memory information stored in memory 330 may be composed of the content of a previous dialogue session formed between the user and the agent before the Nth dialogue session is formed. The user memory information stored in memory 330 may consist of summary sentences 721, 722, and 723, which are summaries of at least a portion of the dialogue from the previous dialogue session, as summarized by the summarization unit 310. The user memory information may include content related to the user's state or situation.
[0080] Memory 330 may be updated according to an operation specified by the memory operator 320. In accordance with the specified operation, memory 330 may i) store at least a portion of the summary information in memory 330, or ii) delete at least a portion of the stored user memory information.
[0081] The memory operator 320 may control the operation on a pair of summary sentences, one of which are different operations on memory, for a summary sentence summarized from the dialogue of an interaction session and a summary sentence contained in the user memory information stored in memory. When an operation is performed on the summary sentence for the dialogue of the Nth interaction session, the user memory information stored in memory 330 may be updated to reflect the content of the dialogue of the Nth interaction session.
[0082] The following describes the different operations (operations) defined in this invention on the memory 330 for the summary sentence m and the summary sentence s for a new dialogue session, which are included in the user memory information stored in the memory 330.
[0083] The first action may mean an action (PASS) in which m is stored in memory 330, but s is not stored in memory 330. The first action may occur when the contents of the two sentences are identical or similar, or when the contents of s are included in the contents of m. In this way, the first action may be executed when there is no need to update memory.
[0084] For example, as shown in Figure 7, the memory operator 320 may maintain the user memory information stored in memory 330 as is, with respect to the summary sentence "I have a hospital appointment" 722 and the summary sentence of the current dialogue session "I have a medical appointment" 712, which correspond to the user memory information stored in memory 330.
[0085] The second operation may mean the operation of storing m in memory 330 while also storing s in memory 330 (APPEND). The second operation may apply when the contents of m and s are unrelated or constitute additional information.
[0086] For example, as shown in Figure 7, there is no relationship between the summary sentence "I went jogging" 723, which corresponds to the user memory information stored in memory 330, and the summary sentence "I am sleep-deprived" 713, which corresponds to the current dialogue session. Therefore, the memory operator 320 may control the operation of memory 330 to newly add the summary sentence "I am sleep-deprived" 713 to memory 330.
[0087] The third operation may mean the operation (REPLACE) of deleting m from memory 330 and storing s in memory 330. That is, m in memory 330 may be replaced with s. The third operation occurs when the contents of the two sentences do not match or contradict each other, and the memory operator 320 deletes the existing information stored in memory 330 in order to maintain the user's stored information as the user's latest state.
[0088] For example, as shown in Figure 7, given that the summary statement "I have a sore throat from a cold" 721 corresponds to user memory information stored in memory 330, and the summary statement of the dialogue session is "My throat is better, but I have a headache" 711, the memory operator 320 may control the operation of memory 330 so that "My throat is better, but I have a headache" 711 is recorded in memory 330 instead of "I have a sore throat from a cold" 721, because the user's state has changed to a state where the sore throat is gone but the user has a headache, based on the content of the dialogue in the Nth dialogue session.
[0089] The fourth action may mean the action of deleting m from memory 330 and not storing s in memory 330 (DELETE). The fourth action may apply when the content of the text no longer reflects the user's state or situation.
[0090] For example, if the user has a summary statement "I took cold medicine" as user memory information, and the Nth dialogue session has a summary statement "My cold is gone," then it can be said that the user has recovered from their cold and no longer needs medicine. In this case, it can be said that memory 330 no longer needs to store information about the user related to the cold.
[0091] As shown in Figure 9, the memory operator 320 may specify a memory operation for the summary text summarized in the dialogue session and the user memory information stored in memory, using one of the first to fourth operations.
[0092] If the first dialogue session (Session1) is the first dialogue session associated with the user, then no user-remembered information will exist in memory (Memory1). In this case, the result of the memory operator 320's operation on the first dialogue session (Session1) and the user-remembered information may all be the second operation "APPEND". Therefore, the summary text (Summary1) summarized in the first dialogue session (Session1) may be stored in memory (Memory2) as is.
[0093] On the other hand, if a second dialogue session (Session 2) is conducted after the first dialogue session (Session 1), the summarization unit 310 may receive the dialogue of the second dialogue session and generate a summary statement (Summary 2) regarding the dialogue of the second dialogue session. The memory operator 320 may also update memory 330 using the user memory information (Memory 2) stored in memory 330 and the summary statement (Summary 2) regarding the second dialogue session. User memory information (Memory 3) reflecting the second dialogue session may be constructed based on the operation of memory 330 specified for the user memory information (Memory 2) and the summary statement (Summary 2) regarding the dialogue of the second dialogue session.
[0094] According to one embodiment of the present invention, instead of comparing all pairs of user-remembered information and summary sentences, the memory may be configured to identify the operation of the memory only for sentences that belong to the same category as each other.
[0095] In memory 330, the summary sentences may be classified and stored according to their respective categories. Therefore, the memory operator 320 may specify the operation of memory 330 only for summary sentences belonging to the same category.
[0096] As shown in Figure 10, if there are pre-configured categories 1 to 4, the memory operator 320 may compare the sentences corresponding to each category as a pair. For each pair of sentences entered for each category, the memory operator 320 may specify one of the above-mentioned actions 1 to 4 (PASS, APPEND, REPLACE, DELETE). As a result, the user memory information stored in memory 330 for each category may be updated.
[0097] On the other hand, the memory 330 may contain summary sentences as user memory information for each pre-configured category. This is to maintain information about the user's latest situation or state, limited to each category.
[0098] As described above, the memory operator 320 may be configured using a classification model trained to predict or identify the operation of memory 330 that corresponds to one of the 1st to 4th operations for a pair of sentences. The dataset for training the model may consist of a pair of sentences corresponding to m (or premise sentence) and s (or hypothesis sentence), and a label indicating which of the 1st to 4th operations (PASS, APPEND, REPLACE, DELETE) the pair of sentences corresponds to.
[0099] The memory operator 320 may be learned based on a pair of sentences and one of the first to fourth actions corresponding to the pair of sentences. The labels corresponding to each of the first to fourth actions may be mapped to a single token that corresponds to the numerical value {"0", "1", "2", "3"}.
[0100] As a result of being trained in the manner described above, the memory operator 320 becomes able to predict or identify the operation of memory 330 that corresponds to one of the first to fourth operations for a given pair of sentences.
[0101] The generation unit 340 is configured to generate agent utterances using user memory information stored in the memory 330.
[0102] The generation unit 340 may generate agent utterances by referring to user memory information linked to the user account of the user currently performing the dialogue. The generation unit 340 may generate agent utterances using a portion of the user memory information stored in memory 330 and the dialogue history of the current session.
[0103] The generation unit 340 may consist of a language model obtained by fine-tuning a large-scale language model that has already been trained on various types of information using "maximum likelihood estimation (MLE)".
[0104] If the generation unit 340 has multiple summary sentences corresponding to multiple different categories related to the user's state or situation as user memory information, it may use one of the multiple summary sentences based on the context of the dialogue in the currently ongoing dialogue session to generate an agent utterance. When a dialogue session begins between the user and the agent, all or some of the multiple summary sentences corresponding to the user memory information stored in the memory 330 are transmitted to the generation unit 340 and may be used to generate an agent utterance in the currently ongoing dialogue session.
[0105] Figure 11 is a conceptual diagram illustrating a dialogue service that interacts with an external system in one embodiment of the present invention.
[0106] As shown in Figure 11, the dialogue provider 300 according to the present invention may update user memory information using information provided by a third-party service of an external system 1100, in addition to the dialogue 30 that takes place between the user and the agent. In other words, instead of direct dialogue 30 between the user and the agent, memory information about the user may be artificially injected from the external system 1100 and used in the agent's utterances.
[0107] In its "memory dialogue" function, which generates dialogue based on memorized information about the user, the dialogue provider 300 may generate utterances to check the user's state and situation based on information provided by a third-party service in relation to the user.
[0108] For this purpose, the dialogue provider 300 may include an API (Application Programming Interface) for linking with the external system 1100, and may link with the external system 1100 by calling the API and receive user information on the system 1100 as information necessary for "memory dialogue".
[0109] Referring to Figure 12, the dialogue provider 300 may execute a dialogue summarization process 1210. The dialogue provider 300 may receive the content of a dialogue session conducted between the agent and the user and generate a summary. From the dialogue content, information that should be remembered and is related to the user may be summarized in the form of natural language text. The specific content of the dialogue summarization process 1210 is as described above.
[0110] The dialogue provider 300 may execute the system integration process 1220. The dialogue provider 300 may interact with the external system 1100 through periodic API calls and receive information provided by third-party services, which are different from the dialogue services of the AI agent platform, as information necessary for "memory dialogue". The dialogue provider 300 may interact with other applications installed on the user's electronic device 20 or external systems such as IoT devices linked to the electronic device 20, and may receive user information from various mobile apps and IoT devices via APIs.
[0111] In addition to other applications installed on the user's electronic device 20 and IoT devices connected to the electronic device 20, user information may also be received via a pre-authenticated API relay server.
[0112] In this embodiment, information provided by a third-party service with the user's consent, that is, information to which the user has agreed to provide, may be used as user-remembered information.
[0113] The dialogue provider 300 may execute a memory update process 1230. In the embodiment described above, the user memory information stored in the memory 330 may be updated using a summary of the dialogue from a previous dialogue session. The dialogue provider 300 may maintain the user's latest information by summarizing the dialogue between the user and the agent and combining existing and new information based on the dialogue summary.
[0114] In particular, in the memory update process 1230 of this embodiment, user memory information may be updated using information provided by a third-party service in conjunction with an external system 1100. If there is no dialogue between the user and the agent, or if there are no user utterances that fall under a pre-set category in the dialogue between the user and the agent, a dialogue summary will not be generated. In such cases, information necessary for "memory dialogue" may be received from the external system 1100, and user memory information may be updated based on this information.
[0115] User memory information may be maintained as up-to-date by combining existing and new information obtained from external information about the user. The first to fourth operations for updating user memory information stored in memory 330 are the same as described above. The memory operator 320 may determine, based on time, which memory operation to perform is one of the first to fourth operations for the summary sentence summarized in the dialogue session and the sentence corresponding to the information on the external system 1100. In other words, the memory update process 1230 may include a first operation (PASS) that maintains existing information but does not store new information, a second operation (APPEND) that maintains existing information and stores new information, a third operation (REPLACE) that deletes existing information and stores new information, and a fourth operation (DELETE) that deletes existing information and does not store new information.
[0116] The dialogue provider 300 may perform a "memory dialogue" process 1240 that provides dialogue based on memory information about the user. The dialogue provider 300 may generate agent utterances using one of several sentences that constitute user memory information based on the dialogue context of the currently ongoing dialogue session. In addition to summaries of previous dialogues, the dialogue provider 300 may also provide personalized dialogues that use information injected from an external system 1100 to monitor or check the user's situation or state based on information on the system.
[0117] Figures 13-18 illustrate an example of personalized dialogue through external system integration in one embodiment of the present invention.
[0118] Referring to Figure 13, in this embodiment, as an example of an external system 1100, the user memory information stored in memory 330 may be updated in cooperation with the administrator web console 1300 of the AI agent platform's dialogue service. When administrator input indicating the user's recent state or status is registered by the service administrator on the user information management screen in the administrator web console 1300, this may be used to update the user memory information in memory 330.
[0119] For example, if a service administrator adds a memo to the user information management screen stating "Medication for diabetes has been prescribed," this information may be injected through periodic API calls, and the sentence 331 "Medication for diabetes has been prescribed" may be stored in memory 330 as user memory information. Using the sentence 331 "Medication for diabetes has been prescribed," a memory dialogue 1301 such as "Have you been taking the diabetes medication prescribed the other day?" may be generated.
[0120] Referring to Figure 14, in this embodiment, as another example of an external system 1100, user memory information stored in memory 330 may be updated in cooperation with a health management application 1400 installed on the user's electronic device 20. The health management application 1400 may periodically inject the user's health information, and this may be used to update the user memory information in memory 330.
[0121] For example, if information such as "Diabetes medication has been prescribed" or a diabetes medication reminder is registered on the health management app 1400 through direct input by the user or reception of information from a server associated with the health management app 1400, the information may be injected by periodic API calls, and the sentence 331 "Diabetes medication has been prescribed" may be stored in memory 330 as user memory information. Using the sentence 331 "Diabetes medication has been prescribed," a memory dialogue 1401 such as "Have you been taking the diabetes medication prescribed the other day?" may be generated.
[0122] Referring to Figure 15, in this embodiment, as another example of an external system 1100, user memory information stored in memory 330 may be updated in cooperation with a body composition management application 1500 installed on the user's electronic device 20. The body composition management application 1500 may periodically inject the user's body composition information (e.g., weight, body fat, muscle mass, etc.), and this may be used to update the user memory information in memory 330.
[0123] For example, if a user's weight recorded on the body composition management app 1500 increases by 1 kg compared to a previous record, this information may be sent via periodic API calls, and the sentence "Weight increased by 1 kg" 331 may be stored in memory 330 as user memory information. Using the sentence "Weight increased by 1 kg" 331, a memory dialogue 1501 may be generated, such as "Your weight has increased by 1 kg since last week. Why not try managing your diet today?"
[0124] Referring to Figure 16, in this embodiment, as another example of an external system 1100, user memory information stored in memory 330 may be updated in cooperation with a calendar application 1600 installed on the user's electronic device 20. Schedule information for pre-set categories (e.g., health, sleep, exercise, meals, work, etc.) may be injected from the calendar application 1600, and this may be used to update the user memory information in memory 330.
[0125] For example, if a hospital appointment schedule corresponding to the health category of the calendar app 1600 is registered on July 16th, the information may be injected through periodic API calls, and the sentence 331 "July 16th, medical appointment" may be stored in memory 330 as user-remembered information. Using the sentence 331 "July 16th, medical appointment" a memory dialogue 1601 such as "You have a medical appointment scheduled for July 16th. Please be sure to bring your identification when you go to the hospital." may be generated.
[0126] Referring to Figure 17, in this embodiment, as another example of an external system 1100, user memory information stored in memory 330 may be updated in cooperation with a lonely death prevention application 1700 installed on the user's electronic device 20. The lonely death prevention application 1700 analyzes the usage of the electronic device 20 and outputs an absence confirmation alarm if there is no history of device usage for a set time (e.g., 24 hours) or longer. At this time, absence confirmation alarm information may be injected from the lonely death prevention application 1700, and this may be used to update the user memory information in memory 330.
[0127] For example, if an absence confirmation alarm is triggered on the lonely death prevention app 1700 because there is no record of device usage for a period of time longer than predetermined, the information may be injected through periodic API calls, and the sentence 331 "The device has not been used for more than 24 hours" may be stored in memory 330 as user memory information. Using the sentence 331 "The device has not been used for more than 24 hours," a memory dialogue 1701 may be generated that says, "The device has not been used for more than 24 hours. Please contact us immediately if you have any problems."
[0128] Referring to Figure 18, in this embodiment, as yet another example of an external system 1100, user memory information stored in memory 330 may be updated in cooperation with an IoT device 1800 accessible via the user's electronic device 20. User activity information may be injected from the IoT device 1800 and used to update the user memory information in memory 330.
[0129] For example, if user activity analysis via IoT device 1800 reveals that the user has not gone out for an entire day, this information may be injected through periodic API calls, and the sentence 331 "No outings for more than 24 hours" may be stored in memory 330 as user memory information. Using the sentence 331 "No outings for more than 24 hours," a memory dialogue 1801 may be generated, such as "You have not gone out for 24 hours. How are you feeling? Perhaps you could take a short walk?"
[0130] Therefore, in this embodiment, even without direct interaction between the user and the agent, information regarding the user's state and circumstances can be obtained through interaction with an external system and utilized as user memory information for "memory dialogue."
[0131] The dialogue provider 300 according to the present invention may provide AI agent-based dialogue services in accordance with the requirements of companies that have contracted with national or local government administrative agencies. When a company registers users to be served, the dialogue provider 300 may periodically conduct dialogues with the users through an agent and provide feedback on the results of the dialogues between the user and the agent to the company or the user's guardian. In some cases, the company may provide the dialogue result report to the administrative agency or guardian, and the system may include the operation of a system in which the company individually contacts users whose health or safety is a concern.
[0132] Thus, according to the embodiments of the present invention, when generating a dialogue to check the user's health status, by linking with an external system and updating the user's memory information using information provided by a third-party service, a personalized dialogue can be generated, thereby enabling an optimal and natural dialogue that is suited to the user's recent state and circumstances.
[0133] The above-described apparatus may be implemented by hardware components, software components, and / or combinations of hardware and software components. For example, the apparatus and components described in the embodiments may be implemented using one or more general-purpose or special-purpose computers, such as processors, controllers, ALUs (arithmetic logic units), digital signal processors, microcomputers, FPGAs (field programmable gate arrays), PLUs (programmable logic units), microprocessors, or various devices capable of executing and responding to instructions. The processing unit may execute an operating system (OS) and one or more software applications running on the OS. The processing unit may also respond to software execution, access data, record, manipulate, process, and generate data. For convenience of understanding, it may be described as if a single processing unit is used, but those skilled in the art will understand that the processing unit may include multiple processing elements and / or multiple types of processing elements. For example, the processing unit may include multiple processors or one processor and one controller. Other processing configurations, such as parallel processors, are also possible.
[0134] Software may include computer programs, code, instructions, or a combination of one or more of these, which may configure a processing unit to operate as desired, or which may instruct the processing unit independently or collectively. Software and / or data may be embodied in any kind of machine, component, physical device, computer recording medium, or device for interpretation based on the processing unit or for providing instructions or data to the processing unit. Software may be distributed across a networked computer system, and may be recorded or executed in a distributed manner. Software and data may be recorded on one or more computer-readable recording media.
[0135] The methods according to the embodiment may be implemented in the form of program instructions executable by various computer means and recorded on a computer-readable medium. In this case, the medium may continuously record computer-executable programs or may temporarily record them for execution or download. Furthermore, the medium may be various recording or storage means in the form of a combination of one or more hardware components, and may be a medium directly connected to a computer system or distributed on a network. Examples of mediums include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical media such as CD-ROMs and DVDs, magneto-optical media such as floptical disks, and devices configured to record program instructions such as ROM, RAM, and flash memory. Other examples of mediums include recording media and storage media managed by app stores that distribute applications, and sites and servers that supply and distribute various other software.
[0136] As described above, embodiments have been explained based on limited embodiments and drawings, but those skilled in the art will be able to make various modifications and variations from the above description. For example, the described technique may be performed in a different order than described, and / or the components of the described system, structure, apparatus, circuit, etc. may be combined or assembled in a different manner than described, or opposed or replaced by other components or equivalents, and still achieve suitable results.
[0137] Therefore, even if the embodiment is different, it falls within the scope of the attached claims if it is equivalent to the claims. [Explanation of symbols]
[0138] 20:Electronic equipment 30: Dialogue 300: Dialogue Provider 310: Summary Section 315: Summary 320: Memory Operator 330: Memory 340: Generation part
Claims
1. A method for providing interaction for a computer device including at least one processor, The steps include: using at least one processor to receive external information provided by a third-party service in connection with the user through interaction with an external system; The steps include: storing the user information based on the external information using at least one of the processors; The steps include: using the stored information with at least one processor to generate an agent utterance for interaction with the user; The steps include: performing a dialogue with the user by providing the user with the agent's utterances via a dialogue session between the agent and the user using the at least one processor; A method of providing dialogue, including the following.
2. The aforementioned receiving step is, Steps that interact with the external system via API (Application Programming Interface) calls. A method for providing dialogue according to claim 1, including the method described in claim 1.
3. The aforementioned receiving step is, The step of receiving the external information in conjunction with other applications installed on the user's electronic device or IoT devices connected to the electronic device. A method for providing dialogue according to claim 1, including the method described in claim 1.
4. The aforementioned receiving step is, When information indicating the user's state or status is registered by the administrator of the AI agent platform dialogue service provided by the computer device, the step of receiving the registered information as external information. A method for providing dialogue according to claim 1, including the method described in claim 1.
5. The aforementioned step of storing is, A step of updating the stored information to the latest information by combining existing information and new information obtained from the aforementioned external information. A method for providing dialogue according to claim 1, including the method described in claim 1.
6. The aforementioned update step is: The step of updating the stored information by any one of the following operations: a first operation (PASS) which maintains the existing information and does not store the new information; a second operation (APPEND) which maintains the existing information and stores the new information; a third operation (REPLACE) which deletes the existing information and stores the new information; and a fourth operation (DELETE) which deletes the existing information and does not store the new information. The method for providing dialogue according to claim 5, including the method described in claim 5.
7. The step of generating the agent's utterance is: Using one of the multiple sentences that constitute the memory information based on the context of the dialogue session, the agent's utterance is generated. The method for providing dialogue according to claim 1, characterized by the above.
8. The aforementioned method of providing dialogue is The step of updating the stored information based on the dialogue of a previous dialogue session of the dialogue session using at least one of the processors. The method for providing dialogue according to claim 1, further comprising:
9. The aforementioned update step is: The memory information is updated using the summarized content obtained by summarizing the user's utterances in the aforementioned previous dialogue session. The method for providing dialogue according to claim 8, characterized by the above.
10. The aforementioned update step is: When the aforementioned previous dialogue session ends, the following step is taken: summarize in sentence form specific utterances from the user's utterances included in the dialogue of the aforementioned previous dialogue session that belong to a predetermined category. The method for providing dialogue according to claim 8, including the method described in claim 8.
11. A computer program for causing the computer device to execute the dialogue provision method described in any one of claims 1 to 10.
12. At least one processor implemented to execute instructions readable by a computer device Includes, With the aforementioned at least one processor, Through integration with external systems, the process of receiving external information provided by third-party services in relation to the user, A process for storing memory information about the user based on the aforementioned external information, A process for generating agent utterances for interaction with the user using the aforementioned stored information, The process of performing a dialogue with the user by providing the user with the agent's utterances through a dialogue session between the agent and the user. A computer device that processes data.
13. With the aforementioned at least one processor, Interacting with the external system via API calls The computer device according to claim 12, characterized by the above.
14. With the aforementioned at least one processor, To receive the external information in conjunction with other applications installed on the user's electronic device or IoT devices linked to the electronic device. The computer device according to claim 12, characterized by the above.
15. With the aforementioned at least one processor, When information indicating the user's state or status is registered by the administrator of the AI agent platform dialogue service provided by the computer device, the registered information is received as external information. The computer device according to claim 12, characterized by the above.
16. With the aforementioned at least one processor, The stored information is updated to the latest information by combining existing information and new information obtained from the aforementioned external information. The computer device according to claim 12, characterized by the above.
17. With the aforementioned at least one processor, The stored information is updated by any one of the following operations: a first operation (PASS) which maintains the existing information and does not store the new information; a second operation (APPEND) which maintains the existing information and stores the new information; a third operation (REPLACE) which deletes the existing information and stores the new information; and a fourth operation (DELETE) which deletes the existing information and does not store the new information. The computer device according to claim 16, characterized by the above.
18. With at least one processor, Using one of the multiple sentences that constitute the memory information based on the context of the dialogue session, the agent's utterance is generated. The computer device according to claim 12, characterized by the above.
19. With the aforementioned at least one processor, Updating the memory information based on the dialogue from a previous dialogue session of the aforementioned dialogue session. The computer device according to claim 12, characterized by the above.
20. With the aforementioned at least one processor, The memory information is updated using the summarized content obtained by summarizing the user's utterances in the aforementioned previous dialogue session. The computer device according to claim 19, characterized by the following: