Information processing system, information processing device, information processing method, and program
The information processing system facilitates the identification of a suitable conversational AI by associating user messages with previously received messages, enhancing interaction efficiency.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- RICOH CO LTD
- Filing Date
- 2024-12-27
- Publication Date
- 2026-07-09
AI Technical Summary
Users face difficulty in identifying a suitable dialogue AI for their messages when multiple types of dialogue AIs are available.
An information processing system that includes a reception unit to receive user messages, a storage unit to associate previously received messages with conversational AIs, and a display control unit to identify and display the appropriate conversational AI response.
Enables the identification of a conversational AI suitable for the user's message, allowing for effective interaction.
Smart Images

Figure 2026115172000001_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to an information processing system, an information processing apparatus, an information processing method, and a program.
Background Art
[0002] Conventionally, a computer system has been devised that automatically generates a response to a message such as a question from a user and outputs the response to interact with the user.
[0003] Patent Document 1 discloses that for each of a plurality of bots, a bot ability catalog representing bot abilities in natural language is collated with a user service prompt represented in natural language, and one or more selected bots are determined.
Summary of the Invention
Problems to be Solved by the Invention
[0004] When there are multiple types of dialogue AIs that automatically generate responses to messages from users, it is difficult for users to identify a dialogue AI suitable for their messages.
[0005] The present invention has been made in view of the above points, and an object thereof is to enable identification of a dialogue AI suitable for a message from a user.
Means for Solving the Problems
[0006] To solve the above problems, an information processing system that functions as multiple conversational AIs interacting with a user includes: a reception unit that receives input of a first message from the user; a storage unit that stores previously received messages and information identifying the conversational AI that responded to those messages in association with each other, and identifies the conversational AI that will respond to the first message based on the relationship between the previously received messages and the first message; and a display control unit that displays the response generated by the identified conversational AI in response to the first message. [Effects of the Invention]
[0007] This makes it possible to identify a conversational AI that is suitable for the user's message. [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 the hardware configuration of the information processing device 10 in the first embodiment. [Figure 3] This figure shows an example of the functional configuration of the information processing system in the first embodiment. [Figure 4] This is a sequence diagram illustrating an example of the processing procedure for identifying the response agent in the first embodiment. [Figure 5] This figure shows an example of the dialogue screen displayed at the start of a conversation. [Figure 6] This figure shows an example of a user information storage unit 121. [Figure 7] This figure shows an example of the history information storage unit 122. [Figure 8] This figure shows the first example of the display of the dialogue screen based on the results of the candidate agent identification. [Figure 9] This figure shows a second example of the display of the dialogue screen based on the results of the candidate agent identification. [Figure 10]This is a sequence diagram illustrating an example of the processing procedure for the response generation process in the first embodiment. [Figure 11] This figure shows an example of the display of the dialogue screen when displaying a response in the first embodiment. [Figure 12] This figure shows an example of the display of the dialogue screen based on the identification results for the second and subsequent candidate agents in the first embodiment. [Figure 13] This is a sequence diagram illustrating an example of the processing procedure for identifying the response agent in the second embodiment. [Figure 14] This is a sequence diagram illustrating an example of the processing procedure for identifying the response agent in the third embodiment. [Figure 15] This figure shows a modified example of the display of the dialogue screen when displaying a response in the first to third embodiments. [Figure 16] This figure shows an example of the dialogue screen displayed when a second or subsequent response is shown, following the screen shown in Figure 15. [Modes for carrying out the invention]
[0009] Embodiments of the present invention will be described below with reference to the drawings. Figure 1 is a diagram showing an example of the configuration of an information processing system in the first embodiment. In Figure 1, one or more terminals 20 are connected to the information processing device 10 via a network such as a LAN (Local Area Network) or the Internet.
[0010] The information processing device 10 is one or more computers that function as multiple types of conversational AIs that interact with the user using AI (Artificial Intelligence). The conversational AI is an anthropomorphic virtual entity that the user sees as a conversation partner. Interaction with the conversational AI (conversation partner) means that when the user inputs a message, a response is output in response to it. Specifically, the conversational AI receives a message input by the user from the terminal 20. The conversational AI searches for document data with a relatively high similarity to the message from a set of document data pre-registered in the information processing device 10. The conversational AI controls the generation of a response to the message based on the searched document data and outputs the response to the terminal 20. The message input by the user may be a question, an instruction or request, or other input information that requires a response. The response is text containing information corresponding to the message. The response may also be output as voice. In this embodiment, for convenience, the conversational AI is referred to as an "agent". The conversational AI may also be called an AI agent, digital clone, personalized AI, AI assistant, automated response AI, conversation partner, AI chatbot, companion, concierge, or virtual conversational interface. The agent may be a virtual human displayed as a conversation partner on the screen of terminal 20 as a 3D avatar modeled after a person.
[0011] In this embodiment, the different types of agents are distinguished by the differences in the data sources referenced to generate responses to user messages. In other words, each agent is associated with a different data source. A data source refers to a collection of document data. For example, each data source is a collection of document data related to different fields. Each agent searches for document data related to the same message from different data sources. Since the response corresponding to the message is generated based on the retrieved document data, each agent will generate a different response to the same message.
[0012] The information processing apparatus 10 identifies, as the source of response (i.e., the conversation partner), an agent suitable for a message from the user or the like from among a plurality of types of agents. The information processing apparatus 10 can also automatically switch the agent as the conversation partner when it determines that the agent suitable for the message from the user has changed according to the progress of the conversation.
[0013] The terminal 20 is a device 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 receives an input of a message from the user and transmits the message to the information processing apparatus 10. The terminal 20 also receives and displays a response generated for the message from the information processing apparatus 10. The terminal 20 may output the received information using a projector or the like.
[0014] In this embodiment, it is assumed that the information processing system is operated in a certain company (hereinafter referred to as "Company X"). Therefore, the users who can access the information processing apparatus 10 are those belonging to Company X, such as employees of Company X. Note that the service provided by the information processing apparatus 10 may be generally made public as a cloud service.
[0015] FIG. 2 is a diagram showing a hardware configuration example of the information processing apparatus 10 according to the first embodiment. As shown in FIG. 2, the information processing apparatus 10 is constructed by a computer, and includes a CPU (Central Processing Unit) 101, a ROM (Read Only Memory) 102, a RAM (Random Access Memory) 103, a HD (Hard Disk) 104, a HDD (Hard Disk Drive) controller 105, a display 106, an external device connection I / F (Interface) 108, a network I / F 109, a data bus 110, a keyboard 111, a pointing device 112, a DVD-RW (Digital Versatile Disk Rewritable) drive 114, and a media I / F 116.
[0016] Among these, the CPU 101 controls the operations of the entire information processing apparatus 10. The ROM 102 stores programs used for driving the CPU 101 such as an IPL (Initial Program Loader). The RAM 103 is used as a work area for the CPU 101. The HD 104 stores various data such as programs. The HDD controller 105 controls reading and writing of various data to and from the HD 104 according to the control of the CPU 101. The display 106 displays various information such as a cursor, menu, window, characters, or images. The external device connection I / F 108 is an interface for connecting various external devices. External devices in this case are, for example, a USB (Universal Serial Bus) memory, a printer, and the like. The network I / F 109 is an interface for performing data communication using a communication network. The data bus 110 is an address bus, a data bus, etc. for electrically connecting components such as the CPU 101.
[0017] 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.
[0018] Figure 3 is a diagram showing an example of the functional configuration of the information processing system in the first embodiment. In Figure 3, the information processing device 10 has an AI 150 and an agent.
[0019] 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 also 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) model 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 a machine learning model other than LLM may be used as AI124. Also, the information processing device 10 does not need to have AI150. In this case, a generated AI that is publicly available on the internet or elsewhere may be used as AI150.
[0020] 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.
[0021] As described above, the agent is an example of a conversational AI. The agent is a set of functional units that receive messages from the user and generate responses to those messages using Retrieval Augmented Generation (RAG), etc. Specifically, the agent includes a reception unit 11, a identification unit 12, a conversion unit 13, a search unit 14, an AI control unit 15, and a display control unit 16 as such functional units. 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 a user information storage unit 121, a history information storage unit 122, and multiple data storage units 123-1 to N. 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.
[0022] In this embodiment, although the information processing device 10 is described as functioning as multiple types of agents, the actual program that functions as an agent is common to all agents. As mentioned above, agents are basically distinguished by the differences in the data sources they refer to for generating responses.
[0023] The reception unit 11 receives input from the user. For example, the reception unit 11 receives messages from the user. More precisely, the user input is made to the terminal 20. Therefore, the reception unit 11 receives information from the terminal 20 corresponding to the input received by the terminal 20.
[0024] The identification unit 12 identifies one or more agents (hereinafter referred to as "candidate agents") that are candidates to generate a response to the message received by the receiving unit 11. When identifying candidate agents, the identification unit 12 refers to the history information storage unit 122 and the user information storage unit 121. The agent that will generate the response is then determined from among the candidate agents. Therefore, it can also be said that the identification unit 12 identifies the agent that will generate a response to the message received by the receiving unit 11.
[0025] The history information storage unit 122 stores, in association with messages received in the past, information identifying the agent that responded to those messages, and attribute information of the user who entered those messages.
[0026] The identification unit 12 identifies one or more candidate agents for the first message based on the relationship similarity between the message received by the reception unit 11 (the first message) and each message stored in the history information storage unit 122. In this embodiment, the similarity between messages is an example of a relationship. The identification unit 12 also identifies candidate agents for the first message based on the similarity between the user attribute information related to the first message and the attribute information stored in the history information storage unit 122. The user attribute information related to the first message can be obtained from the user information storage unit 121.
[0027] Among the candidate agents, the agent that will generate the response (hereinafter referred to as the "response agent") is selected by the user.
[0028] The user information storage unit 121 stores attribute information for each user of the information processing system.
[0029] When the receiving unit 11 receives a message, the conversion unit 13 converts the message into a vector that represents the meaning of the message using multi-dimensional numerical values (hereinafter referred to as the "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 the "message vector".
[0030] The search unit 14 uses the message vector generated by the conversion unit 13 to extract a portion of the document data stored in the data storage unit 123 corresponding to the response agent that is relatively highly relevant to the message. The data storage unit 123 that the search unit 14 searches (the source of the document data) differs depending on the response agent.
[0031] Each data storage unit 123 has document data related to various operations of company X pre-stored (registered). The set of document data stored differs for each data storage unit 123. This is because the document data required differs depending on the role of the agent. Therefore, a data storage unit 123 may be provided for each agent. Some or all of the data storage units 123 used by two or more agents may be the same. The registration of document data to each data storage unit 123 may be performed in batches, or the user may upload document data at any time. Each data storage unit 123 stores, for each document data registered in that data storage unit 123, 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 unit for dividing the document data may be the number of characters, the number of sentences, or a semantic unit (e.g., paragraph), and it is sufficient that the data is divided into units and stored in advance. Hereinafter, the semantic vector of each chunk will be called a "chunk vector". The search unit 14 calculates the similarity between the message vector and the chunk vector of each chunk related to the document data in the data storage unit 123 for each document data to be searched, and identifies the chunk related to the chunk vector with the highest similarity with respect to the document data (hereinafter referred to as "similar chunk"). The search unit 14 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 14 includes information (hereinafter referred to as "related document information") in the search results that includes the top M similar chunks, the ID stored in the data storage unit 123 corresponding to the similar chunk (hereinafter referred to as "chunk ID"), and the ID stored in the data storage unit 123 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 123 may be a folder, database, or other management unit for a collection of document data.
[0032] The AI control unit 15 sends a prompt to the AI 150 as an instruction to generate a response, which includes the message received by the reception unit 11 and a set of similar chunks related to the search results from the search unit 14. The AI control unit 15 receives the response generated by the AI 150 from the AI 150.
[0033] The display control unit 16 displays information indicating one or more candidate agents identified by the identification unit 12 on the terminal 20 for the user to select. The display control unit 16 also displays the response generated by the agent (response agent) selected by the user on the terminal 20. Specifically, the display control unit 16 transmits display data to the terminal 20 in order to display the display screen on the terminal 20.
[0034] 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.
[0035] The reception unit 21 receives user operations on the terminal 20.
[0036] The communication unit 22 controls communication with the information processing device 10.
[0037] The display control unit 23 controls the display of a screen (for example, the interactive screen 510 described later) using a browser based on the information (display data) received from the information processing device 10.
[0038] The following describes the processing procedure performed by the information processing system. Figure 4 is a sequence diagram illustrating an example of the processing procedure for identifying a response agent in the first embodiment. At the start of the processing procedure in Figure 4, the user of terminal 20 (hereinafter referred to as the "target user") is logged in to the information processing device 10 (authenticated by the information processing device 10), and the target user's user ID is stored in RAM 103, for example, as the user ID of the logged-in user.
[0039] In step S101, when the target user inputs a command to start a dialogue into the terminal 20, the terminal 20 sends a dialogue start request to the information processing device 10. The receiving unit 11 of the information processing device 10 notifies the display control unit 16 of the start request (S102). In response to the start request, the display control unit 16 displays a dialogue screen on the terminal 20, which is a screen that accepts message input from the user and is a screen for dialogue between the user and the agent (S103). Specifically, the display control unit 16 generates display data for the dialogue screen and sends the display data to the terminal 20 in order to display the dialogue screen.
[0040] Figure 5 shows an example of the display of the dialogue screen at the start of a conversation. The dialogue screen 510 shown in Figure 5 includes a dialogue display area 511, a message input area 512, and an agent list display area 513. The dialogue display area 511 is the area where the content of the conversation between the agent and the user is displayed. In the initial state, the dialogue display area 511 displays a greeting message g1 ("Is there anything I can help you with regarding your work?") prompting the user to enter a message. To the left of the greeting message g1, the agent icon i1 is displayed. In the dialogue screen 510 at the start of a conversation, the responding agent has not yet been identified. In this state, the greeting message g1 displayed may be understood as a greeting from the agent acting as the general reception (hereinafter referred to as the "general reception agent"). The general reception agent engages in conversation with the user until a responding agent is identified.
[0041] The message input area 512 is an area for receiving messages from the user and includes a send icon 5121. The agent list display area 513 is an area that displays a list of the names of all agents of multiple types (hereinafter referred to as "agent names"). Selecting one of the agents displayed in the agent list display area 513 may transition to a dialogue screen for interacting with the selected agent. Figure 5 shows an example in which agents are defined for each type of regulation in company X, such as "General Reception," "Personnel Regulations," "Accounting Regulations," "Purchasing Regulations," and "General Affairs Regulations." "Personnel Regulations" is a collection of document data including, for example, the criteria for payment of allowances, the handling of working hours and travel time during business trips, and special rules for overseas travel. "Accounting Regulations" is a collection of document data including, for example, the method of settling travel expenses, the handling of receipts, and the method of calculating exchange rates. "Purchasing Regulations" is a collection of document data including, for example, the payment procedure for purchasing passports and the approval flow for purchases. "General Affairs Regulations" refers to a collection of document data that includes, for example, the operation and management of the business premises, rules for using company vehicles, emergency response, and safety management. Each agent corresponding to one of these regulations can interact with the user as an expert in the corresponding collection of document data ("Personnel Regulations," "Accounting Regulations," "Purchasing Regulations," or "General Affairs Regulations"). The agent list display area 513 indicates the currently interacting agent with a border f1. At this point, the General Reception agent is the interaction partner, so "General Reception" is enclosed by a border f1.
[0042] When a user enters a message in the message input area and clicks the send icon 5121, the terminal 20 sends the message (hereinafter referred to as the "target message") to the information processing device 10 (S111).
[0043] When the receiving unit 11 receives the target message, it inputs the target message to the identification unit 12 (S112). The identification unit 12 performs a process to identify candidate agents based on the target message in steps S113 to S117.
[0044] First, the identification unit 12 obtains attribute information corresponding to the user ID of the target user from the user information storage unit 121 (S113, S114).
[0045] Figure 6 shows an example of the user information storage unit 121. The user information storage unit 121 shown in Figure 6 stores attribute information for each user, associated with the user's user ID. Attribute information is information that indicates the nature and characteristics of each user. In the example in Figure 6, the attribute information includes items such as affiliation information, job title information, and job duties information. Affiliation information is information that indicates the organization (department) to which the user belongs within company X. Job title is information that indicates the user's job title. Job duties are information that indicates the user's job duties. The attribute information is used to identify candidate agents for the target message. Candidate agents are agents that are highly likely to possess the necessary knowledge for the target message. Therefore, it is desirable that the attribute information items be selected so that the attribute information is common among users who share the same necessary knowledge for their work, and different among users who may have different necessary knowledge. This is because users who share the same necessary knowledge for their work are likely to input similar messages to agents.
[0046] The attribute information of the target user obtained in step S114 is referred to as "target attribute information".
[0047] Next, the identification unit 12 retrieves some historical information that is relatively highly relevant to the target message from the history information storage unit 122 (S115, S116).
[0048] Figure 7 shows an example of the history information storage unit 122. The history information storage unit 122 shown in Figure 7 stores history information for each message received from a user in the past, including the date and time, message, response agent ID, user ID, and attribute information.
[0049] The date and time is the date and time when the history information was recorded (≒ the date and time the message was received). The message is the message itself. The response agent ID is the identification information of the agent that responded to the message (hereinafter referred to as "agent ID"). The user ID is the user ID of the user who entered the message. The attribute information is the attribute information of the user (affiliation information, job title information, job information). Attribute information may change due to personnel changes, etc., but the attribute information recorded in the history information is the attribute information at the time indicated by the date and time of the history information.
[0050] Here, the partial historical information that is relatively highly relevant to the target message refers to the partial historical information that includes messages that are relatively highly similar to the target message. The evaluation of the degree of similarity between the target message and the messages included in the historical information may be performed using an index based on known string comparison techniques. Alternatively, the target message and the messages included in the historical information may each be converted into semantic vectors. In this case, the similarity of the vectors (e.g., cosine similarity) may be calculated as an index indicating the degree of similarity. In either case, the identification unit 12 acquires the partial historical information that has a high degree of similarity to the target message. At this time, the partial historical information that is ranked from highest to lowest may be acquired, or the partial historical information that is ranked may be acquired using a threshold for an index indicating the degree of similarity. Hereinafter, each of the one or more historical information acquired in step S116 will be referred to as "extracted historical information".
[0051] Next, the identification unit 12 identifies a candidate agent's agent ID (hereinafter referred to as "candidate agent ID") from among the "agent IDs" of each extracted history information based on the target attribute information (S117). The identification unit 12 identifies one or more history information "agent IDs" that contain attribute information with a relatively high similarity to the target attribute information as candidate agent IDs. Attribute information with a relatively high similarity to the target attribute information is attribute information in which the number of items constituting the attribute information that have the same value as the target attribute information is relatively large. Alternatively, the "agent ID" of attribute information in which the values of all items are the same as the target attribute information may be identified as a candidate agent ID. If the number of extracted history information is less than or equal to a predetermined number, each "agent ID" of all extracted history information may be identified as a candidate agent ID. Or, if the number of extracted history information exceeds a predetermined number, it may be narrowed down to a predetermined number of extracted history information. Step S117 does not have to be executed. In this case, each "agent ID" of all extracted history information will be identified as a candidate agent ID.
[0052] Next, the identification unit 12 inputs the identification result, which includes one or more identified agent IDs, to the display control unit 16 (S118). The display control unit 16 displays a notification based on the identification result on the dialogue screen 510 (S119). Specifically, the display control unit 16 generates display data for the notification and transmits the display data to the terminal 20 in order to display the notification.
[0053] Figure 8 shows a first example of the display of the dialogue screen based on the candidate agent identification results. In Figure 8, the same reference numerals are used for parts identical to those in Figure 5, and their explanations are omitted. In the dialogue screen 510 shown in Figure 8, message m1 and notification n1 have been added.
[0054] Message m1 is the target message entered by the user in the message input area 512 in step S111. 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.
[0055] Notification n1 is the display content added in step S119. Notification n1 is a notification to select one of the candidate agents as the response agent, and includes a button for each candidate agent. Figure 8 shows an example in which two agents, the "Personnel Regulations" agent and the "Accounting Regulations" agent, are identified as candidate agents in response to the message m1, "Are there any allowances or special rules provided when traveling abroad?". Therefore, notification n1 includes a button b1 corresponding to the "Personnel Regulations" agent and a button b2 corresponding to the "Accounting Regulations" agent. The display content of notification n1 may be as shown in Figure 9.
[0056] Figure 9 shows a second example of the dialogue screen based on the candidate agent identification results. In Figure 9, the same reference numerals are used for parts identical to those in Figure 8, and their explanations are omitted as appropriate.
[0057] In Figure 9, each button in notification n1 is marked with a star. The stars represent an evaluation value (recommendation level) based on the evaluation of the similarity between the target message and the history information, and the similarity between the target attribute information and the attribute information of the extracted history information, when acquiring extraction history information (S115, S116) and when identifying candidate agent IDs from the agent IDs of the extraction history information based on the target attribute information (S117). The higher the similarity, the more stars there are. In this case, the user can select a response agent by referring to the stars.
[0058] When a user selects either button b1 or button b2, terminal 20 transmits the agent ID of the agent corresponding to the selected button (hereinafter referred to as "selected agent ID") to information processing device 10 (S120). Upon receiving the selected agent ID, the receiving unit 11 of the information processing device 10 inputs the selected agent ID into the identification unit 12 (S121). The identification unit 12 identifies the selected agent ID as the agent ID of the response agent and records the history information for the target message in the history information storage unit 122 (Figure 7) (S122). At this time, the "date and time", "message", "response agent ID", "user ID", and "attribute information" of the recorded history information are, in order, assigned to the current date and time, the target message, the selected agent ID, the user ID of the target user, and the attribute information of the target user.
[0059] Next, we proceed to the process of generating a response to the target message.
[0060] Figure 10 is a sequence diagram illustrating an example of the processing procedure for the response generation process in the first embodiment.
[0061] Following step S122 in Figure 4, the identification unit 12 sets the selected agent ID in the search unit 14 and the AI control unit 15, respectively (S201, S202). This setting is performed to make the behavior of the search unit 14 and the AI control unit 15 correspond to the agent (response agent) associated with the selected agent ID.
[0062] Next, the identification unit 12 inputs the target message to the conversion unit 13 (S203). The conversion unit 13 generates a message vector by converting the input target message into a semantic vector (S204). Subsequently, the conversion unit 13 inputs the message vector (hereinafter referred to as the "target message vector") and the target message to the search unit 14 (S205).
[0063] The search unit 14 obtains search results by performing a search based on the target message vector against the data storage unit 123 corresponding to the selected agent ID set in step S201 (i.e., the data storage unit 123 corresponding to the response agent) (S206). Specifically, the search unit 14 identifies similar chunks for each document data by comparing the chunk vector and message vector stored in the data storage unit 123 corresponding to the selected agent ID for each document data and for each chunk, and extracts some similar chunks that have a relatively high similarity to the target message. For each extracted similar chunk, the search unit 14 generates information including related document information for that similar chunk as a search result. Subsequently, the search unit 14 inputs the target message and search results to the AI control unit 15 (S207).
[0064] The AI control unit 15 generates a prompt by applying the search results and target message to the system prompt (S208). The system prompt is a template for the prompt to be input to the AI 150, and is prepared in advance. A simple example of a system prompt is as follows.
[0065] <Example of a system prompt> The following is a message from a user:
[0066] {message} Please use the following document as a reference to generate a response to the message.
[0067] {A set of similar chunks related to the search results} <End of system prompt example> In this case, the AI control unit 15 substitutes the target message into the {message} portion of the system prompt and the set of similar chunks related to the search results from the search unit 14 into the {set of similar chunks related to the search results} portion to generate a prompt. By inputting this generated prompt 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). The response from the AI 150 can be based on the set of similar chunks related to the search results.
[0068] Note that a system prompt may be provided for each agent. The system prompt may differ for each agent. In this case, the AI control unit 15 can generate a prompt by applying the target message and search results to the system prompt corresponding to the selected agent ID set in step S202.
[0069] Next, the AI control unit 15 sends the generated prompt to the AI 150 (S209). The AI control unit 15 receives the response generated by the AI 150, which received the prompt (S210). Next, the AI control unit 15 inputs the response (hereinafter referred to as the "target response") to the display control unit 16 (S211). The display control unit 16 displays the target response on the dialogue screen 510 displayed on the terminal 20 (S212). Specifically, the display control unit 16 generates display data for the target response and sends this display data to the terminal 20 in order to display the target response.
[0070] Figure 11 shows an example of the display of the dialogue screen when a response is displayed in the first embodiment. In Figure 11, the same parts as in Figure 8 are denoted by the same reference numerals, and their descriptions are omitted. Icon i2 and response r1 are added to the dialogue screen 510 shown in Figure 11.
[0071] Response r1 is the agent's response to message m1. Here, an example is shown where the "Personnel Regulations" agent is selected. Therefore, the response from the "Personnel Regulations" agent (a response based on "Personnel Regulations") is shown as response r1.
[0072] Icon i2 is the icon for the "Personnel Regulations" agent. Therefore, the content of icon i2 is actually different from that of icon i1.
[0073] Furthermore, in Figure 11, "Personnel Regulations" is enclosed by a border f1 in the agent list display area 513. This also indicates that the current conversation partner has changed to the "Personnel Regulations" agent.
[0074] When the user enters a new message into the message input area 512, steps S111 to S119 in Figure 4 are re-executed with that message as the target message. As a result, the display content of the dialogue screen 510 changes, for example, as shown in Figure 12.
[0075] Figure 12 shows an example of the display of the dialogue screen based on the identification results for the second and subsequent candidate agents in the first embodiment. In Figure 12, the same parts as in Figure 11 are denoted by the same reference numerals, and their descriptions are omitted. The dialogue screen 510 shown in Figure 12 has a message m2 and a notification n2 added. The greeting message g1 is erased by scrolling up. Message m2 is a message entered by the user after response r1. Notification n2 is the display content added in step S119 performed for message m2. Notification n2 indicates that the candidate agents for message m2 are the "Accounting Regulations" agent and the "Purchasing Regulations" agent, and includes buttons b3 and b4 for selecting them, respectively. When either button is selected, steps S120 onwards in Figure 4 are executed, followed by steps S201 onwards in Figure 10.
[0076] It should be noted that in step S117 of Figure 4, there is a possibility that no candidate agents may be identified. For example, this could occur if sufficient historical information has not been accumulated, if there is no historical information containing messages whose similarity to the target message exceeds a threshold, or if there is no historical information containing attribute information whose similarity to the target attribute information is above a certain level. In this case, two examples are possible.
[0077] In the first example, in step S118, the identification unit 12 inputs an identification result indicating that there are no candidate agents to the display control unit 16. In step S119, the display control unit 16 displays a notification on the dialogue screen 510 indicating that there are no agents capable of responding to the target message. Specifically, the display control unit 16 generates display data for the notification and sends the display data to the terminal 20 to display the notification. In this case, steps S120 onward and the processing procedure in Figure 10 are not executed. Therefore, the user needs to re-enter the message with different wording.
[0078] In the second example, following step S117, steps S118 to S122, as well as steps S201 and S202 in Figure 10, are not executed, and steps S203 onwards are executed. In this case, in step S206, the search unit 14 obtains search results by performing a search based on the target message vector for all data storage units 123-1 to N, since the selected agent ID has not been set (i.e., the response agent has not been identified). In step S208, if the system prompt is distinguished for each agent, the AI control unit 15 generates a prompt by applying the target message and the search results from the search unit 14 to the system prompt in the case where the agent is not identified. The quality of the response generated by the AI 150 for such a prompt is likely to be lower than the quality of the response when the response agent is identified, but in the second example, some output can be provided to the user. This response is presented to the user as a response from the central reception agent.
[0079] As described above, according to the first embodiment, an agent that responds to a message that has a relatively high similarity to the user's message is identified as a response agent. Furthermore, an agent that responds to a message from a user whose attribute information has a relatively high similarity to the user who input the message may also be identified as a response agent. Therefore, it is possible to identify a conversational AI that is suitable for the user's message.
[0080] Next, a second embodiment will be described. The differences between the second embodiment and the first embodiment will be described. Therefore, unless otherwise specified, the second embodiment is the same as the first embodiment. In the second embodiment, the processing procedure in Figure 4 is replaced by the processing procedure in Figure 13.
[0081] Figure 13 is a sequence diagram illustrating an example of the processing procedure for identifying the response agent in the second embodiment. In Figure 13, the same step numbers are used for steps identical to those in Figure 4, and their explanations are omitted. In Figure 13, steps S115, S116, and S117 in Figure 4 are replaced by S115a, S116a, and S117a.
[0082] In steps S115a and S116a, the identification unit 12 obtains some history information (hereinafter referred to as "extracted history information") from the history information storage unit 122 that includes attribute information with a relatively high similarity to the target attribute information. The method for evaluating the degree of similarity is the same as the method described in step S117 of the first embodiment.
[0083] In step S117a, the identification unit 12 identifies one or more history information "agent IDs" from the extracted history information that contain messages with a relatively high similarity to the target message as candidate agent IDs. The method for evaluating the degree of similarity is the same as the method described in steps S115 and S116 of the first embodiment.
[0084] Otherwise, it is the same as in the first embodiment.
[0085] As described above, the same effects as those of the first embodiment can be expected in the second embodiment as well.
[0086] Next, a third embodiment will be described. The differences between the third embodiment and the first or second embodiment will be described. Therefore, unless otherwise specified, it is the same as the first or second embodiment. In the third embodiment, the processing procedure in Figure 4 or Figure 13 is replaced by the processing procedure in Figure 14.
[0087] Figure 14 is a sequence diagram illustrating an example of the processing procedure for identifying the response agent in the third embodiment. In Figure 14, steps identical to those in Figure 4 or Figure 13 are given the same step numbers, and their descriptions are omitted.
[0088] In Figure 14, steps S113 and S114 are not executed, and step S117b is executed. In step S117b, the identification unit 12 identifies the "Agent ID" of each of the one or more extracted history information obtained in steps S115 and S116 as candidate agent IDs. Alternatively, the identification unit 12 may narrow down the extracted history information to one or more history information containing attribute information with even higher similarity to the target attribute information, and identify the "Agent ID" of each narrowed-down history information as a candidate agent ID. Following S117b, steps S118 to S122 are executed as in Figure 4.
[0089] From step S201 onwards in Figure 10, the selected response agent's agent ID is used as the selected agent ID, and the response generated by that response agent is displayed on the dialogue screen 510.
[0090] Figure 15 shows a modified example of the display of the dialogue screen when displaying a response in the first to third embodiments. In Figure 15, the same reference numerals are used for parts that are the same as in Figure 11, and their descriptions are omitted. Also, in the process of displaying the dialogue screen in Figure 15, steps S118 to S122 in Figures 4, 13, and 14 are not executed.
[0091] In the process of displaying the dialogue screen 510 in Figure 15, if multiple extracted history information is evaluated as having the highest similarity to the target attribute information, the identification unit 12 identifies the "Agent ID" of one history information containing the message with the highest similarity to the target message as a candidate agent ID. If there are multiple history information containing the message with the highest similarity to the target message among the multiple extracted history information, the identification unit 12 may randomly select one of the history information or select it based on other selection criteria. In this case, steps S118 to S122 are not executed. In step S201, the identification unit 12 sets the identified agent ID in the search unit 14. Therefore, the dialogue screen 510 in Figure 15 does not include the notification n1 displayed in step S119.
[0092] When the user enters a new message into the message input area 512, steps S111 to S117b in Figure 14 are re-executed with that message as the target message, and then steps S201 to S212 in Figure 10 are re-executed. As a result, the display content of the dialogue screen 510 changes, for example, as shown in Figure 16.
[0093] Figure 16 shows an example of the dialogue screen displayed when a second or subsequent response is shown, following the screen in Figure 15. In Figure 16, parts identical to those in Figure 12 or Figure 15 are denoted by the same reference numerals, and their explanations are omitted as appropriate.
[0094] Figure 16 shows response r2 to message m2. An example is shown where the response agent for response r2 is the "Accounting Regulations" agent. Note that if the agent is switched without giving the user an opportunity to choose, a string indicating the agent switch may be displayed, as in notification n3.
[0095] As described above, the response agent is automatically identified without the user having to perform any selection operations, as shown in the screens of Figures 15 and 16, which are modified versions of the first to third embodiments. Therefore, the burden on the user can be further reduced.
[0096] 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 capabilities. 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.
[0097] 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.
[0098] Furthermore, the apparatus in this embodiment represents only one of several computing environments for carrying out the embodiments disclosed herein.
[0099] 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.
[0100] 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.
[0101] Examples of the present invention are as follows:
[0102] <1> An information processing system that functions as multiple conversational AIs that interact with users, A reception unit that receives the first message input from the user, A storage unit that stores information identifying the dialogue AI that responded to a previously received message in association with the message received in the past, and an identification unit that identifies the dialogue AI that responds to the first message based on the relationship between the previously received message and the first message, A display control unit that displays the response generated by the identified dialogue AI in response to the first message, An information processing system characterized by having the following features.
[0103] <2> Based on the similarity between the first message and each message stored in the memory unit, one or more dialogue AIs are identified to respond to the first message. Characterized by <1> The information processing system described above.
[0104] <3> The display control unit displays information indicating one or more of the dialogue AIs identified by the identification unit in a way that allows the user to select one, and displays the response generated by the dialogue AI selected by the user. Characterized by <1> or <2> The information processing system described above.
[0105] <4> The memory unit further stores user attribute information related to messages received in the past. The identification unit identifies the conversational AI that will respond to the first message based on the similarity between the attribute information of the user related to the first message and the attribute information stored in the storage unit. Characterized by <1> ~ <3> The information processing system described in any of the following.
[0106] <5> An information processing device that functions as multiple conversational AIs that interact with a user, A reception unit that receives the first message input from the user, A storage unit that stores information identifying the dialogue AI that responded to a previously received message in association with the message received in the past, and an identification unit that identifies the dialogue AI that responds to the first message based on the relationship between the previously received message and the first message, A display control unit that transmits display data in order to display the response generated by the identified conversational AI for the first message, An information processing device characterized by having the following features.
[0107] <6> An information processing device that functions as multiple conversational AIs that interact with the user, The reception procedure for receiving the first message from the user, A procedure for identifying a dialogue AI that responds to a first message by referring to a storage unit that stores information identifying previously received messages and the dialogue AI that responded to those messages in association with each other, and based on the relationship between the previously received messages and the first message, A display control procedure that causes the identified conversational AI to display the response it generated for the first message, An information processing method characterized by performing the following.
[0108] <7> An information processing device that functions as multiple conversational AIs that interact with the user, The reception procedure for receiving the first message from the user, A procedure for identifying a dialogue AI that responds to a first message by referring to a storage unit that stores information identifying previously received messages and the dialogue AI that responded to those messages in association with each other, and based on the relationship between the previously received messages and the first message, A display control procedure that causes the identified conversational AI to display the response it generated for the first message, A program to execute. [Explanation of Symbols]
[0109] 10 Information Processing Devices 11 Reception Department 12 Specific part 13 Conversion section 14 Search Section 15 AI control section 16 Display Control Unit 20 devices 21 Reception Department 22 Communications Department 23 Display Control Unit 121 User Information Storage Unit 122 History Information Storage Unit 123 Data Storage Unit 150 AI [Prior art documents] [Patent Documents]
[0110] [Patent Document 1] Japanese Patent Publication No. 2022-106822
Claims
1. An information processing system that functions as multiple conversational AIs that interact with users, A reception unit that receives the first message input from the user, A storage unit that stores information identifying the dialogue AI that responded to a previously received message in association with the message received in the past, and an identification unit that identifies the dialogue AI that responds to the first message based on the relationship between the previously received message and the first message, A display control unit that displays the response generated by the identified conversational AI in response to the first message, An information processing system characterized by having the following features.
2. The identification unit identifies one or more of the dialogue AIs that respond to the first message, based on the similarity between the first message and each of the messages stored in the storage unit. The information processing system according to feature 1.
3. The display control unit displays information indicating one or more of the dialogue AIs identified by the identification unit in a way that allows the user to select one, and displays the response generated by the dialogue AI selected by the user. The information processing system according to feature 1.
4. The memory unit further stores user attribute information related to messages received in the past. The identification unit identifies the conversational AI that will respond to the first message based on the similarity between the attribute information of the user related to the first message and the attribute information stored in the storage unit. The information processing system according to feature 1.
5. An information processing device that functions as multiple conversational AIs that interact with a user, A reception unit that receives the first message input from the user, A storage unit that stores information identifying the dialogue AI that responded to a previously received message in association with the message received in the past, and an identification unit that identifies the dialogue AI that responds to the first message based on the relationship between the previously received message and the first message, A display control unit that transmits display data in order to display the response generated by the identified conversational AI to the first message, An information processing device characterized by having the following features.
6. An information processing device that functions as multiple conversational AIs that interact with the user, A reception procedure for receiving the first message input from the user, A procedure for identifying a conversational AI that responds to a first message by referring to a storage unit that stores information identifying a conversational AI that responded to a previously received message in association with the previously received message and the conversational AI that responded to the first message, and A display control procedure that causes the identified conversational AI to display the response it generated for the first message, An information processing method characterized by performing the following.
7. An information processing device that functions as multiple conversational AIs that interact with the user, A reception procedure for receiving the first message input from the user, A procedure for identifying a conversational AI that responds to a first message by referring to a storage unit that stores information identifying a conversational AI that responded to a previously received message in association with the previously received message and the conversational AI that responded to the first message, and A display control procedure that causes the identified conversational AI to display the response it generated for the first message, A program to execute.