Information processing systems, information processing devices, information processing methods, programs, and terminals
Patent Information
- Application Number
- JP2025177026
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2025-02-28
- Filing Date
- 2025-10-21
- Publication Date
- 2026-09-09
AI Technical Summary
【0007】 ユーザから受け付けたメッセージに対してより適切な応答を出力できる対話AIへの切り替えを可能とすることができる。
Smart Images

Figure 2026144953000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to an information processing system, an information processing apparatus, an information processing method, a program, and a terminal. [Background Art]
[0002] Conventionally, a computer system that interacts with a user by automatically generating a response to a message such as a question from the user and outputting the response has been devised.
[0003] For example, Patent Literature 1 discloses a technology that allows a user to select a dialogue partner AI before the user interacts with the AI. [Summary of the Invention] [Problem to be Solved by the Invention]
[0004] However, conventional technologies have not considered switching the dialogue partner to another dialogue AI that can output a more appropriate response than the current dialogue AI that is the dialogue partner for a message from the user.
[0005] The present invention has been made in view of the above point, and an object thereof is to enable switching to a dialogue AI that can output a more appropriate response to a message received from a user. [Means for Solving the Problem]
[0006] To solve the above problems, the information processing system includes: a display control unit that displays a first dialogue AI, which is the dialogue partner of the user, on the application screen of the terminal operated by the user, in an identifiable manner from among several types of dialogue AIs that interact with the user and have different roles; a reception unit that receives a message for the dialogue AI input on the terminal; a determination unit that determines, based on the message and the content input to the application, whether there is a second dialogue AI among the several types of dialogue AIs that can output a more appropriate response to the message than the first dialogue AI; and a switching unit that, if it is determined that the second dialogue AI exists, switches the dialogue partner to the second dialogue AI. The display control unit displays on the application screen of the terminal in an identifiable manner that the dialogue partner has been switched. [Effects of the Invention]
[0007] This allows for switching to a conversational AI that can output more appropriate responses to messages received from users. [Brief explanation of the drawing]
[0008] [Figure 1] This figure shows an example of the configuration of the information processing system in the first embodiment. [Figure 2] This figure shows an example of an application screen in the first embodiment. [Figure 3] This figure shows an example of the hardware configuration of the information processing device 10 in the first embodiment. [Figure 4] This figure shows an example of the functional configuration of the information processing system in the first embodiment. [Figure 5] This figure shows an example of the agent information storage unit 121. [Figure 6] This figure shows an example of the history information storage unit 123. [Figure 7] This is a sequence diagram illustrating an example of a processing procedure performed by the information processing system in the first embodiment. [Figure 8]This figure shows an example of the dialogue screen displayed at the start of a conversation. [Figure 9] This figure shows an example of a dialogue screen displaying information for selecting a new execution agent. [Figure 10] This figure shows a modified version of the dialogue screen, which includes display information for selecting a new execution agent. [Figure 11] This figure shows an example of a dialogue screen that allows the user to choose whether or not to switch the execution agent. [Figure 12] This figure shows an example of how the final response information is displayed. [Figure 13] This figure shows an example of a dialogue screen displaying the switching of the execution agent. [Figure 14] This is a sequence diagram illustrating an example of a processing procedure performed by the information processing system in the second embodiment. [Figure 15] This figure shows an example of the display of the dialogue screen when switching execution agents without allowing the user to select one. [Figure 16] This figure shows a modified example of screen configuration for interaction within an application screen. [Figure 17] This figure shows an example of the functional configuration of terminal 20 in the third embodiment. [Figure 18] This is a sequence diagram illustrating an example of a processing procedure related to screen transitions in the third embodiment. [Figure 19] This figure shows an example of the execution agent selection screen. [Figure 20] This figure shows an example of the display on the dialogue screen 510 after entering a message. [Figure 21] This figure shows an example of a screen where the execution agent has been switched in the third embodiment. [Figure 22] This figure shows an example of screen transitions in a modified application screen in the third embodiment. [Figure 23] This figure shows an example of the functional configuration of a terminal 20 equipped with the functions of an information processing device 10. [Modes for carrying out the invention]
[0009] Hereinafter, embodiments of the present invention will be described with reference to the drawings. FIG. 1 is a diagram showing a configuration example of an information processing system according to a first embodiment. In FIG. 1, one or more terminals 20 are connected to the information processing apparatus 10 via a network such as a LAN (Local Area Network) or the Internet.
[0010] The information processing apparatus 10 is one or more computers that function as a plurality of types of agents a1 to aL that interact with a user. An agent is an example of conversational AI, and is an anthropomorphized virtual entity that appears to the user as a conversation partner. A conversation with conversational AI (a conversation partner) refers to the output of a response to a message input by the user. Specifically, the agent receives a message input by a user from the terminal 20 and outputs a corresponding response to the terminal 20. The message input by the user may be a question, some kind of instruction or request, or other input information that requires a response. The response is text containing information corresponding to the message. As a response to the message, the text may be output by voice. Note that the agent may also be called an automatic response means, AI agent, digital clone, personalized AI, AI assistant, automatic response AI, conversation partner, AI chatbot, companion, concierge, virtual conversation interface, or the like. The agent may be a virtual human displayed as a conversation partner on the screen of the terminal 20 as a 3D avatar imitating a person.
[0011] In the present embodiment, the information processing apparatus 10 functions as a plurality of types of agents. The plurality of types of agents are distinguished by methods such as control of generating responses to messages. Furthermore, the plurality of types of agents have different roles for each agent and are distinguished according to the purpose or application. For example, examples of agent roles include inquiry (question answering), comparison, classification, prediction, document generation, document supplementation, and document evaluation. An agent may be defined for each of these roles, or agents corresponding to other roles may be defined.
[0012] A user can select an agent suitable for their own purpose or application from among a plurality of types of agents as a conversation partner. Furthermore, when the information processing apparatus 10 determines that one or more agents more suitable than the current agent exist for a message from the user according to the progress of the conversation, the information processing apparatus 10 presents the one or more agents more suitable than the current agent to the user. The information processing apparatus 10 can switch the agent as the conversation partner to the agent selected by the user from among the presented agents.
[0013] The terminal 20 is an apparatus that functions as a user interface of the information processing system. For example, a PC (Personal Computer), a smartphone, a tablet terminal, or the like may be used as the terminal 20. The terminal 20 accepts input of a message from a user and transmits the message to the information processing apparatus 10. The terminal 20 also receives a response generated for the message from the information processing apparatus 10 and displays the response. The terminal 20 may output the received information using a projector or the like.
[0014] In the present embodiment, selection of an execution agent and conversation between a user and an agent are performed using a partial area of a screen (hereinafter referred to as an "application screen") of an application activated on the terminal 20 (that is, an application being used (operated) by the user).
[0015] Figure 2 shows an example of an application screen in the first embodiment. In Figure 2, the application screen 300 includes a content area 400 and a dialogue area 500. The content area 400 is the area that displays the data (content) that the application is processing. Examples of applications include presentation creation applications, document creation applications, spreadsheet applications, web conferencing applications, web browsers, and web applications displayed in a web browser. The content to be displayed in the content area 400 varies depending on the application, but examples include slides, documents, tables, web conferencing video, web pages, and web application screens. The dialogue area 500 is the area for the user to interact with the agent, and displays messages entered by the user and responses from the agent. In Figure 2, a state where the dialogue is already in progress is shown, but at the start of the dialogue, a list of agents that can be selected as dialogue partners is displayed, as will be described later. The display of the dialogue area 500 can be realized by an add-in to the application (or an add-in to the web application if the web application is displayed in a web browser). The system configuration of the present invention is shown in Figure 1, where the terminal 20 and the information processing device 10 communicate via a network, but it is not limited to this configuration. For example, a web conferencing application is often executed by communicating with a web conferencing application server. In that case, the terminal 20 will communicate with both the web conferencing application server and the information processing device 10. The same applies to a web browser. In other words, the terminal 20 communicates with an application server (not shown) that supports the execution of applications on the terminal 20, which is different from the information processing device 10 such as a web conferencing application server, and the information processing device 10 communicates with the application server, and the application server communicates with the information processing device 10 to display a screen like the one in Figure 2, and the present invention may be implemented while interacting with a conversational AI. Alternatively, the application server and the information processing device 10 may communicate with the terminal 20 as a single unit.
[0016] In this embodiment, the information processing system is assumed to be operated within a certain company (hereinafter referred to as "Company X"). Therefore, users who can access the information processing device 10 are employees of Company X or other persons belonging to Company X. The services provided by the information processing device 10 may be made publicly available as a cloud service.
[0017] Figure 3 shows an example of the hardware configuration of the information processing device 10 in the first embodiment. As shown in Figure 3, the information processing device 10 is built by a computer and includes a CPU (Central Processing Unit) 101, ROM (Read Only Memory) 102, RAM (Random Access Memory) 103, HD (Hard Disk) 104, HDD (Hard Disk Drive) controller 105, display 106, external device connection I / F (Interface) 108, network I / F 109, data bus 110, keyboard 111, pointing device 112, DVD-RW (Digital Versatile Disk Rewritable) drive 114, and media I / F 116.
[0018] Of these, the CPU 101 controls the operation of the entire information processing unit 10. The ROM 102 stores programs used to drive the CPU 101, such as the IPL (Initial Program Loader). The RAM 103 is used as the work area for the CPU 101. The HD 104 stores various data such as programs. The HDD controller 105 controls the reading or writing of various data to the HD 104 according to the control of the CPU 101. The display 106 displays various information such as cursors, menus, windows, characters, or images. The external device connection I / F 108 is an interface for connecting various external devices. In this case, external devices include, for example, USB (Universal Serial Bus) memory and printers. The network I / F 109 is an interface for data communication using a communication network. The data bus 110 is an address bus and data bus for electrically connecting each component such as the CPU 101.
[0019] The keyboard 111 is a type of input means equipped with multiple keys for inputting characters, numbers, and various instructions. The pointing device 112 is a type of input means for selecting and executing various instructions, selecting processing targets, and moving the cursor. The DVD-RW drive 114 controls the reading or writing of various data to the DVD-RW 113, which is an example of a removable recording medium. Note that it is not limited to DVD-RW, but may also be DVD-R, etc. The media I / F 116 controls the reading or writing (storage) of data to the recording medium 115, such as flash memory.
[0020] Figure 4 shows an example of the functional configuration of the information processing system in the first embodiment. In Figure 4, the information processing device 10 has an AI 150 and an agent.
[0021] AI150 is a machine learning model (e.g., a neural network) that takes text as input and is trained to generate text (hereinafter referred to as "response") corresponding to the input text (hereinafter referred to as "prompt"). AI150 may be trained to output responses that include images or files. For example, AI150 generates the text with the highest probability of occurrence as a response to a prompt, based on the learning results. For example, a generative AI using a Large Language Mode (LLM) may be used as AI150. LLM is a machine learning model that has been trained to perform natural language processing using a large amount of text data. LLM is used in many NLP (Natural Language Processing) tasks such as generating responses to specific questions, automatic text generation, text summarization, translation, and sentiment analysis. It can also be used in various applications such as education, entertainment, customer service, and product development. In this embodiment, the prompt is text containing a message entered by the user. Note that the information processing device 10 does not have to have AI150. In this case, a generative AI that is publicly available on the internet or elsewhere may be used as AI150. AI150 generates responses as an agent. Note that AI150 may be provided for each of the multiple types of agents. In that case, if the user selects a first agent, the first AI corresponding to the first agent generates a response to the user's message, and if the second agent is selected, the second AI corresponding to the second agent generates a response to the user's message.
[0022] Here, machine learning is a technique for enabling computers to acquire human-like learning abilities. It refers to a technique in which a computer autonomously generates algorithms necessary for judgment, such as data identification, from pre-inputted training data, and applies these algorithms to new data to make predictions. The learning method for machine learning can be supervised learning, unsupervised learning, semi-supervised learning, reinforcement learning, or deep learning, or a combination of these learning methods; the learning method for machine learning is not restricted.
[0023] The agent is a set of functional units that receive messages from the user, use Retrieval Augmented Generation (RAG) to generate responses from the AI 150 to those messages, and perform processing to include text previously generated by the AI 150 (responses output by the AI 150 to prompts previously entered into the AI 150) in the prompts. Specifically, the agent includes, as such functional units, a reception unit 11, an agent control unit 12, a setting unit 13, a conversion unit 14, a search unit 15, an AI control unit 16, and a display control unit 17. Each of these units is realized by processing that one or more programs installed on the information processing device 10 cause the CPU 101 to execute. The agent also utilizes an agent information storage unit 121, multiple data storage units 122-1 to N, and a history information storage unit 123 as storage units. Each of these storage units can be realized using, for example, an HD 104 or a storage device that can be connected to the information processing device 10 via a network.
[0024] In this embodiment, the information processing device 10 is described as functioning as multiple types of agents a1 to aL, but the program that functions as an agent (hereinafter referred to as the "agent program") is common to each agent. The agent program causes the information processing device 10 to function as multiple types of agents based on information that is set in advance for each agent (hereinafter referred to as the "agent information").
[0025] The reception unit 11 accepts input from the user. For example, the reception unit 11 accepts the user's selection of an agent to interact with from among several types of agents a1 to aL (hereinafter referred to as the "execution agent"). The reception unit 11 also accepts the input of a message to the agent that is the agent with whom the conversation is taking place, and data (hereinafter referred to as "app data") indicating the content entered into the application corresponding to the app screen 300, which includes the conversation area 500 in which the message was entered. The message is entered on the screen of the application that the user is using. The app data is entered into the application that the user is using. Entering into the application means that it is entered for the operation of the application, separate from the message entered in the conversation area 520. The message input has a different input interface from the app data input and is different from the app data input, as it is a message entered to get a response from the agent with whom the conversation is taking place, or to give instructions to the agent. The app data may be editable. In this case, the app data is also the data that the user has entered. For example, in the case of a presentation creation app, document creation app, spreadsheet app, web conferencing app, viewer app, web browser, or web app, the application data would be, in order, presentation data, document data, spreadsheet data, video and audio data for web conferences, viewable file data such as PDFs, web pages, and data handled by the web app. More precisely, user input is made to terminal 20. Therefore, the reception unit 11 receives information from terminal 20 corresponding to the input received by terminal 20.
[0026] The agent control unit 12 controls the switching of the execution agent. When an execution agent is selected by the user, the agent control unit 12 executes a process to make the selected agent a1 the execution agent. When switching the execution agent according to the progress of the dialogue, the agent control unit 12 functions as an example of a determination unit that determines whether there is one or more agents a2 that can output a more appropriate response than the current execution agent (dialogue partner), agent a1 (first dialogue AI), to the message received by the reception unit 11 from among multiple types of agents. In this case, the agent control unit 12 uses not only the message but also application data, which is an example of content input into the application and displayed on the application screen, to determine whether there is an agent that can output a more appropriate response (i.e., an agent related to the content input into the application). If the agent control unit 12 determines that one or more agents a2 exist, it functions as an example of a switching unit that switches the dialogue partner to agent a2 (second dialogue AI) selected from among the one or more agents a2. In the process of switching a certain agent to the execution agent, the agent control unit 12 inputs the agent information of the execution agent from the agent information stored for each agent in the agent information storage unit 121 to the setting unit 13. When switching the execution agent according to the progress of the interaction, the agent control unit 12 executes the process of switching the execution agent based on the agent information stored for each agent in the agent information storage unit 121 and the message from the user.
[0027] Among the agent information stored for each agent, the agent information for a particular agent includes text information indicating the role of that agent, identification information of the data storage unit 122 corresponding to that agent (hereinafter referred to as "data source ID"), a system prompt corresponding to that agent, and control rules corresponding to that agent.
[0028] Figure 5 shows an example of the agent information storage unit 121. As shown in Figure 5, the agent information storage unit 121 pre-stores agent information for each candidate agent, including agent ID, agent name, icon name, description, data source ID, control rules, and system prompts.
[0029] The agent name is the name of the agent. The icon name is the file name of the icon that represents the agent. The icon is displayed on the screen for user-agent interaction (interaction screen). The description is text data that describes the agent's role, etc., in natural language. The data source ID is the identification information of the data storage unit 122 that the agent searches. Two or more data storage units 122 may be searched. The control rules and system prompts are the control rules and system prompts that make the AI control unit 16 compatible with the agent. Since control rules and system prompts are defined for each agent, multiple types of control rules and system prompts that are different from each other are prepared in advance. Even if multiple agents search the same data source, different responses can be obtained from each agent by using different control rules for each agent. In other words, the agent's role is realized by the control rules and system prompts. For example, if an inquiry agent has the role of outputting inquiry responses to user inquiries (questions), then a description explaining that role, along with the control rules and system prompts for controlling the agent in that way, are stored in association with that inquiry agent. If an analysis agent is responsible for analyzing data and outputting analysis results in response to user instructions, then a descriptive statement explaining this role, along with control rules and system prompts for controlling the agent, are stored in association with that analysis agent.
[0030] A system prompt is a template (template) of a prompt that is pre-prepared for each agent (for each role) and is input to the AI150. For example, by applying a message received by the reception unit 11 to the system template, a prompt to be input to the AI150 is generated.
[0031] A control rule is data that defines the input / output (interaction) procedures for AI150, and is prepared in advance for each agent (role). To obtain a response appropriate to the role of the execution agent for a certain message entered by the user, it is not enough to simply enter a prompt to AI150 once. For example, it may be necessary to have AI150 perform multiple tasks such as extracting, classifying, predicting, or looping specific information. In this case, a prompt needs to be entered for each task, and the control rule is data that defines what prompts should be entered to AI150 and in what order (i.e., the procedure for interacting with AI150). An interaction with AI150 based on a single control rule will be referred to as a "control procedure," and a single prompt input to AI150 within a control procedure will be referred to as a "phase." If a control procedure includes multiple phases, system prompts corresponding to each phase are prepared. In this case, the system prompt for a certain phase may be a message received by the reception unit 11. The system prompts for other phases may be responses obtained in the control procedure up to that phase. When distinguishing between responses obtained from AI150 during the control procedure and responses obtained from AI150 at the end of the control procedure (i.e., responses to user messages), the former is called an "intermediate response" and the latter a "final response." Note that if only one prompt input is required during the control procedure, the control rule will consist of one phase, and there will be only one system prompt. In this case, there is no intermediate response, and a final response is obtained for each prompt input.
[0032] The setting unit 13 configures the AI control unit 16 and the search unit 15 to perform actions corresponding to the role of the execution agent, based on the agent information of the execution agent input from the agent control unit 12. Switching between execution agents is achieved by switching the settings for the AI control unit 16 and the search unit 15. The reason for switching the settings for the AI control unit 16 for each agent is that the system prompts and control rules differ for each agent. Specifically, the system prompts and control rules included in the agent information of the execution agent are set for the AI control unit 16. On the other hand, the reason for switching the settings for the search unit 15 for each agent is that the data storage unit 122 that is the search target (source of document data acquisition) may differ for each agent. For example, agent a3, which deals with legal knowledge, searches the data storage unit 122 where legal document data is stored, while agent a4, which deals with accounting knowledge, searches the data storage unit 122 where accounting document data is stored. The data source ID included in the agent information of the execution agent is set for the search unit 15.
[0033] When the receiving unit 11 receives a message, the conversion unit 14 converts the message into a vector that represents the meaning of the message using multi-dimensional numerical values (hereinafter referred to as a "semantic vector"). The semantic vector can be generated using natural language processing such as BERT. Hereinafter, the semantic vector generated by converting the message will be referred to as a "message vector".
[0034] The search unit 15 uses the message vector generated by the conversion unit 14 to extract a portion of the document data stored in the data storage unit 122 corresponding to the data source ID set by the setting unit 13, which has a relatively high relevance to the message. In other words, the data storage unit 122 that the search unit 15 searches (the source of the document data) changes according to the setting by the setting unit 13.
[0035] Each data storage unit 122 has document data related to various operations of company X pre-stored (registered). However, the set of document data stored differs for each data storage unit 122. This is because the document data required differs depending on the role of the agent. Therefore, a data storage unit 122 may be provided for each agent. Alternatively, some or all of the data storage units 122 used by two or more agents may be the same. The registration of document data to each data storage unit 122 may be performed in batches, or the user may upload the document data at any time. Each data storage unit 122 stores, for each document data registered in that data storage unit 122, the document data and the semantic vector for each chunk of the document data. A chunk of document data refers to a part of the document data obtained by dividing the document data into predetermined units. The units for dividing the document data may be the number of characters, the number of sentences, or semantic units (e.g., paragraphs), and it is sufficient that the data is pre-divided and stored in units. Hereinafter, the semantic vector of each chunk will be referred to as a "chunk vector". The search unit 15 compares the message vector with the chunk vector of each chunk related to the document data in the data storage unit 122 to be searched, and identifies the chunk related to the chunk vector with the highest similarity to the document data (hereinafter referred to as "similar chunk"). The search unit 15 compares the similarity of the similar chunks for each document data and extracts the top M similar chunks. Therefore, M documents are effectively extracted. Cosine similarity may be used to evaluate the similarity between vectors, or other metrics may be used. The search unit 15 includes in the search results information (hereinafter referred to as "related document information") that includes the top M similar chunks, the ID stored in the data storage unit 122 corresponding to the similar chunk (hereinafter referred to as "chunk ID"), and the ID stored in the data storage unit 122 corresponding to the document data to which the similar chunk belongs (hereinafter referred to as "document ID") and file name (hereinafter referred to as "document name"). Each data storage unit 122 may be a folder, database, or other management unit for a collection of document data.
[0036] The AI control unit 16 generates a prompt by applying the message received by the reception unit 11 and the set of similar chunks related to the search results from the search unit 15 to the system prompt set by the setting unit 13. In other words, the AI control unit 16 generates a prompt that expands the message received by the reception unit 11 with the set of similar chunks related to the search results from the search unit 15. The way in which the set of similar chunks related to the search results is included in the prompt may be the same as in the well-known RAG. The text of each chunk belonging to the set of similar chunks related to the search results may be included in the prompt, or a vector generated based on the chunk vector of the chunk may be included in the prompt. A simple example of a system prompt is as follows.
[0037] <Example of a system prompt> The following is a message from a user:
[0038] {message} Please use the following document as a reference to generate a response to the message.
[0039] {A set of similar chunks related to the search results} <End of system prompt example> Thus, the system prompt clearly defines a part for which a message is applied and a part for which a set of similar chunks related to the search results from the search unit 15 is applied. In this case, the AI control unit 16 applies the message received by the reception unit 11 to the {message} part of the system prompt, and applies the set of similar chunks related to the search results from the search unit 15 to the {set of similar chunks related to the search results} part, thereby generating the prompt. By inputting the prompt thus generated to the AI 150, the AI 150 can generate a response using knowledge included in the set of similar chunks related to the search results (knowledge that the AI 150 has not yet learned). In other words, the response from the AI 150 can be based on the set of similar chunks related to the search results. The system prompt may also include a string to notify the AI 150 of the role of the agent corresponding to the system prompt, such as "You are XXX." (where XXX is a string indicating a role).
[0040] Furthermore, if the control procedure includes multiple phases, a system prompt may be defined that explicitly indicates where to apply an intermediate response obtained in a phase preceding that phase (for example, an intermediate response obtained in any phase from the 1st phase to the (K-1)th phase to the Kth phase).
[0041] The AI control unit 16 also interacts with the AI 150 using control procedures that follow the control rules set by the setting unit 13. For each phase of the control procedure, the AI control unit 16 generates a prompt based on the system prompt corresponding to that phase, sends the prompt to the AI 150, and receives a response to the prompt from the AI 150.
[0042] Furthermore, each time a final response is received from the AI 150, the AI control unit 16 associates the final response with the message and search results that formed the basis of the final response and stores them in the history information storage unit 123. Intermediate responses may also be stored in association with the final response. Thus, the history information storage unit 123 stores history information of the interaction between the user and the agent (input / output of the AI 150).
[0043] Figure 6 shows an example of the history information storage unit 123. As shown in Figure 6, the history information storage unit 123 stores history information, including the session ID, user ID, response ID, message, and search results, for each final response from the AI 150. The session ID is a unique ID for each session. A session refers to a series of exchanges between the user and the agent, consisting of messages and final responses (or possibly intermediate responses), from the time the dialogue screen 510 is displayed until it is closed. The same session ID is assigned to final responses output in the same session. The user ID is identification information of the user who conducted the session (dialogue) related to the session ID. The user ID may be identified by performing user authentication. The response ID is, for example, a unique ID for each final response, and is assigned, for example, by the AI control unit 16 when it records the final response in the history information storage unit 123. The message and search results are the message and search results applied to the prompt that was the basis of the final response.
[0044] The display control unit 17 displays the agent, which is the user's conversation partner, in an identifiable manner on the screen of the application used by the user (app screen 300). Specifically, the display control unit 17 sends display content to the terminal 20 to be displayed in the conversation area 500 of the app screen 300. The terminal 20 displays the conversation screen, etc., in the conversation area 500 based on the display content. The display control unit 17 further displays information including the final response received by the AI control unit 16 (hereinafter referred to as "final response information") on the terminal 20 that sent the message. The final response information includes not only the final response but also information indicating the document data to which each similar chunk related to the search results by the search unit 15 belongs. Therefore, the user can confirm what kind of document data was used as the basis for generating the final response.
[0045] The display control unit 17 also displays the one or more agents on the terminal 20 as selectable if the agent control unit 12 determines that there are one or more agents capable of outputting a more appropriate response than the executing agent. Furthermore, when the executing agent is switched, the display control unit 17 displays on the terminal 20 in a way that makes it identifiable that the conversation partner has been switched.
[0046] On the other hand, terminal 20 has a reception unit 21, a communication unit 22, and a display control unit 23. Each of these units is realized by a program installed on terminal 20 that causes the terminal 20's CPU to execute a process.
[0047] The reception unit 21 receives user operations on the terminal 20.
[0048] The communication unit 22 controls communication with the information processing device 10.
[0049] The display control unit 23 controls the display of screens, etc. (for example, the dialogue screen 510 described later) based on information (display content), etc., received from the information processing device 10.
[0050] The following describes the processing procedure performed by the information processing system. Figure 7 is a sequence diagram illustrating an example of the processing procedure performed by the information processing system in the first embodiment. At the start of the processing procedure in Figure 7, the user has already logged in to the information processing device 10 (authenticated by the information processing device 10) using the dialogue area 500 of the application screen 300 displayed on the terminal 20, and the execution agent selection screen is displayed in the dialogue area 500. The execution agent selection screen displays a list of selectable agents. In this case, the list may include agents sorted in an order based on the agent's role (for example, alphabetically by the string indicating the role). Furthermore, some agents from this list may be searchable. In this case, it may be possible to input search keywords on the execution agent selection screen, and some agents with a relatively high similarity in roles to the keyword may be displayed on the execution agent selection screen.
[0051] When the user selects one of the agents displayed on the execution agent selection screen, terminal 20 sends the identification information of the selected agent (hereinafter referred to as "agent ID") to information processing device 10 (S101).
[0052] When the receiving unit 11 of the information processing device 10 receives the agent ID, it inputs the agent ID to the agent control unit 12 (S102).
[0053] The agent control unit 12 obtains agent information corresponding to the input agent ID from the agent information storage unit 121 (S103).
[0054] Hereinafter, the agent information obtained in step S103 of Figure 7 will be referred to as "executing agent information".
[0055] Next, the agent control unit 12 inputs the execution agent information to the setting unit 13 (S104).
[0056] The setting unit 13 sets the data source ID of the input execution agent information to the search unit 15 (S105), and sets the control rules and system prompts of the execution agent information to the AI control unit 16 (S106). As a result, the search unit 15 searches the data storage unit 122 corresponding to the execution agent, and the AI control unit 16 executes the control procedure corresponding to the execution agent.
[0057] The agent control unit 12 also notifies the display control unit 17 of the execution agent information (S107). The display control unit 17 displays a dialogue screen in the dialogue area 500 of the application screen 300 displayed on the terminal 20, where the dialogue partner with the user is the agent related to the execution agent information (execution agent) (S108). Specifically, the display control unit 17 generates display data for the dialogue screen and sends this display data to the terminal 20 in order to display the dialogue screen. The terminal 20 displays the dialogue screen in the dialogue area 500 based on this display data.
[0058] Figure 8 shows an example of the display of the dialogue screen at the start of a dialogue. The dialogue screen 510 shown in Figure 8 includes a dialogue display area 511, a message input area 512, and a button 513, and is displayed in the dialogue area 500 of the application screen 300 (Figure 2). The dialogue display area 511 is the area where the content of the dialogue between the execution agent and the user is displayed. In the initial state, the dialogue display area 511 displays a greeting message g1 ("We will help you with your work.") prompting the user to enter a message. To the left of the greeting message g1, the execution agent icon ai1 is displayed. Icon ai1 is an image stored in a file related to the icon name of the execution agent information. The user can visually recognize the agent they are currently interacting with (i.e., the execution agent) by icon ai1. The message input area 512 is the area for receiving message input from the user and includes a send icon 5121. Button 513 is a button for receiving a command to end the dialogue.
[0059] When a user enters a message into the message input area and clicks the send icon 5121, the terminal 20 sends the message (hereinafter referred to as the "target message") and the application data (hereinafter referred to as the "target application data") of the application corresponding to the application screen 300 that includes the dialogue screen 510 in the dialogue area 500 (hereinafter referred to as the "target application") to the information processing device 10 (S201). At this time, the data sent as the target application data may be, for example, all of the data that the target application is processing (including hidden parts), the data within the range that is displayed in the data, or the data within the range that has been selected by the user.
[0060] When the reception unit 11 receives the target message and target application data, it inputs the target message and target application data to the agent control unit 12 (S202). The agent control unit 12 inputs an agent selection request to the AI control unit 16, which includes the target message and target application data and a list of all agent information stored in the agent information storage unit 121 (S203). This selection request means a request to select one or more agents (hereinafter referred to as "suitable agents") that are more suitable than the execution agent for generating a response to the target message from a user who is using (viewing or editing) the target application data. Being more suitable than the execution agent for generating a response means being able to output a more appropriate response than the execution agent.
[0061] The AI control unit 16 generates a prompt to instruct the AI 150 to select one or more suitable agents based on the input target message, target application data, and agent information list, as well as system prompts prepared in advance for selecting a suitable agent, and sends the prompt to the AI 150 (S204). The prompt generated at this time requests the selection of one or more agents from among several agents, each with a different role, whose role is more appropriate than that of the executing agent for generating a response from a user using the target application data. In other words, the prompt causes the AI to determine what type of response the user is seeking based on the message entered by the user using the target application data, and then causes the AI to determine one or more agents capable of providing that type of response based on the role of each agent.
[0062] A simple example of a system prompt, which is a template for this prompt, is as follows:
[0063] <Example of a system prompt> The following is a message from a user:
[0064] {message} The following is what the application this user is using to enter their message is displaying:
[0065] {app data} The following are candidates for agents that can respond to the above message:
[0066] {List of Agent IDs and Agent Descriptions} From the agents listed above, select all agents that can output a more appropriate response to the above message than {executing agent}, taking into account the content displayed by the application the user is using, and output the agent ID of those agents.
[0067] <End of system prompt example> In this case, the AI control unit 16 generates the prompt by substituting the target message into the {message} part of the system prompt, the target application data into the {application data} part, the agent ID and description (i.e., the role of the agent) for each agent into the {list of agent IDs and agent descriptions} part, and the agent ID of the executing agent into the {executing agent} part. Note that the above system prompt instructs the selection of "all" agents that can output a more appropriate response than the executing agent, but it may also be "the top X agents" instead of "all".
[0068] The target application data may be a portion of the information entered into the application, or it may be all of the information entered into the application. For example, in the case of a spreadsheet application, only the data displayed on the screen may be used as the target application data, or all the data entered into the file that the user is editing in the spreadsheet application may be used as the target application data.
[0069] Upon receiving the prompt generated as described above, AI150 selects one or more suitable agents from those listed in the prompt based on its learned parameters, and generates a response containing the ID of the selected agent. AI150 then sends this response to AI control unit 16.
[0070] Next, the AI control unit 16 receives a response from the AI 150 (S205). This response is the agent ID of one or more agents selected as suitable agents. Subsequently, the AI control unit 16 outputs the agent ID of each of these one or more agents (hereinafter referred to as "suitable agent ID") to the agent control unit 12 (S206).
[0071] The agent control unit 12 inputs all suitable agent IDs output by the AI control unit 16 to the display control unit 17 (S207). Subsequently, the display control unit 17 generates display data for a dialogue screen 510 that includes display information for selecting a new execution agent (an agent that generates a response to the target message) from among one or more suitable agents, and transmits the generated display data to display the screen in the dialogue area 500 of the application screen 300 (Figure 2) displayed on the terminal 20 (S208).
[0072] Figure 9 shows an example of a dialogue screen displaying information for selecting a new execution agent. In Figure 9, the same parts as in Figure 8 are denoted by the same reference numerals, and their explanations are omitted. In the dialogue screen 510 shown in Figure 9, message m1, icon ui1, notification text n1, and buttons b1 to b3 have been added. Note that the dialogue screen 510 in Figure 9 is also displayed in the dialogue area 500 of the application screen 300 (Figure 2).
[0073] Message m1 is the target message entered by the user in the message input area 512 in step S201. When the user clicks the send icon 5121, the target message entered in the message input area 512 is displayed in the dialogue display area 511. Icon ui1 is the user's icon.
[0074] Notification message n1 and buttons b1-b3 are examples of display information used to select a new execution agent from one or more suitable agents.
[0075] Notification message n1 is a notification prompting the user to select an agent. Buttons b1 and b2 correspond to each suitable agent and are buttons to select the corresponding suitable agent as the new execution agent. In Figure 9, there are two buttons to accommodate an example where there are two suitable agents. Button b3 is a button to select not to change the execution agent.
[0076] Figure 10 also shows a modified example of a dialogue screen that includes display information for selecting a new execution agent. In Figure 10, the same parts as in Figure 9 are denoted by the same reference numerals, and their descriptions are omitted. The dialogue screen 510 in Figure 10 is also displayed in the dialogue area 500 of the application screen 300 (Figure 2). The dialogue screen 510 in Figure 10 does not include button b3. In this way, it may be possible to make it impossible to select not to change the execution agent.
[0077] When the user selects one of buttons b1 to b3, terminal 20 sends the agent ID of the agent corresponding to the selected button (hereinafter referred to as the "selected agent ID") to the information processing device 10 (S209). If button b1 or b2 is selected, the agent ID of the appropriate agent corresponding to the selected button becomes the selected agent ID. If button b3 is selected, the agent ID of the currently executing agent becomes the selected agent ID.
[0078] In addition, if button b1 or b2 is selected in Figure 10, terminal 20 may ask the user whether or not to switch the execution agent before sending the selected agent ID.
[0079] Figure 11 shows an example of a display of a dialogue screen that allows the user to choose whether or not to switch execution agents. In Figure 11, the same reference numerals are used for parts identical to those in Figure 10, and their explanations are omitted. The dialogue screen 510 in Figure 11 is also displayed in the dialogue area 500 of the application screen 300 (Figure 2). The dialogue screen 510 in Figure 11 corresponds to the case when button b2 is selected and includes a string indicating whether or not to switch to the analysis agent, as well as buttons b3 and b4. Button b3 is a button to accept the selection to switch. Button b4 is a button to accept the selection not to switch. In this case, if button b3 is selected, terminal 20 sends the selected agent ID to the information processing device 10, and if button b4 is selected, terminal 20 sends the agent ID of the current execution agent to the information processing device 10.
[0080] When the agent control unit 12 receives the selected agent ID, it compares the selected agent ID with the agent ID of the execution agent information obtained in step S103 (hereinafter referred to as the "execution agent ID") to determine if there is an agent that can output a more appropriate response to the target message than the execution agent (S210).
[0081] If the selected agent ID and the execution agent ID are different, the agent control unit 12 determines that there is an agent capable of outputting a more appropriate response to the target message than the execution agent. In this case, steps SS211 to S260 are executed, and the execution agent is changed. If the selected agent ID and the execution agent ID are the same, the agent control unit 12 determines that there is no agent capable of outputting a more appropriate response to the target message than the execution agent. In this case, steps SS211 to S260 are not executed, and steps S271 onwards are executed.
[0082] First, let's explain the case where the selected agent ID and the execution agent ID are the same (when button b3 in Figure 9 is selected).
[0083] In step S271, the agent control unit 12 inputs the target message to the conversion unit 14.
[0084] The conversion unit 14 generates a message vector by converting the input target message into a semantic vector (S272). Subsequently, the conversion unit 14 inputs the message vector (hereinafter referred to as the "target message vector") and the target message to the search unit 15 (S273).
[0085] The search unit 15 compares the input target message vector with the chunk vectors stored in the data storage unit 122 (i.e., the data storage unit 122 corresponding to the execution agent) associated with the data source ID set by the setting unit 13, for each document data and each chunk. The search unit 15 identifies similar chunks for each document data and extracts some similar chunks with relatively high similarity to the target message (S274). For example, the top X similar chunks based on similarity between the target message vector and the chunk vector are extracted. The search unit 15 generates search results for each extracted similar chunk, including related document information for that similar chunk. Next, the search unit 15 inputs the search results and the target message to the AI control unit 16 (S275).
[0086] The AI control unit 16 generates a prompt based on the input search results and target message, and the control rules and system prompts set by the setting unit 13 (S276). Subsequently, the AI control unit 16 sends the prompt to the AI 150 (S277). The AI control unit 16 receives the response generated by the AI 150, which received the prompt, from the AI 150 (S278). Depending on the control procedure, the first response may not be the final response, and the final response may be obtained by repeating steps S276 to S278 multiple times.
[0087] When the AI control unit 16 receives a final response, it records the final response in the history information storage unit 123, associating it with the target message and the search result.
[0088] Next, the AI control unit 16 inputs the final response information, including the final response (hereinafter referred to as the "target final response") and related document information from the search results, to the display control unit 17 (S279).
[0089] The display control unit 17 displays the input final response information (target final response and related document information) on the dialogue screen 510 displayed on the terminal 20 (S280). Specifically, the display control unit 17 generates display data for the final response information and transmits the generated display data to the terminal 20, thereby displaying the final response information on the dialogue screen 510 displayed on the terminal 20.
[0090] Figure 12 shows an example of the display of the final response information. In Figure 12, the same parts as in Figure 9 are denoted by the same reference numerals, and their explanations are omitted. The dialogue screen 510 in Figure 12 is also displayed in the dialogue area 500 of the application screen 300 (Figure 2). In the dialogue screen 510 shown in Figure 12, the response r1 and related document information d1 have been added.
[0091] Response r1 is the final response to the target. Related document information d1 is related document information for the final response to the target. Therefore, the information including response r1 and related document information d1 is the final response information for message m1. Figure 12 shows an example where a list of document names included in the related document information is displayed as related document information d1. The final response to the target may also be output in multiple callouts.
[0092] Furthermore, in Figure 12, icon ai2 has been added to the left of response r1. Icon ai2 is the icon of the execution agent that made the final response. Here, the execution agent has not been switched, so icon ai2 is the same as icon ai1.
[0093] Note that Figure 12 shows an example where the notification message n1 and buttons b1-b3, which were displayed in Figure 9, are deleted. However, the notification message n1 and buttons b1-b3 may also be displayed in the dialogue screen 510 of Figure 12.
[0094] The user may continue the conversation or end it. If the user chooses to end the conversation, they click button 513. In this case, the session ends, and the processing procedure in Figure 7 is completed. If the user chooses to continue the conversation, they enter a new message in the message input area 512 and click the send icon 5121. In this case, the steps from S201 onward are repeated with this message as the target message. That is, steps from S201 onward are repeatedly executed until button 513 is clicked.
[0095] This section describes the case where the selected agent ID and the execution agent ID differ during the execution of steps S201 and later. In this case, steps S211 to S260 are executed.
[0096] In step S211, the agent control unit 12 obtains agent information corresponding to the selected agent ID from the agent information storage unit 121 (Figure 5) as execution agent information. In steps S220 to S250, the same processing as in steps S104 to S107 is performed. In step S250, the display control unit 17, having been notified of new execution agent information, displays information on the currently displayed dialogue screen 510 that allows it to identify that the execution agent has been switched (S260). Specifically, the display control unit 17 generates display data to display information that allows it to identify that the execution agent has been switched, and transmits the display data to the terminal 20.
[0097] Figure 13 shows an example of a display of a dialogue screen indicating the switching of the execution agent. In Figure 13, the same parts as in Figure 12 are denoted by the same reference numerals, and their explanations are omitted. The dialogue screen 510 in Figure 13 is also displayed in the dialogue area 500 of the application screen 300 (Figure 2). In the dialogue screen 510 shown in Figure 13, message m2, notification message n2, and greeting message g2 have been added. Message m2 is a new target message. Figure 13 shows an example of the display when the suitable agent for message m2 is not the execution agent. Therefore, before the notification message n2 and greeting message g2, display information corresponding to the notification message n1 and buttons b1~b3 shown in Figure 9 is displayed below message m2 in step S208, and the dialogue screen 510 in Figure 13 is displayed when the button corresponding to the suitable agent is selected.
[0098] Notification message n2 and greeting message g2 are display information added in step S260 to notify the user of the switch in execution agents. Notification message n2 is a string indicating the switch in execution agents. Greeting message g2 is a greeting message from the new execution agent.
[0099] Furthermore, the icon ai3 to the left of the greeting message g2 is different from the previous execution agent icons ai1 and ai2. This is because icon ai3 is an icon related to the icon name included in the agent information of the new execution agent. In this way, the user can identify the switch in execution agents by changing the icon.
[0100] Following step S260 in Figure 7, steps S271 and onward are executed. In this case, the search unit 15 searches for document data from the data storage unit 122 corresponding to the data source ID set in step S230 (S274). The AI control unit 16 then obtains the final response by executing steps S276 to S278 based on the control rules and system prompts set in step S240. As a result, the final response can be obtained that is based on different document data than the execution agent before the switchover, and based on different system prompts (query methods) than the execution agent before the switchover. In other words, a final response corresponding to the execution agent after the switchover is obtained. Therefore, the possibility of outputting a more appropriate response to a message from the user increases.
[0101] As described above, according to the first embodiment, it is determined whether there is one or more agents (second agents) among several types of agents, each with a different role, that can output a more appropriate response than the execution agent (first agent) to the message received from the user and the content displayed by the application the user is using. If such agents exist, one or more second agents are displayed as selectable, and the execution agent is switched to the selected second agent. Therefore, it is possible to switch to an agent that can output a more appropriate response to the message received from the user. As a result, the quality of the response to the message received from the user can be improved. In particular, by determining the appropriate agent using not only the message but also the application data, it is possible to determine the appropriate agent for the same message while also considering the user's situation (what kind of data the user is referring to or inputting). For example, if the user is inputting data using a spreadsheet application, the likelihood of an agent that performs data analysis being selected as the appropriate agent can be increased.
[0102] In the above embodiment, in step S260 (Figure 7), the notification message n1, greeting message g2, and icon ai3 in Figure 13 are shown as examples of information that can identify that the execution agent has been switched. However, this information may be implemented in other forms. For example, in step S260, the display control unit 17 may display the agent name of the execution agent in addition to icon ai3, or instead of icon a13. Alternatively, in step S260, the display control unit 17 may display a new dialogue screen 510 on the terminal 20 for interacting with the switched execution agent, separate from the currently displayed dialogue screen 510. The display may be implemented in other forms as long as the user can identify the switch in the execution agent.
[0103] Furthermore, in each of the above embodiments, the identification of a suitable agent is shown in the procedure described in steps S202 to S206 (Figure 7), but a suitable agent may be identified by other procedures.
[0104] For example, after determining whether an execution agent is suitable, if the execution agent is not suitable, a suitable agent may be identified. This case will be described as a second embodiment.
[0105] Figure 14 is a sequence diagram illustrating an example of a processing procedure performed by the information processing system in the second embodiment. In Figure 14, the same step numbers as in Figure 7 are used, and their explanations are omitted.
[0106] Following step S202, the agent control unit 12 inputs the target message, target application data, and the agent information of the current executing agent (executing agent information) to the AI control unit 16 (S301). The AI control unit 16 uses the target message, target application data, and the explanatory text of the executing agent information to generate a prompt to inquire about the suitability of the executing agent (S302). For example, a prompt may be generated that states, "The executing agent will perform the role described in the explanatory text, but is it suitable for responding to the target message from a user using the application displaying the target application data?" The AI control unit 16 sends the prompt to the AI 150 (S303) and receives a response from the AI 150 (a response indicating the suitability of the executing agent) (S304). The AI control unit 16 outputs the response (i.e., the suitability of the executing agent) to the agent control unit 12 (S305). If the response indicates that the executing agent is suitable, steps S202 to S260 are not executed, and steps S271 onwards are executed. If the response indicates that the execution agent is unsuitable, steps S202 and beyond are executed. In this case, step S210 determines whether an agent other than the execution agent has been selected.
[0107] In this way, by pre-preparing control rules for each agent, it is possible to switch the conversation partner to another agent that can respond appropriately to a message, based on the user's input message and the explanatory text that describes the role and capabilities of the agent as controlled by the control rules. Furthermore, by deciding whether or not to switch agents each time a message is received, even in the middle of a conversation with a conversational AI, if a suitable conversational AI that can respond to the message exists, the user can be presented with another conversational AI and the conversation can be switched. As a result, the user can switch to a different conversational AI while continuing the conversation on the same screen, without having to transition to another screen such as a conversational AI selection screen.
[0108] In the embodiments described above, examples were shown in which the user selects the execution agent, but the agent control unit 12 may automatically select the execution agent. In this case, the prompt in step S204 of Figure 7 or Figure 14 should be a prompt requesting the user to select one or more agents with different roles from among several agents that can generate the most appropriate response to a message from a user using the target application.
[0109] A simple example of a system prompt, which is a template for this prompt, is as follows:
[0110] <Example of a system prompt> The following is a message from a user:
[0111] {message} The following is what the application this user is using to enter their message is displaying:
[0112] {app data} The following are candidates for agents that can respond to the above message:
[0113] {List of Agent IDs and Agent Descriptions} From the agents listed above, select the agent that can output the most appropriate response to the above message, taking into account the content displayed by the application the user is using, and output the agent ID of that agent.
[0114] <End of system prompt example> In this case, steps S208 and S209 are not executed. If the agent ID output from AI150 differs from the agent ID of the executing agent, steps S211 to S260 are executed. Therefore, if the executing agent is switched when message m1 in Figure 9 is the target message, the user is not given the opportunity to select an executing agent (buttons b1 to b3 are not displayed), and the final response is displayed in step S280.
[0115] Figure 15 shows an example of the display of the dialogue screen when switching execution agents without allowing the user to select one. In Figure 15, the same parts as in Figure 12 are denoted by the same reference numerals, and their explanations are omitted. The dialogue screen 510 in Figure 15 is also displayed in the dialogue area 500 of the application screen 300 (Figure 2). In Figure 15, the notification message n3 is display information added in step S260 to notify the user of the automatic switching of execution agents.
[0116] Furthermore, when automatically switching execution agents, the user may be given the option to choose whether or not to switch execution agents, similar to Figure 11.
[0117] In the embodiments described above, examples were shown in which a user and an agent interact in the dialogue area 500, but the screen configuration for the dialogue in the application screen 300 is not limited to these.
[0118] Figure 16 shows a modified example of a screen configuration for interaction in an application screen. In Figure 16, parts that are the same as or corresponding to those in Figure 2 or Figure 9 are denoted by the same reference numerals, and their descriptions are omitted as appropriate.
[0119] The app screen 300 in Figure 16 does not include the dialogue area 500, but includes a message input area 512 below the content area 400. To the left of the message input area 512 is the icon of the agent who is currently interacting with the user (icon ai1 in Figure 16). The message input area 512 displays not only the message entered by the user but also the response from the agent. The state of the message input area 512 in Figure 16 corresponds to the state of the dialogue screen 510 in Figure 9. Specifically, the message input area 512 in Figure 16 shows the state after the user has entered message m1 and clicked the send icon 5121, with the notification text n1 and buttons b1-b3 displayed. Note that the response from the agent may be displayed in the content area 400 instead of the message input area 512.
[0120] Thus, the screen configuration for interaction on the application screen 300 is not limited to a specific one. Interaction between the user and the agent on the application screen 300 may take place using a screen configuration other than the one exemplified in this embodiment. In such an embodiment, for example, when a message is input while interacting with a certain execution agent (first agent), if the user has input personnel regulations-related data as application data in the application, the agent control unit 12 switches to a personnel regulations agent (second agent) that can output responses related to the input data and can output appropriate responses to the input message, more so than the first agent. Also, when the same message is input while interacting with a certain execution agent (first agent), if the user has input accounting-related data as application data in the application, the agent control unit 12 switches to an accounting agent (third agent) that can output responses related to the input data and can output appropriate responses to the input message, more so than the first agent. Thus, a key feature of this invention is that even if the same message is input to an execution agent, if the input application data is different, the system can switch to a different agent based on the application data. Next, a third embodiment will be described. The third embodiment will describe the differences (or points not explicitly explained) from the first embodiment. Therefore, points not specifically mentioned may be the same as in the first embodiment. In the third embodiment, we will describe an example in which the terminal 20 displays various screens using a web browser, and the information processing device 10 functions as a web server that executes web applications. Figure 17 shows an example of the functional configuration of terminal 20 in the third embodiment. In Figure 17, terminal 20 has a web browser 210. The web browser 210 is a general-purpose web browser and includes a browser engine 211, a scripting engine 212, and a network engine 213. Browser engine 211 interprets HTML (HyperText Markup Language) data and CSS (Cascading Style Sheets) data that make up a web page and displays the web page. Script engine 212 executes scripts that make up a web page (for example, JavaScript®). The network engine 213 sends HTTP requests and receives HTTP responses. Figure 18 is a sequence diagram illustrating an example of a screen transition process in the third embodiment. At the start of the process in Figure 18, the web browser 210, which is included in the dialogue area 500 of the application screen 300 displayed on the terminal 20, is assumed to be displaying the execution agent selection screen. Figure 19 shows an example of the execution agent selection screen. As shown in Figure 19, icons 611 to 614 are displayed for each selectable agent on the execution agent selection screen. When a user selects an icon from the execution agent selection screen (S401), the browser engine 211 inputs to the network engine 213 a URL that includes the agent ID of the agent corresponding to the selected icon or information identifying the selected icon as optional information, and which will be the destination of an HTTP request to the information processing device 10 (S402). The network engine 213 sends an HTTP request to that URL (S403). The display control unit 17 of the information processing device 10 generates an HTTP response in response to the HTTP request, which includes Web content data (HTML data, CSS data, and scripts (hereinafter referred to as "JS")) corresponding to the URL to which the HTTP request is headed (S403). This Web content is for displaying multiple Web pages that will be shown later. The JS also includes multiple JS scripts that perform processing according to the operation on each screen. Next, the display control unit 17 sends the HTTP response generated in step S404 to the terminal 20 (S405). When the network engine 213 of terminal 20 receives the HTTP response, it inputs the HTML data, CSS data, and JS contained in the HTTP response into the browser engine 211 (S406). The browser engine 211 inputs the JS input from the network engine 213 into the script engine 212 (S407). The script engine 212 loads the JS (S408) and requests the browser engine 211 to update the screen (S409). The screen update includes displaying a new screen. Here, the HTTP response generated in step S404 may contain the filename of the JS file rather than the actual JS file itself. In this case, in step S408, the script engine 212 accesses the external file based on the filename and downloads the JS file. This method is a method of loading the JS file as an external file. Next, the browser engine 211 displays the dialogue screen 510 in the dialogue area 500 of the application screen 300 (Figure 8) based on the HTML data and CSS data (S410). For example, if icon 611 is selected on the execution agent selection screen 610, the dialogue screen 510 shown in Figure 8 is displayed in the dialogue area 500 of the application screen 300 (Figure 8). When the user enters a message into the message input area 512 of the dialogue screen 510 (Figure 8) and clicks the send icon 5121 (S411), the display content of the dialogue screen 510 changes as shown in Figure 20. In Figure 20, the message entered into the message input area 512 in Figure 8 (hereinafter referred to as the "target message") is displayed as message m1 in the dialogue display area 511, and an icon ui1 representing the user is added. Subsequently, the browser engine 211 executes the input of the target message and notifies the script engine 212 of the target message (S412). In response to a notification from the browser engine 211, the script engine 212 executes one of several JavaScripts, which is a JavaScript that performs the process of sending the target message and the application data of the target application to the information processing device 10 (S413), and inputs an HTTP request to the network engine 213 that corresponds to the input of the target message and includes the target message and the application data (S414). The network engine 213 sends the HTTP request including the target message and the application data to the information processing device 10 (S415). When the receiving unit 11 of the information processing device 10 receives the HTTP request, the information processing device 10 executes the processing requested by the HTTP request (S416). For HTTP requests corresponding to message input to the dialogue screen 510 in Figure 8, steps S202 to S207 in Figure 7 are executed. As a result, the processing result is obtained as one or more suitable agent IDs for the target message and the target application. Next, the display control unit 17 generates an HTTP response containing a JSON (JavaScript® Object Notation) file containing all the suitable agent IDs that are the processing results (S417). Subsequently, the display control unit 17 sends the HTTP response to the terminal 20 (S418). When the network engine 213 of terminal 20 receives the HTTP response, it inputs the JSON contained in the HTTP response to the script engine 212 (S419). The script engine 212 executes one of several JS scripts, which is a JS script that updates the display content of the web page based on the JSON (S420), and requests the browser engine 211 to update the display content of the web page based on the JSON (S421). The browser engine 211 updates the display content of the interactive screen 510 from the state shown in Figure 20 to the state shown in Figure 9 based on the HTML data and CSS data obtained in step S406 and the JSON (S422). Subsequently, steps S411 to S422 are repeated in response to user operations on the dialogue screen 510. However, the data to be processed changes in each step. For example, when a user selects one of the buttons b1 to b3 on the dialogue screen 510 (Figure 9) (S411), the browser engine 211 notifies the script engine 212 that the selection of that button has been executed (S412). In response to a notification from the browser engine 211, the script engine 212 executes one of several JavaScripts, which is a JavaScript that sends the agent ID corresponding to the selected button (selected agent ID) to the information processing device 10 (S413), thereby inputting a request to the network engine 213 to send an HTTP request corresponding to the selection of buttons b1 to b3, which includes the selected agent ID (S414). The network engine 213 sends the HTTP request including the selected agent ID to the information processing device 10 (S415). When the agent control unit 12 of the information processing device 10 receives the HTTP request, the information processing device 10 executes the processing requested by the HTTP request (S416). For HTTP requests corresponding to the selection of buttons b1 to b3 on the dialogue screen 510 in Figure 9, steps S210 onwards in Figure 7 are executed. Here, we will explain the case where steps S211 to S260 are executed following step S210. In this case, the display control unit 17 generates an HTTP response containing JSON that describes information that allows it to identify that the execution agent has been switched (S417). Subsequently, the display control unit 17 sends the HTTP response to the terminal 20 (S418). The HTTP response corresponds to step S260 in Figure 7. When the network engine 213 of terminal 20 receives the HTTP response, it inputs the JSON contained in the HTTP response into the script engine 212 (S419). The script engine 212 executes one of several JS scripts, which is a JS script that updates the display content of the web page based on the JSON (S420), and requests the browser engine 211 to update the display content of the web page based on the JSON (S421). The browser engine 211 updates the display content of the dialogue screen 510 from the state shown in Figure 9 to the state shown in Figure 21 based on the HTML data and CSS data obtained in step S406 and the JSON (S422). In the dialogue screen 510 shown in Figure 21, the notification message n1 and buttons b1~b3 that were displayed in Figure 9 have been removed, and the notification message n2, greeting message g2 and icon ai3 shown in Figure 13 have been added. In other words, one or more of the notification message n2, the greeting message g2, and the icon ai3 are examples of information that can identify that the execution agent has been switched, and the dialogue screen 510 containing this identification information is an example of a screen that shows the execution agent being switched. In the third embodiment, the agent control unit 12 may also automatically select the execution agent. In this case, in step S416 of steps S412 to S422 in Figure 18, which are executed in response to a message being entered as shown in the dialogue screen 510 in Figure 20, steps S202 to S207, S210, and S211 to S260 in Figure 7 are executed. Therefore, in this case, in step S417, an HTTP response is generated that includes JSON containing information that identifies that the execution agent has been switched. As a result, from the user's perspective, the display content of the dialogue area 500 of the application screen 300 transitions from the dialogue screen 510 in Figure 9 to the dialogue screen 510 in Figure 21. The third embodiment is also applicable when the application screen 300 has the modified layout shown in Figure 16. Figure 22 shows an example of screen transitions in a modified application screen in the third embodiment. In Figure 22, the message input area 512 in (1) corresponds to the execution agent selection screen in Figure 19. The icon ai1 and message input area 512 in (2), which is the destination from (1), corresponds to the dialogue screen 510 in Figure 20. The icon ai1 and message input area 512 in (3), which is the destination from (2), corresponds to the dialogue screen 510 in Figure 9. The icon ai3 and message input area 512 in (4), which is the destination from (3), corresponds to the dialogue screen 510 in Figure 21. As mentioned above, it is also possible to transition from (2) to (4). As described above, in the third embodiment, Web content data for displaying a screen that accepts message input from a user, which includes a first Web page (e.g., Figure 8) that displays information identifying the first dialogue AI, and a second Web page (e.g., Figure 21) that displays in a way that makes it possible to identify that the dialogue partner has been switched, is transmitted to the terminal 20. The Web content data includes a script that causes the information processing device 10 to send the message entered on the first Web page, and the second Web page that displays the screen showing the switch to the second dialogue AI. Furthermore, when the receiving unit 11 receives an HTTP request sent by the execution of the script on terminal 20, which includes the message entered on the first web page displayed on terminal 20 based on the web content data, the agent control unit 12, acting as a determination unit, determines, based on the message and the content entered into the application, whether there is a second dialogue AI among the multiple types of dialogue AIs that can output a more appropriate response to the message than the first dialogue AI. Furthermore, if the display control unit 17 determines that the second conversational AI exists, it includes information in the HTTP response, which is a response to the HTTP request, to indicate that the conversational partner has been switched and sends it to the terminal 20. In this way, in step S405, web content data including JavaScript that executes processing in response to operations on the first web page, the web page after the screen transition (such as the second web page) corresponding to that processing, and JavaScript that executes processing in response to operations on each of the subsequent web pages is sent to the terminal 20 all at once. Since each screen transition is executed by JavaScript, the terminal 20 does not need to download the web content data again after the screen transition. As a result, it is possible to solve technical issues such as improving the display speed of the second screen, etc., and reducing the communication load during screen transitions. Note that the script engine 212 is an example of a script execution unit. The browser engine 211 is an example of a display control unit. The network engine 213 is an example of a transmission unit and a reception unit. In the above embodiments, examples were shown in which the main functions of the information processing system are configured by the information processing device 10, but the terminal 20 may also be equipped with the functions of the information processing device 10. Figure 23 shows an example of the functional configuration of a terminal 20 equipped with the functions of the information processing device 10. In Figure 23, the same parts as in Figure 4 are denoted by the same reference numerals, and their descriptions are omitted. As described above, each functional configuration has the same functions as the functional configuration in Figure 4 and performs the same processing as the sequence diagrams in Figures 7 and 14. In Figure 23, the functions that the information processing device 10 had in each of the above embodiments are realized by processing that one or more programs installed on the terminal 20 cause the CPU of the terminal 20 to execute. Furthermore, each of the functions shown in Figure 4 (or Figure 23) may not be entirely possessed by either the information processing device 10 or the terminal 20; each may possess only some of the functions. When each possesses only some of the functions, the classification of the function group possessed by the information processing device 10 and the function group possessed by the terminal 20 is not limited to a specific form. For example, the processes S202 to S240 for identifying a suitable agent may be performed by the function group possessed by the terminal 20, while the processes S271 to S280 for creating the final response may be performed by the function group possessed by the information processing device 10.
[0121] Furthermore, the information processing device 10 is not limited to a general-purpose server computer, as long as it is a device equipped with communication functions. The information processing device 10 may be, for example, an output device such as a PJ (Projector), IWB (Interactive White Board: an electronic whiteboard with the ability to communicate with each other), or digital signage, a HUD (Head Up Display) device, industrial machinery, imaging devices, sound collection devices, medical equipment, networked home appliances, a notebook PC (Personal Computer), a mobile phone, a smartphone, a tablet device, a game console, a PDA (Personal Digital Assistant), a digital camera, a wearable PC, or a desktop PC.
[0122] Furthermore, each function of this embodiment can be realized by one or more processing circuits. Hereinafter, "processing circuit" as used herein includes processors programmed to execute each function by software, such as processors implemented by electronic circuits, as well as devices such as ASICs (Application Specific Integrated Circuits), DSPs (digital signal processors), FPGAs (field programmable gate arrays), and conventional circuit modules designed to execute the functions described above.
[0123] Furthermore, the apparatus in this embodiment represents only one of several computing environments for carrying out the embodiments disclosed herein.
[0124] In one embodiment, the information processing device 10 includes a plurality of computing devices, such as a server cluster. The plurality of computing devices are configured to communicate with each other via any type of communication link, including a network or shared memory, and perform the processing disclosed herein. Similarly, the terminal 20 may include a plurality of computing devices configured to communicate with each other.
[0125] Although embodiments of the present invention have been described in detail above, the present invention is not limited to these specific embodiments, and various modifications and changes are possible within the scope of the gist of the present invention as described in the claims.
[0126] Although embodiments of the present invention have been described in detail above, the present invention is not limited to these specific embodiments, and various modifications and changes are possible within the scope of the gist of the present invention as described in the claims.
[0127] Examples of the present invention are as follows:
[0128] <1> A display control unit that makes the first conversational AI, which is the conversation partner of the user, identifiable on the screen of the application on the terminal operated by the user, among several types of conversational AIs with different roles that interact with the user, A receiving unit that receives messages for the conversational AI entered in the aforementioned terminal, A determination unit determines, based on the message and the content input to the application, whether there is a second dialogue AI among the multiple types of dialogue AIs that can output a more appropriate response to the message than the first dialogue AI; If it is determined that the second dialogue AI exists, a switching unit switches the dialogue partner to the second dialogue AI, It has, The display control unit causes the application screen of the terminal to display in an identifiable manner that the conversation partner has been switched. An information processing system characterized by the following: <2> The display control unit causes the interaction between the user and the conversational AI to be displayed in a portion of the application's screen. Characterized by <1> The information processing system described above. <3> If the display control unit determines that one or more of the second dialogue AIs exist, it will display the second dialogue AIs in a selectable format. Characterized by <1> or <2> The information processing system described above. <4> Each of the aforementioned multiple types of conversational AI sends a different prompt to the AI in order to generate a response to the message received by the reception unit. Characterized by <1> ~ <3> The information processing system described in any of the following. <5> Each of the aforementioned multiple types of conversational AIs has a different source from which to obtain the document data to be included in the prompt. Characterized by <4> The information processing system described above. <6> The determination unit further makes a determination based on the message and the content entered into the application and displayed on the application's screen. Characterized by <1> ~ <5> The information processing system described in any of the following. <7> The determination unit determines whether there is a second dialogue AI that can output a more appropriate response than the first dialogue AI and is related to the content input to the application. Characterized by <1> ~ <6> The information processing system described in any of the following. <8> The display control unit displays information that identifies the second dialogue AI in response to a change in the dialogue partner. Characterized by <1> ~ <7> The information processing system described in any of the following. <9> The display control unit displays a message indicating that the user's conversation partner has been switched, in response to the switch in the conversation partner. Characterized by <1> ~ <8> The information processing system described in any of the following. <10> A display control unit that makes the first conversational AI, which is the conversation partner of the user, identifiable on the screen of the application on the terminal operated by the user, among several types of conversational AIs with different roles that interact with the user, A receiving unit that receives messages for the conversational AI entered in the aforementioned terminal, A determination unit determines, based on the message and the content input to the application, whether there is a second dialogue AI among the multiple types of dialogue AIs that can output a more appropriate response to the message than the first dialogue AI; If it is determined that the second dialogue AI exists, a switching unit switches the dialogue partner to the second dialogue AI, It has, The display control unit transmits display data to make it possible to identify on the application screen of the terminal that the conversation partner has been switched. An information processing device characterized by the following: <11> A first display control procedure that makes a first conversational AI, which is the conversation partner of the user, among several types of conversational AIs with different roles that interact with the user, identifiable on the screen of the application on the terminal operated by the user, A reception procedure for receiving a message to the conversational AI entered on the aforementioned terminal, A determination procedure for determining whether, among the multiple types of conversational AIs, there exists a second conversational AI that can output a more appropriate response to the message than the first conversational AI, based on the message and the content input to the application, If it is determined that the aforementioned second conversational AI exists, a switching procedure is provided to switch the conversation partner to the aforementioned second conversational AI, A second display control procedure that causes the application screen of the terminal to display in an identifiable manner that the conversation partner has been switched, An information processing method characterized by being executed by a computer. <12> A first display control procedure that makes a first conversational AI, which is the conversation partner of the user, among several types of conversational AIs with different roles that interact with the user, identifiable on the screen of the application on the terminal operated by the user, A reception procedure for receiving a message to the conversational AI entered on the aforementioned terminal, A determination procedure for determining whether, among the multiple types of conversational AIs, there exists a second conversational AI that can output a more appropriate response to the message than the first conversational AI, based on the message and the content input to the application, If it is determined that the aforementioned second conversational AI exists, a switching procedure is provided to switch the conversation partner to the aforementioned second conversational AI, A second display control procedure that causes the application screen of the terminal to display in an identifiable manner that the conversation partner has been switched, A program that causes a computer to execute something. <13> A display control unit that makes the first conversational AI, which is the conversation partner of the user, identifiable on the screen of the application on the terminal operated by the user, among several types of conversational AIs with different roles that interact with the user, A receiving unit that receives messages to the conversational AI entered on the terminal and content entered by the user into the application, A determination unit determines, based on the message and the content input to the application, whether there is a second dialogue AI among the multiple types of dialogue AIs that can output a more appropriate response to the message than the first dialogue AI; If it is determined that the second dialogue AI exists, a switching unit switches the dialogue partner to the second dialogue AI, It has, The display control unit causes the application screen of the terminal to display in an identifiable manner that the conversation partner has been switched. Web content data for displaying a screen that accepts message input from a user, comprising a first web page displaying information identifying the first dialogue AI, and a second web page displaying in an identifiable manner that the dialogue partner has been switched, wherein the web content data includes a script that at least causes the information processing device to send the message entered on the first web page, and causes the second web page displaying the screen that has been switched to the second dialogue AI, to be sent to the terminal, When the receiving unit receives an HTTP request sent by the execution of the script on the terminal, which includes the message entered on the first web page displayed on the terminal based on the web content data, the determination unit determines, based on the message and the content entered into the application, whether there is a second dialogue AI among the multiple types of dialogue AI that can output a more appropriate response to the message than the first dialogue AI. If the display control unit determines that the second dialogue AI exists, it includes information in the HTTP response, which is a response to the HTTP request, to indicate to the terminal that the dialogue partner has been switched, thereby enabling the identification of the switch. An information processing system characterized by the following: <14> A display control unit that makes the first conversational AI, which is the conversation partner of the user, identifiable on the screen of the application on the terminal operated by the user, among several types of conversational AIs with different roles that interact with the user, A receiving unit that receives messages for the conversational AI entered in the aforementioned terminal, A determination unit determines, based on the message and the content input to the application, whether there is a second dialogue AI among the multiple types of dialogue AIs that can output a more appropriate response to the message than the first dialogue AI; If it is determined that the second dialogue AI exists, a switching unit switches the dialogue partner to the second dialogue AI, It has, The display control unit causes the application screen of the terminal to display in an identifiable manner that the conversation partner has been switched. A terminal characterized by the following features. <15> An information processing system including an information processing device and a terminal, The aforementioned information processing device is A display control unit that makes the first conversational AI, which is the conversation partner of the user, identifiable on the screen of the application on the terminal operated by the user, among several types of conversational AIs with different roles that interact with the user, A receiving unit that receives messages to the conversational AI entered on the terminal and content entered by the user into the application, A determination unit determines, based on the message and the content input to the application, whether there is a second dialogue AI among the multiple types of dialogue AIs that can output a more appropriate response to the message than the first dialogue AI; If it is determined that the second dialogue AI exists, a switching unit switches the dialogue partner to the second dialogue AI, It has, The display control unit causes the application screen of the terminal to display in an identifiable manner that the conversation partner has been switched. Web content data for displaying a screen that accepts message input from a user, comprising a first web page displaying information identifying the first dialogue AI, and a second web page displaying in an identifiable manner that the dialogue partner has been switched, wherein the web content data includes a script that at least causes the information processing device to send the message entered on the first web page, and causes the second web page displaying the screen that has been switched to the second dialogue AI, to be sent to the terminal, When the receiving unit receives an HTTP request sent by the execution of the script on the terminal, which includes the message entered on the first web page displayed on the terminal based on the web content data, the determination unit determines, based on the message and the content entered into the application, whether there is a second dialogue AI among the multiple types of dialogue AI that can output a more appropriate response to the message than the first dialogue AI. If the display control unit determines that the second dialogue AI exists, it includes information for indicating that the dialogue partner has been switched in the HTTP response, which is the response to the HTTP request, and sends it to the terminal. The aforementioned terminal is A script execution unit that executes the aforementioned script, A display control unit that displays the first web page by executing the script, A transmission unit that transmits the HTTP request containing the message entered on the first web page to the information processing device, A receiving unit that receives the HTTP response containing information for displaying in an identifiable manner that the dialogue partner has been switched, It has, By executing the script, the display control unit causes the second web page to display a screen that indicates that the conversation partner has been switched. An information processing system characterized by the following: [Explanation of symbols]
[0129] 10 Information Processing Devices 11 Reception Department 12 Agent Control Unit 13. Settings Section 14 Conversion section 15 Search Section 16 AI control section 17 Display Control Unit 20 devices 21 Reception Department 22 Communications Department 23 Display Control Unit 121 Agent Information Storage Unit 122 Data Storage Unit 123 History Information Storage Unit 150 AI 210 Web Browsers 211 Browser Engines 212 Script Engine 213 Network Engine a1 Agent [Prior art documents] [Patent Documents]
[0130] [Patent Document 1] International Publication No. 2021 / 231631
Claims
1. A display control unit that makes the first conversational AI, which is the conversation partner of the user, identifiable on the screen of the application on the terminal operated by the user, among multiple types of conversational AIs that interact with the user and have different roles, A receiving unit that receives messages to the conversational AI entered in the aforementioned terminal, A determination unit determines, based on the message and the content input to the application, whether there is a second dialogue AI among the multiple types of dialogue AIs that can output a more appropriate response to the message than the first dialogue AI, If it is determined that the second dialogue AI exists, a switching unit switches the dialogue partner to the second dialogue AI, It has, The display control unit causes the application screen of the terminal to display in an identifiable manner that the conversation partner has been switched. An information processing system characterized by the following:
2. The display control unit causes the dialogue between the user and the conversational AI to be displayed in a portion of the application's screen. The information processing system according to feature 1.
3. If the display control unit determines that one or more of the second dialogue AIs exist, it will display the second dialogue AIs in a selectable format. The information processing system according to feature 1.
4. Each of the aforementioned multiple types of conversational AIs sends a different prompt to the AI in order to generate a response to the message received by the reception unit. The information processing system according to feature 1.
5. Each of the aforementioned multiple types of conversational AI has a different source from which to obtain the document data to be included in the prompt. The information processing system according to feature 4.
6. The determination unit further makes a determination based on the message and the content entered into the application and displayed on the application's screen. The information processing system according to feature 1.
7. The determination unit determines whether there is a second dialogue AI that can output a more appropriate response than the first dialogue AI and is related to the content input to the application. The information processing system according to feature 1.
8. The display control unit displays information identifying the second dialogue AI in response to a change in the dialogue partner. The information processing system according to feature 1.
9. The display control unit displays a message indicating that the user's conversation partner has been switched, in response to the switch in the conversation partner. The information processing system according to feature 1.
10. A display control unit that makes the first conversational AI, which is the conversation partner of the user, identifiable on the screen of the application on the terminal operated by the user, among multiple types of conversational AIs that interact with the user and have different roles, A receiving unit that receives messages to the conversational AI entered in the aforementioned terminal, A determination unit determines, based on the message and the content input to the application, whether there is a second dialogue AI among the multiple types of dialogue AIs that can output a more appropriate response to the message than the first dialogue AI, If it is determined that the second dialogue AI exists, a switching unit switches the dialogue partner to the second dialogue AI, It has, The display control unit transmits display data to make it possible to identify on the application screen of the terminal that the conversation partner has been switched. An information processing device characterized by the following:
11. A first display control procedure that causes a first conversational AI, which is the conversational AI partner with the user, to be displayed in an identifiable manner on the screen of an application on a terminal operated by the user, among several types of conversational AIs that interact with a user and have different roles, A reception procedure for receiving a message to the conversational AI entered on the aforementioned terminal, A determination procedure for determining, based on the message and the content input to the application, whether there is a second dialogue AI among the multiple types of dialogue AIs that can output a more appropriate response to the message than the first dialogue AI, If it is determined that the aforementioned second dialogue AI exists, a switching procedure is provided to switch the dialogue partner to the aforementioned second dialogue AI, A second display control procedure that causes the application screen of the terminal to display in an identifiable manner that the conversation partner has been switched, An information processing method characterized by the execution of a computer.
12. A first display control procedure that causes a first conversational AI, which is the conversational AI partner with the user, to be displayed in an identifiable manner on the screen of an application on a terminal operated by the user, among several types of conversational AIs that interact with a user and have different roles, A reception procedure for receiving a message to the conversational AI entered on the aforementioned terminal, A determination procedure for determining, based on the message and the content input to the application, whether there is a second dialogue AI among the multiple types of dialogue AIs that can output a more appropriate response to the message than the first dialogue AI, If it is determined that the aforementioned second dialogue AI exists, a switching procedure is provided to switch the dialogue partner to the aforementioned second dialogue AI, A second display control procedure that causes the application screen of the terminal to display in an identifiable manner that the conversation partner has been switched, A program that causes a computer to execute something.
13. A display control unit that makes the first conversational AI, which is the conversation partner of the user, identifiable on the screen of the application on the terminal operated by the user, among multiple types of conversational AIs that interact with the user and have different roles, A receiving unit that receives messages to the conversational AI entered on the terminal and content entered by the user into the application, A determination unit determines, based on the message and the content input to the application, whether there is a second dialogue AI among the multiple types of dialogue AIs that can output a more appropriate response to the message than the first dialogue AI, If it is determined that the second dialogue AI exists, a switching unit switches the dialogue partner to the second dialogue AI, It has, The display control unit causes the application screen of the terminal to display in an identifiable manner that the conversation partner has been switched. Web content data for displaying a screen that accepts message input from a user, comprising a first web page displaying information identifying the first conversational AI, and a second web page displaying in an identifiable manner that the conversation partner has been switched, wherein the web content data includes a script that causes the information processing device to transmit the message entered on the first web page, and to display the second web page that displays the screen showing the switch to the second conversational AI, and the web content data is transmitted to the terminal. When the receiving unit receives an HTTP request transmitted by the execution of the script on the terminal, which includes the message entered on the first web page displayed on the terminal based on the web content data, the determination unit determines, based on the message and the content entered into the application, whether there is a second dialogue AI among the multiple types of dialogue AI that can output a more appropriate response to the message than the first dialogue AI. If the display control unit determines that the second conversational AI exists, it includes information for indicating that the conversation partner has been switched in the HTTP response, which is a response to the HTTP request, and transmits it to the terminal. An information processing system characterized by the following:
14. A display control unit that makes the first conversational AI, which is the conversation partner of the user, identifiable on the screen of the application on the terminal operated by the user, among multiple types of conversational AIs that interact with the user and have different roles, A receiving unit that receives messages to the conversational AI entered in the aforementioned terminal, A determination unit determines, based on the message and the content input to the application, whether there is a second dialogue AI among the multiple types of dialogue AIs that can output a more appropriate response to the message than the first dialogue AI, If it is determined that the second dialogue AI exists, a switching unit switches the dialogue partner to the second dialogue AI, It has, The display control unit causes the application screen of the terminal to display in an identifiable manner that the conversation partner has been switched. A terminal characterized by the following features.
15. An information processing system including an information processing device and a terminal, The aforementioned information processing device is A display control unit that makes the first conversational AI, which is the conversation partner of the user, identifiable on the screen of the application on the terminal operated by the user, among multiple types of conversational AIs that interact with the user and have different roles, A receiving unit that receives messages to the conversational AI entered on the terminal and content entered by the user into the application, A determination unit determines, based on the message and the content input to the application, whether there is a second dialogue AI among the multiple types of dialogue AIs that can output a more appropriate response to the message than the first dialogue AI, If it is determined that the second dialogue AI exists, a switching unit switches the dialogue partner to the second dialogue AI, It has, The display control unit causes the application screen of the terminal to display in an identifiable manner that the conversation partner has been switched. Web content data for displaying a screen that accepts message input from a user, comprising a first web page displaying information identifying the first conversational AI, and a second web page displaying in an identifiable manner that the conversation partner has been switched, wherein the web content data includes a script that causes the information processing device to transmit the message entered on the first web page, and to display the second web page that displays the screen showing the switch to the second conversational AI, and the web content data is transmitted to the terminal. When the receiving unit receives an HTTP request transmitted by the execution of the script on the terminal, which includes the message entered on the first web page displayed on the terminal based on the web content data, the determination unit determines, based on the message and the content entered into the application, whether there is a second dialogue AI among the multiple types of dialogue AI that can output a more appropriate response to the message than the first dialogue AI. If the display control unit determines that the second conversational AI exists, it includes information for indicating that the conversation partner has been switched in the HTTP response, which is the response to the HTTP request, and transmits it to the terminal. The aforementioned terminal is A script execution unit that executes the aforementioned script, A display control unit that displays the first web page by executing the script, A transmission unit that transmits the HTTP request containing the message entered on the first web page to the information processing device, A receiving unit that receives the HTTP response containing information for displaying in an identifiable manner that the conversation partner has been switched, It has, By executing the script, the display control unit displays the second web page which displays a screen that makes it possible to identify that the conversation partner has been switched. An information processing system characterized by the following:
Citation Information
Patent Citations
Conversational ai platform with rendered graphical output
WO2021231631A1