Program, method, information processing device and system
The system optimizes AI interactions by using a pre-tuned generative AI model to assess answer definitions and create summaries, reducing repetitive questioning and enhancing user experience.
Patent Information
- Application Number
- JP2025099858
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2025-06-16
- Publication Date
- 2025-09-30
- Estimated Expiration
- 2045-06-16
AI Technical Summary
Conversational AI systems often repeat questions that have already been answered, leading to inefficient and stressful interactions with users.
A system that utilizes a generative AI model pre-tuned with decision prompts to determine if user answers satisfy predefined answer definitions, allowing it to create summaries and skip subsequent questions when necessary, thereby optimizing dialogue flow.
Enables efficient and stress-free interactions with AI models by intelligently avoiding duplicate questions.
Smart Images

Figure 0007745944000001_ABST
Abstract
Description
[Technical Field]
[0001] The present disclosure relates to a program, a method, an information processing device, and a system. [Background technology]
[0002] In recent years, research and development into technologies for dialogue between users and trained models has been intensifying. For example, Patent Document 1 discloses a technology that provides a conversational AI process for interacting with AI on a user terminal, and generates business report data for the user based on conversation data acquired through a conversation with the user by the conversational AI process. [Patent Document 1] Patent No. 7649586 Summary of the Invention [Problem to be solved by the invention]
[0003] For example, a function related to an AI agent, such as the conversational AI processing described in Patent Document 1, includes a function that repeatedly asks a question until an answer of a predetermined granularity is obtained, and then moves on to a question to obtain the next answer once the answer is obtained. With this type of function, even if an answer to a later question has been given in a previous question, when moving on to the later question, the AI model may ask again a question that the user recognizes as having been answered. This can lead to inefficient interactions that cause stress to the user when conversing with the AI model.
[0004] The purpose of this disclosure is to enable users to interact with AI models efficiently and with minimal stress. [Means for solving the problem]
[0005] In order to solve the above-mentioned problem, one embodiment of the present disclosure provides a program for operating a computer having a processor and a memory, wherein the program is configured with a plurality of questions and definitions of answers to each of the plurality of questions, and the program causes the processor to execute the following steps: presenting questions to a user and accepting answers from the user; inputting the accepted user answers into a generative AI model and causing the generative AI model to determine whether the answers satisfy the definition of an answer to the question; if the accepted user answers satisfy the definition of an answer to the question, causing the generative AI model to create a summary of the user's comments in response to the question; causing the generative AI model to determine whether information contained in the created summary satisfies the definition of an answer to a question following the question; and if the information contained in the created summary is determined to satisfy the definition of an answer to the next question, setting the information as the answer to the next question and causing the generative AI model to stop outputting the next question. [Effects of the Invention]
[0006] This allows users to interact with generative AI models efficiently and with less stress. [Brief explanation of the drawings]
[0007] [Figure 1] 1 is a block diagram showing the overall configuration of a system 1. FIG. [Figure 2] 2 is a block diagram showing an example of the functional configuration of a terminal device 10. FIG. [Figure 3] 2 is a block diagram showing an example of the functional configuration of a server 20. FIG. [Figure 4] FIG. 2 is a diagram showing the data structure of a question master table 2021. [Figure 5] FIG. 10 is a diagram showing the data structure of a response table 2022. [Figure 6] 10 is a flowchart showing an example of the flow of an interaction process in the system 1. [Figure 7] FIG. 10 is a diagram illustrating an example screen of the present disclosure. [Figure 8] FIG. 9 is a block diagram showing the basic hardware configuration of a computer 90. DETAILED DESCRIPTION OF THE INVENTION
[0008] Hereinafter, embodiments of the present disclosure will be described with reference to the drawings. In all drawings describing the embodiments, common components are designated by the same reference numerals, and repeated explanations will be omitted. Note that the following embodiments do not unduly limit the content of the present disclosure described in the claims. Furthermore, not all components shown in the embodiments are necessarily essential components of the present disclosure. Furthermore, each drawing is a schematic diagram and is not necessarily a precise illustration.
[0009] In the following description, a "processor" refers to one or more processors. The at least one processor is typically a microprocessor such as a CPU (Central Processing Unit), but may also be another type of processor such as a GPU (Graphics Processing Unit). The at least one processor may be single-core or multi-core.
[0010] Furthermore, the at least one processor may be a processor in the broad sense, such as a hardware circuit (for example, a field-programmable gate array (FPGA) or an application-specific integrated circuit (ASIC)) that performs part or all of the processing.
[0011] In the following explanation, information that produces an output for an input may be described using expressions such as "xxx table," but this information may be data of any structure, or may be a learning model such as a neural network that produces an output for an input. Therefore, an "xxx table" may be referred to as "xxx information."
[0012] Furthermore, in the following description, the configuration of each table is an example, and one table may be divided into two or more tables, or all or part of two or more tables may be one table.
[0013] In addition, in the following explanation, processing may be described using the "program" as the subject, but since a program is executed by a processor to perform specified processing while appropriately using a memory unit and / or an interface unit, etc., the subject of the processing may also be the processor (or a device such as a controller that has that processor).
[0014] The program may be installed in a device such as a computer, or may be stored in, for example, a program distribution server or a computer-readable (e.g., non-transitory) recording medium. Also, in the following description, two or more programs may be realized as one program, or one program may be realized as two or more programs.
[0015] Furthermore, in the following description, identification numbers are used as identification information for various objects, but other types of identification information (for example, identifiers including alphabetic characters and symbols) may also be used.
[0016] In addition, in the following description, when describing elements of the same type without distinguishing between them, reference symbols (or common symbols among the reference symbols) may be used, and when describing elements of the same type with distinction between them, the identification numbers (or reference symbols) of the elements may be used.
[0017] In the following description, the control lines and information lines are those that are considered necessary for the description, and not all control lines and information lines in the product are necessarily shown. All components may be interconnected.
[0018] Each information processing device is configured by a computer equipped with an arithmetic unit and a storage device. The basic hardware configuration of the computer and the basic functional configuration of the computer realized by the hardware configuration will be described later. For each of the server 20 and the terminal device 10, descriptions that overlap with the basic hardware configuration and basic functional configuration of the computer will be omitted.
[0019] <Summary> In the system according to this embodiment, multiple questions and definitions of answers to each of the multiple questions are preset. Specifically, a decision prompt (a predetermined prompt) including multiple questions and definitions of answers to the questions is preset. The system according to this embodiment also works with a generative AI model that has been pre-tuned using the decision prompt. The generative AI model is pre-tuned to determine whether a user's answer to a question satisfies the definition of the answer, and whether information included in a summary (details of which will be described later) satisfies the definition of the answer to the question following the question.
[0020] That is, the system according to this embodiment presents a question output from the generative AI model to the user and accepts an answer to the question from the user. The system according to this embodiment inputs the accepted answer into the generative AI model and causes the generative AI model to determine whether the answer satisfies the definition of an answer to a question. If the system according to this embodiment determines that the accepted answer satisfies the definition of an answer to a question, it causes the generative AI model to create a summary of the user's comments in response to the question. The system according to this embodiment causes the generative AI model to determine whether information included in the created summary satisfies the definition of an answer to the question following the question. If the system according to this embodiment determines that information included in the created summary satisfies the definition of an answer to the next question, it sets the information as the answer to the next question and causes the generative AI model to stop outputting the next question.
[0021] The system according to this embodiment can be applied in various situations, such as job interviews and interviews with members of an organization (e.g., interviews with employees within a company). Although this embodiment takes an example in which a user interacts with a generative AI model via an avatar, the interaction may also be in the form of a chat. The avatar is, for example, an interface that has a human appearance and can interact with the user based on output data from the generative AI model. The avatar is, for example, an icon that resembles the appearance of an interviewer, or a coworker / manager / boss.
[0022] <1. Overall system configuration> Fig. 1 is a block diagram showing an example of the overall configuration of system 1. As shown in Fig. 1, system 1 includes, for example, a terminal device 10, a server 20, and a generation AI system 30. The terminal device 10, the server 20, and the generation AI system 30 are communicatively connected via, for example, a network 80.
[0023] 1 shows an example in which the system 1 includes one terminal device 10, but the number of terminal devices 10 included in the system 1 is not limited to one. The number of terminal devices 10 included in the system 1 may be two or more.
[0024] In this embodiment, a collection of multiple devices may be considered as one server. The allocation of multiple functions required to realize the server 20 according to this embodiment to one or more pieces of hardware may be determined appropriately in consideration of the processing capacity of each piece of hardware and / or the specifications required for the server 20. Also, in this embodiment, the server 20 may have the functions of the generative AI system 30. In other words, the server 20 may be equipped with a generative AI model.
[0025] The terminal device 10 is an information processing device used by a user who utilizes an interactive service (e.g., a service related to a job interview or a service related to an internal interview) provided by the server 20. The terminal device 10 also provides a user interface for interacting with a generative AI model provided by the generative AI system 30 (e.g., a hearing or answering a questionnaire via an avatar).
[0026] The terminal device 10 is realized by, for example, a desktop personal computer (PC), a laptop PC, a head-mounted display, etc. The terminal device 10 may also be a portable computer such as a smartphone or a tablet terminal.
[0027] The terminal device 10 includes a communication IF (Interface) 12, an input device 13, an output device 14, a memory 15, a storage 16, and a processor 19. The communication IF 12 is an interface for inputting and outputting signals so that the terminal device 10 can communicate with devices in the system 1, such as the server 20. The input device 13 is a device for receiving input operations from a user (e.g., a touch panel, a touchpad, a pointing device such as a mouse, a keyboard, etc.). The output device 14 is a device for presenting information to a user (e.g., a display, a speaker, etc.). The memory 15 is for temporarily storing programs and data processed by the programs, etc., and is a volatile memory such as a DRAM (Dynamic Random Access Memory). The storage 16 is for saving data, and is, for example, a flash memory or an HDD (Hard Disc Drive). The processor 19 is hardware for executing an instruction set written in a program, and is composed of an arithmetic unit, registers, peripheral circuits, etc.
[0028] The server 20 is an information processing device that provides interactive services and is implemented by a computer connected to a network 80, for example.
[0029] The server 20 includes a communication IF 22, an input / output IF 23, a memory 25, a storage 26, and a processor 29. The communication IF 22 is an interface for inputting and outputting signals so that the server 20 can communicate with devices in the system 1, such as the terminal device 10. The input / output IF 23 functions as an interface with an input device for receiving input operations from a user and an output device for outputting information to the user. The memory 25 is for temporarily storing programs and data processed by the programs, etc., and is a volatile memory such as a DRAM. The storage 26 is for saving data, and is a flash memory or HDD, for example. The processor 29 is hardware for executing an instruction set written in a program, and is composed of an arithmetic unit, registers, peripheral circuits, etc.
[0030] The generative AI system 30 is equipped with a generative AI model and is a system for realizing a dialogue between a user and the generative AI model. The generative AI system 30 realizes a more natural and efficient dialogue between the user and the generative AI model. Specifically, the generative AI system 30 uses the generative AI model to analyze information that the user has answered once and can intelligently avoid duplicate questions.
[0031] The generative AI system 30 is physically built on one or more server computers. It is connected to the terminal device 10 and the server 20 via a network 80, and provides each function through an API (Application Programming Interface). The generative AI system 30 may be built on, for example, a cloud-based infrastructure.
[0032] The generative AI model may be, for example, a large language model (LLM) or a multimodal generative AI model that can process text data, audio data, etc. in an integrated manner. In this embodiment, the generative AI system 30 is assumed to include an LLM (not shown) as the generative AI model. The number of LLMs included in the generative AI system 30 may be one or more.
[0033] LLM is a single-modal natural language model constructed by learning from large-scale text data, and is used in many NLG (Natural Language Generation) tasks such as generating answers to specific questions, automatically generating sentences, summarizing text data, etc. Examples of LLMs include the following: OpenAI: GPT-4 Google: Gemini 1.5 Flash ·Anthropic: Claude 3.5 Sonnet
[0034] Each information processing device is configured by a computer equipped with an arithmetic unit and a storage device. The basic hardware configuration of the computer and the basic functional configuration of the computer realized by the hardware configuration will be described later. For each of the terminal device 10, the server 20, and the generation AI system 30, explanations that overlap with the basic hardware configuration and basic functional configuration of the computer will be omitted.
[0035] <2. Terminal Device Configuration> Fig. 2 is a block diagram showing an example of the functional configuration of the terminal device 10. As shown in Fig. 2, the terminal device 10 includes a communication unit 120, an input device 13, an output device 14, an audio processing unit 17, a microphone 171, a speaker 172, a camera 160, a position information sensor 150, a storage unit 180, and a control unit 190. The blocks included in the terminal device 10 are electrically connected by, for example, a bus or the like.
[0036] The communication unit 120 performs processing such as modulation and demodulation for the terminal device 10 to communicate with other devices. The communication unit 120 performs transmission processing on the signal generated by the control unit 190 and transmits it to the outside (for example, the server 20). The communication unit 120 performs reception processing on the signal received from the outside and outputs it to the control unit 190.
[0037] The input device 13 is a device for inputting instructions or information by a user operating the terminal device 10. The input device 13 is realized, for example, by a touch-sensitive device 131 or the like, which inputs instructions by touching an operation surface. When the terminal device 10 is a PC or the like, the input device 13 may be realized by a reader, keyboard, mouse, or the like. The input device 13 converts instructions input by the user into electrical signals and outputs the electrical signals to the control unit 190. The input device 13 may include, for example, a receiving port that receives electrical signals input from an external input device.
[0038] The output device 14 is a device for presenting information to a user operating the terminal device 10. The output device 14 is realized, for example, by a display 141 or the like. The display 141 displays data according to the control of the control unit 190. The display 141 is realized, for example, by an LCD (Liquid Crystal Display) or an organic EL (Electro-Luminescence) display or the like.
[0039] The audio processing unit 17 performs, for example, digital-to-analog conversion processing of an audio signal. The audio processing unit 17 converts a signal provided from the microphone 171 into a digital signal and provides the converted signal to the control unit 190. The audio processing unit 17 also provides the audio signal to the speaker 172. The audio processing unit 17 is realized, for example, by a processor for audio processing. The microphone 171 receives audio input and provides an audio signal corresponding to the audio input to the audio processing unit 17. The speaker 172 converts the audio signal provided from the audio processing unit 17 into audio and outputs the audio to the outside of the terminal device 10.
[0040] The camera 160 is a device that receives light with a light receiving element and outputs the light as an image capturing signal.
[0041] The position information sensor 150 is a sensor that detects the position of the terminal device 10, and is, for example, a GPS (Global Positioning System) module. The GPS module is a receiving device used in a satellite positioning system. In the satellite positioning system, signals are received from at least three or four satellites, and the current position of the terminal device 10 equipped with the GPS module is detected based on the received signals. The position information sensor 150 may detect the current position of the terminal device 10 from the position of the wireless base station to which the terminal device 10 is connected.
[0042] The storage unit 180 is realized by, for example, the memory 15, the storage 16, etc., and stores data and programs used by the terminal device 10. The storage unit 180 stores, for example, user information 181.
[0043] The user information 181 includes, for example, information about the user who uses the terminal device 10. The information about the user includes, for example, the user's name, age, address, date of birth, contact information, and the like.
[0044] The control unit 190 is realized by the processor 19 reading a program stored in the storage unit 180 and executing instructions included in the program. The control unit 190 controls the operation of the terminal device 10. The control unit 190 operates in accordance with the program to fulfill the functions of an operation reception unit 191, a transmission / reception unit 192, and a presentation control unit 193.
[0045] The operation reception unit 191 performs processing for receiving instructions or information input from the input device 13. Specifically, for example, the operation reception unit 191 receives instructions or information input from the touch-sensitive device 131 or the like.
[0046] Furthermore, the operation reception unit 191 receives voice instructions input from the microphone 171. Specifically, for example, the operation reception unit 191 receives a voice signal that is input from the microphone 171 and converted into a digital signal by the voice processing unit 17. For example, the operation reception unit 191 analyzes the received voice signal and extracts a predetermined noun, thereby acquiring an instruction from the user.
[0047] The transmitting / receiving unit 192 performs processing for the terminal device 10 to transmit and receive data to and from an external device such as the server 20 in accordance with a communication protocol. Specifically, for example, the transmitting / receiving unit 192 transmits information input by a user or instructions from a user to the server 20. In addition, the transmitting / receiving unit 192 receives information provided by the server 20.
[0048] The presentation control unit 193 controls the output device 14 to present information provided from the server 20 to the user. Specifically, for example, the presentation control unit 193 causes the information transmitted from the server 20 to be displayed on the display 141. In addition, the presentation control unit 193 causes the information transmitted from the server 20 to be output from the speaker 172.
[0049] <3. Functional configuration of the server> 3 is a diagram showing an example of the functional configuration of the server 20. As shown in FIG.
[0050] The communication unit 201 performs processing for the server 20 to communicate with external devices. The storage unit 202 stores, for example, a question master table 2021 (a predetermined data table) and an answer table 2022. The data tables stored in the storage unit 202 are not limited to these.
[0051] The question master table 2021 stores multiple questions that the generative AI model presents to the user and the definitions of the answers to each of the multiple questions. The definitions determine the granularity and content of the answers from the user that determine whether an answer to the question has been obtained. Hereinafter, the multiple questions will be referred to as a "question group," and the answer definitions to each of the multiple questions will be referred to as a "definition group."
[0052] The response table 2022 records a log of the dialogue between the user and the LLM. The log of the dialogue between the user and the LLM includes, for example, the content of the dialogue, the LLM's judgment results, the created summary (details will be described later), questions that were not output from the LLM, etc.
[0053] The control unit 203 is realized by the processor 29 reading a program stored in the storage unit 202 and executing instructions included in the program. The program includes an application such as a web browser application. The program includes a programming language such as JavaScript (registered trademark) that is executed on the web browser application stored in the terminal device 10. The control unit 203 operates in accordance with the program to fulfill the functions of a reception control module 2031, a transmission control module 2032, a presentation control module 2033, and an interaction processing module 2034.
[0054] The reception control module 2031 controls the process by which the server 20 receives signals from external devices in accordance with a communication protocol. The transmission control module 2032 controls the process by which the server 20 transmits signals to external devices in accordance with a communication protocol. The presentation control module 2033 controls the process of presenting various information to users and interactive service personnel, etc.
[0055] The dialogue processing module 2034, for example, provides the generation AI system 30 with information necessary for dialogue between the user and the LLM. The dialogue processing module 2034, for example, instructs the generation AI system 30 to execute various processes using the LLM. The dialogue processing module 2034, for example, transmits output data of the LLM received from the generation AI system 30 to the terminal device 10. The dialogue processing module 2034, for example, controls the speech and actions of the avatar displayed on the display 141.
[0056] <4. Data Structure> The data structures of the various tables stored in the server 20 will be described with reference to Figures 4 and 5. Note that the data structures described are merely examples and do not exclude data that is not listed. Furthermore, even data listed in the same table may be stored in separate storage areas in the storage unit 202. Furthermore, the various tables described above may be stored in the generation AI system 30.
[0057] (Question master table) Fig. 4 is a diagram showing the data structure of the question master table 2021. As shown in Fig. 4, the question master table 2021 has columns for question sentences, answer definitions, and question order, with a question ID as a key, for example.
[0058] The question ID is a column that stores an identifier for uniquely identifying a question presented by the generation AI system 30.
[0059] The question text is a column that stores the text content of a question presented to the user via the terminal device 10 (specifically, the avatar displayed on the display 141). For example, content such as "What is your name?" or "How old are you?" is stored. The text content stored in the question text column corresponding to each question ID constitutes a question group.
[0060] The answer definition is a column that stores the definition of an answer to a question corresponding to a question ID. Specifically, the answer definition stores criteria for determining that an answer from a user for a question corresponding to each question ID must satisfy certain conditions to be considered an "answer." The definition is stored in the answer definition column, for example, in a natural language description (e.g., a full name answer satisfies the definition), the presence or absence of keywords, a specific information format (e.g., numbers, dates), or a format that can be interpreted by the generation AI system 30 (e.g., a condition description in JSON format). For example, for the question "What is your name?", a definition such as "Answering your full name is sufficient" is stored, and for the question "How old are you?", a definition such as "Answering your age is sufficient" is stored. The definitions stored in the answer definition column corresponding to each question ID constitute a definition group.
[0061] The question order is a column that stores a numerical value indicating the order in which questions are usually presented in a dialogue between the user and the generative AI system 30. For example, if a question is presented first, the numerical value stored in the question order column corresponding to that question is "1." However, if a question is skipped, other questions may not be presented in this order.
[0062] In this embodiment, the order of each question constituting a question group is predetermined by the question master table 2021, but this is not limited to this. For example, the generation AI system 30 may select the next question from the question group depending on the content of the input answer.
[0063] The generation AI system 30 determines the degree of satisfaction of the answer definition by the user using the definition stored in the answer definition column in the question master table 2021. Specifically, for example, a prompt (hereinafter, a judgment prompt) is set in advance, which includes a combination of the same content as the combination of the question group and the definition group stored in the question master table 2021. The judgment prompt is generated, for example, by reading out the combination of the question group and the definition group stored in the question master table 2021, and is stored in advance in the storage unit 202 or the generation AI system 30.
[0064] The decision prompt is realized by a combination of the information processing described below. The entity that executes the information processing may be, for example, the server 20 or the generation AI system 30.
[0065] First, the question text for a specific question and the corresponding answer definition are read from the question master table 2021, and these are combined into one set. For example, the two pieces of information, the question text "What is your name?" and the answer definition "Satisfying if you answer your full name" are treated as a pair.
[0066] Next, more comprehensive instructions are added to the combined information to define the role and behavior of the LLM. For example, instructions indicating rules and context, such as "You are an AI agent facilitating a dialogue with the user. Based on the following question and answer definitions, please determine whether the user's answer meets the required conditions," are added to the beginning or end of the decision prompt.
[0067] Furthermore, to control the flow of the dialogue, the prompt can include information on the "question order" stored in the question master table 2021, as well as text (additional information) that indicates more specific criteria for judgment and conditional branching, such as "If the user's answer meets the definition of the answer by 90% or more, please ask the next question."
[0068] The decision prompt is completed by combining these elements (combined question and answer definitions, added instructions, and included additional information) into one continuous text data. It is also possible to dynamically construct a decision prompt by inserting information read from the question master table 2021 into the middle of a specific template syntax.
[0069] By having the LLM learn the decision prompts generated using the above method in advance, the LLM is tuned to be able to determine to what extent a user's answer satisfies the definition of that answer.
[0070] The decision prompt may be created and set in advance by an administrator or developer of the server 20 who designs a dialogue scenario with the user. Examples of a creation method include a method of directly inputting the question sentence and answer definitions required for the dialogue via a user interface such as a setting screen provided by the server 20, or a method of uploading a document file in a predetermined format (e.g., a CSV or JSON file) containing this information to the server 20.
[0071] That is, the generative AI system 30 functions as an AI agent that autonomously controls and executes part of the dialogue flow with the user by receiving instructions for tasks such as evaluating the user's answers and determining the dialogue progress based on that evaluation. For example, when a goal is given, such an autonomous AI agent generates a task to achieve the goal from the generative AI model, collects information for the generative AI model to execute the generated task, and outputs information to achieve the goal by repeating the process of having the generative AI model execute the task. The generative AI system 30 functioning as an autonomous AI agent can be realized, for example, not only by tuning the LLM using decision prompts, but also by MCP (Model Context Protocol) collaboration. MCP collaboration enables autonomous task execution through collaboration between a model unit that thinks and plans, a controller unit that executes the plan, and a parser unit that analyzes information.
[0072] (Answer Table) Fig. 5 is a diagram showing the data structure of the answer table 2022. As shown in Fig. 5, the answer table 2022 has columns of, for example, a session ID, a user ID, a timestamp, a question ID, a question presentation flag, an actual answer, a summary, a definition satisfaction flag, a skip flag, and an information source log ID, with a log ID as a key.
[0073] The log ID is a column that stores an identifier for uniquely identifying each event (question presentation, answer reception, judgment, etc.) during the dialogue between the user and the generation AI system 30.
[0074] The session ID is a column that stores an identifier for identifying the interaction between the user and the generation AI system 30 itself.
[0075] The user ID is a column that stores an identifier for uniquely identifying a user who is having a dialogue with the generation AI system 30.
[0076] The timestamp is a column that stores the date and time when the log of the interaction corresponding to the session ID was recorded.
[0077] The question ID is a column that stores an identifier for uniquely identifying a question asked in a dialogue corresponding to the session ID. The information stored in the question ID of the answer table 2022 is the same as the information stored in the question ID of the question master table 2021, for example.
[0078] The question presentation flag is a column that stores a flag (e.g., TRUE / FALSE) indicating whether the question indicated by the question ID was actually presented to the user. For example, if the question was not actually presented, a "FALSE" flag is stored in the question presentation flag.
[0079] The actual answer is a column that stores data related to an answer input by a user via the terminal device 10. The data related to the answer is, for example, reference information (path) of text or audio data. If a question is skipped, for example, this column may be empty.
[0080] Summary is a column that stores a summary created by the generation AI system 30 when the user's answer satisfies the definition of the answer. The summary is a summary of the user's comments to the question. The user's comments to the question include the user's answer to the question as well as all of the user's comments related to the question. Examples of user comments related to the question include the user's impressions / opinions to the question, the user's questions to the question, etc. The summary may also include the answer to the next question. If the user's answer does not satisfy the definition of the answer, for example, this column may be empty.
[0081] The definition satisfaction flag is a column that stores a flag indicating whether the user's answer to a question satisfies the definition of that answer. The definition satisfaction flag is also a column that stores a flag indicating whether the summary created by the generative AI system 30 satisfies the definition of the answer to the next question. The flag is expressed as "TRUE / FALSE", for example, and if the definition is satisfied, a "TRUE" flag is stored in the definition satisfaction flag.
[0082] The skip flag is a column that stores a flag indicating whether the question identified by the question ID was skipped based on information contained in the preceding answer. The flag is expressed as "TRUE / FALSE", for example, and if the question was skipped, a "FALSE" flag is stored in the definition fulfillment flag.
[0083] The information source log ID is a column that stores the log ID of the log in which the summary that was the source of the answer to the question is recorded when the question is skipped.
[0084] The question master table 2021 and the answer table 2022 allow the generative AI system 30 to proceed with a dialogue with the user based on the set questions and definitions, interpret what the user says, and create a summary. The generative AI system 30 can also dynamically skip subsequent questions based on the created summary.
[0085] <5. Operation> An example of the flow of the dialogue processing in the system 1 will be described below with reference to Fig. 6. Fig. 6 is a flowchart showing an example of the flow of the dialogue processing in the system 1.
[0086] This example assumes that decision prompts have been set in advance and that the LLM has been tuned by learning the decision prompts in advance. In other words, this example assumes that the LLM functions as an AI agent that autonomously controls and executes part of the dialogue flow with the user.
[0087] In addition, in this operation example, an example in which the first question is presented to the user will be described, but the various processes related to this operation example can also be applied to cases in which questions are presented to the user in any order during a dialogue.
[0088] In step S101 of the flowchart shown in FIG. 6, the server 20 presents a question to the user.
[0089] Specifically, for example, when a user operates the terminal device 10 to start a dialogue service, the transmission / reception unit 192 transmits a dialogue start request to the server 20 via the communication unit 120. The reception control module 2031 receives the dialogue start request, for example, via the communication unit 201. The dialogue processing module 2034 instructs the generation AI system 30 to start a dialogue, for example, via the communication unit 201. The dialogue processing module 2034, for example, identifies the dialogue context related to the dialogue start request (e.g., type of interview, user ID, etc.) and reads various information related to the first question (hereinafter referred to as "first question") from the question master table 2021. The transmission control module 2032 transmits various information to the generation AI system 30, for example, via the communication unit 201.
[0090] For example, upon receiving an instruction from the server 20 to start a dialogue, the generative AI system 30 inputs various pieces of information received from the server 20 into the LLM. The LLM, for example, analyzes the various pieces of input information to identify the question sentence of the first question and outputs information related to the identified question sentence (hereinafter referred to as "first identification information"). For example, the LLM may identify the question sentence of the first question by directly referring to the question master table 2021. For example, the generative AI system 30 acquires the first identification information output from the LLM and transmits it to the server 20.
[0091] The reception control module 2031 receives the first identification information via, for example, the communication unit 201. The dialogue processing module 2034, for example, refers to the first identification information, reads out the text of the question sentence of the first question (hereinafter referred to as "first text") from the question master table 2021, and converts it into voice data (hereinafter referred to as "first voice data"). The process of converting the first text into the first voice data may be executed by, for example, the voice processing unit 17. In the case of a chat-style dialogue, the first text does not need to be converted into the first voice data. Alternatively, the LLM may directly output the first text or the first voice data. The transmission control module 2032 transmits the first voice data to the terminal device 10 via, for example, the communication unit 201. If the first text is not converted into the first voice data, the first text is transmitted to the terminal device 10.
[0092] The presentation control module 2033, for example, controls the speech and actions of an avatar displayed on the display 141 via the presentation control unit 193, causing the avatar to make a speech related to the first voice data (first question). When the terminal device 10 receives the first text, the presentation control module 2033 may, for example, control the presentation control unit 193 to display the first text on the display 141. In this case, the avatar may or may not be displayed. In this way, the server 20 presents the question to the user.
[0093] For example, in accordance with each process of step S101, the dialogue processing module 2034 generates a session ID and a first log entry corresponding to this dialogue in the answer table 2022. In the first log entry, for example, relevant information is recorded in each column of the log ID, session ID, user ID, timestamp, question ID, and question presentation flag. For example, the identifier of the first question is recorded in the question ID column, and "TRUE" is recorded in the question presentation flag column.
[0094] In step S102, the server 20 accepts the user's answer to the question posed.
[0095] Specifically, for example, operation receiving unit 191 receives input of an answer to the first question from the user via input device 13 (touch-sensitive device 131 or microphone 171). Transmitting / receiving unit 192 transmits data related to the received answer (hereinafter referred to as "answer data") to server 20 via communication unit 120, for example. The answer data may be, for example, text data or voice data.
[0096] The reception control module 2031 receives answer data, for example, via the communication unit 201. The transmission control module 2032 transmits the received answer data to the generation AI system 30, for example, via the communication unit 201. The dialogue processing module 2034 records the received answer data, for example, in the actual answer column of the corresponding log entry in the answer table 2022. In this way, the server 20 accepts the user's answer to the presented question.
[0097] In step S103, the server 20 inputs the received answer from the user into the generative AI model, and causes the generative AI model to determine whether or not the received answer satisfies the definition of an answer to a question.
[0098] Specifically, for example, the dialogue processing module 2034 instructs the generation AI system 30 to make a first definition fulfillment judgment via the communication unit 201. The first definition fulfillment judgment is a judgment as to whether the content of the answer data fulfills the definition of the answer to the first question.
[0099] The generative AI system 30, for example, inputs answer data received from the server 20 into the LLM. Upon receiving, for example, an instruction from the server 20 to make a first definition fulfillment determination, the generative AI system 30 reads the answer definition corresponding to the question ID of the first question from the question master table 2021 via the communication unit 201. The LLM executes the first definition fulfillment determination, for example, by comparing the input answer data with the read answer definition. This determination is realized by the LLM being pre-tuned by a determination prompt. For example, for a definition that "a full name answer satisfies the definition," if the user answers "My name is Mr. / Mrs. XX," it is determined that the definition is not satisfied, and if the user answers "My name is Taro XX," it is determined that the definition is satisfied. The LLM, for example, outputs a determination result of the first definition fulfillment determination (hereinafter referred to as the "first determination result"). The generative AI system 30, for example, acquires the first determination result output from the LLM and transmits it to the server 20.
[0100] The reception control module 2031 receives, for example, the first judgment result transmitted from the generation AI system 30 via the communication unit 201. The dialogue processing module 2034 records, for example, the received first judgment result in the definition satisfaction flag column of the corresponding log entry in the answer table 2022 (e.g., "TRUE" if satisfied, "FALSE" if not satisfied). This causes the server 20 to make the LLM perform a first definition satisfaction judgment.
[0101] If it is determined that the user's answer satisfies the definition of an answer to a question, the server 20 causes the generative AI model to create a summary of the user's utterance in response to the question in step S104.
[0102] Specifically, for example, when the first judgment result indicates that the content of the answer data satisfies the definition of an answer to the first question, the dialogue processing module 2034 instructs the generation AI system 30 to create a summary via the communication unit 201. Upon receiving an instruction to create a summary from the server 20, for example, the generation AI system 30 causes the LLM to create a summary based on the answer data.
[0103] The answer data may include utterances other than the user's answer to the first question. The utterances other than the user's answer to the first question may include utterances related to the first question as well as expressions unrelated to the first question.
[0104] A summary is a summary of the user's comments in response to a question, and may include not only the user's answer to the question but also all of the user's comments related to the question (impressions, opinions, counter-questions, etc.). The summary may also include answer information to subsequent questions. For example, if the first question is "What is your name?" and the user answers "My name is Taro XX. I'm 30 years old," the summary will be created with the following content: "Name: Taro XX, Age: 30."
[0105] Here, summaries are created each time according to the specific content of the user's comments. Therefore, when the generative AI system 30 causes the LLM to create a summary, for example, it inputs a summary creation prompt based on the response data to the LLM. The summary creation prompt has a format and content such as, for example, "Please summarize the following comment: '(text of the response data)'."
[0106] The prompt for creating a summary may be generated by, for example, the generation AI system 30. Alternatively, for example, the prompt for creating a summary may be selected by the server 20 or the generation AI system 30 from among multiple types of templates. The multiple types of templates may be stored in, for example, the server 20 or the generation AI system 30. Alternatively, for example, the character string or structure of the prompt for creating a summary may be predefined as a configuration file (e.g., XML, JSON, YAML format, etc.), and the generation AI system 30 may read this configuration as needed and construct the prompt. The configuration file may be stored in, for example, the server 20 or the generation AI system 30.
[0107] The generation AI system 30, for example, acquires the summary created and output by the LLM and transmits it to the server 20. The reception control module 2031 receives the summary, for example, via the communication unit 201. The dialogue processing module 2034, for example, records the received summary in the summary column of the corresponding log entry in the answer table 2022. This causes the server 20 to have the LLM create a summary.
[0108] If the content of the answer data does not satisfy the definition of the answer to the first question, the dialogue processing module 2034 may, for example, present the first question to the user again. Also, for example, the dialogue processing module 2034 may generate an auxiliary question to prompt the user to answer and present it to the user.
[0109] In step S105, the server 20 causes the generative AI model to determine whether or not the information included in the created summary satisfies the definition of the answer to the question following the question.
[0110] Specifically, for example, the dialogue processing module 2034 refers to the question master table 2021 to identify the next question (hereinafter referred to as the "second question"), and then instructs the generation AI system 30 to make a second definition fulfillment judgment via the communication unit 201. The second definition fulfillment judgment is a judgment as to whether or not the information included in the summary fulfills the definition of the answer to the second question.
[0111] For example, upon receiving an instruction from the server 20 to determine whether the second definition is satisfied, the generative AI system 30 reads the definition of the answer corresponding to the question ID of the second question from the question master table 2021 via the communication unit 201. The LLM, for example, executes the second definition satisfaction determination by comparing the created summary with the read-out answer definition. This determination is also realized by the LLM being pre-tuned by a judgment prompt. For example, for the above-mentioned summary "Name: Taro Tanaka, Age: 30 years old," if the second question is "How old are you?" and the answer definition is "The definition is satisfied if the age is answered," then it is determined that "Age: 30 years old" in the summary satisfies this definition. The LLM, for example, outputs the determination result of the second definition satisfaction determination (hereinafter referred to as the "second determination result"). For example, the generative AI system 30 acquires the second determination result output from the LLM and transmits it to the server 20.
[0112] The reception control module 2031 receives the second judgment result transmitted from the generation AI system 30, for example, via the communication unit 201. The dialogue processing module 2034, for example, records the received second judgment result in the definition satisfaction flag column of the corresponding log entry in the answer table 2022 (e.g., "TRUE" if satisfied, "FALSE" if not satisfied). This causes the server 20 to make the LLM perform a second definition satisfaction judgment.
[0113] If it is determined that the information contained in the created summary meets the definition of an answer to the next question, the server 20, in step S106, sets the information as the answer to the next question and causes the generative AI model to stop outputting the next question.
[0114] Specifically, for example, if the second judgment result indicates that the information included in the summary meets the definition of an answer to the second question, the dialogue processing module 2034 instructs the generation AI system 30 to stop outputting the question. Stopping the question output means that the LLM stops identifying the question sentence of the second question based on the first identification information. Upon receiving an instruction to stop outputting the question from the server 20, for example, the generation AI system 30 treats the relevant information in the summary as an answer to the second question and causes the LLM to stop identifying the question sentence of the second question. As a result, the server 20 causes the LLM to stop outputting the second question.
[0115] Accompanying this skip processing, the dialogue processing module 2034 creates a new log entry (or updates an existing entry) for the second question in the answer table 2022, for example. That is, the dialogue processing module 2034 records, for example, the ID of the second question in the target question ID column, "FALSE" in the question presentation flag column, the answer information for the second question extracted from the summary in the summary column, "TRUE" in the definition satisfaction flag column, "TRUE" in the skip flag column, and the log ID of the log in which the summary that became the answer information source for the second question is recorded in the information source log ID column. Thereafter, the dialogue processing module 2034 instructs the generation AI system 30 to perform the same processing as in step S705 for, for example, the question next to the second question (the third question).
[0116] On the other hand, if it is determined that the information included in the created summary does not satisfy the definition of the answer to the next question, the server 20 causes the generative AI model to output the next question in step S106.
[0117] Specifically, for example, if the second judgment result indicates that the information included in the summary does not satisfy the definition of the answer to the second question, the dialogue processing module 2034 instructs the generation AI system 30 to output a second question via the communication unit 201. Upon receiving, for example, an instruction to output the second question from the server 20, the generation AI system 30 causes the LLM to identify the question sentence of the second question. The LLM, for example, analyzes the first identification information to identify the question sentence of the second question and outputs information related to the identified question sentence (hereinafter referred to as "second identification information"). The LLM may, for example, directly refer to the question master table 2021 to identify the question sentence of the second question. The generation AI system 30, for example, acquires the second identification information output from the LLM and transmits it to the server 20.
[0118] The reception control module 2031 receives the second identification information via, for example, the communication unit 201. The dialogue processing module 2034, for example, refers to the second identification information, reads out the text of the question sentence of the second question (hereinafter referred to as "second text") from the question master table 2021, and converts it into voice data (hereinafter referred to as "second voice data"). The process of converting the second text into the second voice data may be executed by, for example, the voice processing unit 17. In the case of a chat-style dialogue, the second text does not need to be converted into the second voice data. Alternatively, the LLM may directly output the second text or the second voice data. The transmission control module 2032 transmits the second voice data to the terminal device 10 via, for example, the communication unit 201. If the second text is not converted into the second voice data, the second text is transmitted to the terminal device 10.
[0119] The presentation control module 2033, for example, controls the speech and actions of the avatar displayed on the display 141 via the presentation control unit 193, causing the avatar to make a speech related to the second voice data (a second question). When the terminal device 10 receives the second text, the presentation control module 2033 may, for example, control the presentation control unit 193 to display the second text on the display 141. In this case, the avatar may or may not be displayed. This causes the server 20 to output the second question to the LLM.
[0120] The dialogue processing module 2034 generates, for example, a session ID and a second log entry corresponding to this dialogue in the answer table 2022. In the second log entry, for example, the relevant information is recorded in each column of the log ID, session ID, user ID, timestamp, question ID, and question presentation flag. For example, the identifier of the second question is recorded in the question ID column, "TRUE" (because the question will be presented) is recorded in the question presentation flag column, and "FALSE" is recorded in the skip flag column. Also, for example, the actual answer, summary, and definition fulfillment flag columns are set to their initial states (e.g., empty or a value indicating not applicable).
[0121] The dialogue processing module 2034 cooperates with the generation AI system 30 and repeatedly executes a series of processes from step S103 to step S106 for the group of questions set in the question master table 2021. When all questions have been processed or a predetermined dialogue termination condition is met, the dialogue processing module 2034 terminates the dialogue between the user and the LLM.
[0122] After the dialogue is completed, the dialogue processing module 2034 can link the dialogue results (summary, etc.) stored in the response table 2022 to other business systems (not shown) as necessary.
[0123] <6. Screen Examples> An example screen of the display 141 of the terminal device 10 in the present disclosure will be described. FIG. 7 is a diagram showing an example screen when a user interacts with an LLM via an avatar. This screen is a user interface for interaction between the user and the LLM, for example, presenting questions to the user and accepting answers from the user. Note that this example screen is merely an example, and various screen configurations and screen contents may be adopted. For example, only an avatar 4011, described below, may be displayed on the display 141.
[0124] The avatar display area 4001 is an area where an image or animation of an avatar 4011 is displayed. The avatar 4011 has, for example, a human appearance and is an interface that speaks (including asking questions) and moves under the control of the dialogue processing module 2034. When the avatar 4011 speaks, the movement of the avatar's mouth, etc. may be displayed in synchronization. The speech of the avatar 4011 is realized, for example, by audio output from the speaker 172, but may also be realized by displaying the speech content as text near the display area of the avatar 4011. In this case, the avatar 4011 may function only as an icon without speaking.
[0125] The question display area 4002 is an auxiliary display area that allows the user to recognize the content of the question from the avatar 4011. Because the avatar 4011 asks a question by voice, the text of the question may not be displayed in this area, or if the text of the question is transmitted from the server 20 together with the voice data, the text may be displayed.
[0126] The answer display area 4003 is an area where the answer entered by the user by voice or text is displayed in text format. The text displayed in this area corresponds to the answer data accepted in step S102.
[0127] Input means display area 4004 is an area that displays a means for the user to input a response to avatar 4011. In this example screen, for example, a microphone icon 4014 for starting voice input and a field 4024 for supplementary text input are displayed in this area. For example, in step S102, when operation acceptance unit 191 accepts an operation of pressing microphone icon 4014 by the user, it is assumed that acceptance of voice input from microphone 171 will begin.
[0128] The send button 4005 is a button for sending the answer (mainly voice input or text input) input by the user via the input means display area 4004 to the server 20.
[0129] The conversation log display area 4006 is an area where a history of a series of interactions between the user and the avatar 4011 (specifically, the LLM) is displayed in chronological order. The user can, for example, scroll through the contents of past conversations to check them.
[0130] <7.Summary> As described above, in this embodiment, the server 20 executes the following processes by cooperating with the generative AI system 30. That is, the server 20 first presents questions to the user based on a plurality of preset questions and definitions of answers to each question, and accepts answers from the user. The server 20 then inputs the accepted answers into the LLM, causes the LLM to determine whether the answers satisfy the definitions of answers to the questions, and, if they do, causes the LLM to create a summary of the user's comments. The server 20 then causes the LLM to determine whether information included in the created summary satisfies the definition of an answer to the question following the question in question, and, if it is determined that the definitions do satisfy the definitions, sets the information as the answer to the next question and causes the generative AI model to stop outputting the next question.
[0131] This allows the server 20 to recognize information that the user has already provided in a previous response and actively avoid asking the same content again in subsequent questions, thereby freeing the user from the hassle of repeatedly explaining the same information, reducing stress in the dialogue and improving the efficiency of the entire dialogue, including information gathering and interviews.
[0132] Furthermore, in this embodiment, if the server 20 determines that the information included in the created summary does not satisfy the definition of the answer to the next question, it causes the LLM to output the next question to the user.
[0133] This ensures that all necessary information is acquired comprehensively by presenting the appropriate next question if there is information that has not yet been collected in the dialogue. As a result, while improving efficiency by skipping questions, it is possible to maintain the completeness of the information necessary to achieve the dialogue's purpose and ensure the continuity of the dialogue.
[0134] In addition, in this embodiment, the LLM is pre-tuned to use a decision prompt (a predetermined prompt) that includes a group of questions and a group of definitions to determine whether the answer provided by the user to a question satisfies the definition of that answer, and whether the information contained in the created summary satisfies the definition of the answer to the question following the question.
[0135] This improves the accuracy and consistency of judgments regarding whether a user's answer satisfies a predetermined definition and whether the created summary contains the answer to the next question. Furthermore, by providing the LLM with task-specific instructions as decision prompts, the behavior of a general-purpose LLM can be more appropriately tuned in line with the objectives of this disclosure. This reduces question-skipping errors and enables smoother, more accurate interaction between the user and the LLM.
[0136] In addition, in this embodiment, question groups and definition groups are set in a question master table 2021 (a specified data table) that stores question sentences corresponding to the questions, answer definitions corresponding to the question sentences, and information indicating the order in which the questions are presented, in association with each other.
[0137] This allows for the structured and centralized management of the components of a dialogue scenario, such as the set of questions used in the dialogue, the definition of the answers to each question in the set of questions, and the order in which the questions are presented. This facilitates maintenance, such as the design, modification, and addition of dialogue content, improving the development efficiency and operability of System 1. It also promotes the standardization and reuse of dialogue scenarios, facilitating their deployment in a variety of dialogue services.
[0138] <8. Variations> In this embodiment, the server 20 causes the generative AI model to determine whether information included in a summary of a user's utterance in response to a question (e.g., the first question) satisfies the definition of an answer to the next question (e.g., the second question). However, the present disclosure is not limited to this.
[0139] For example, when the server 20 makes the generative AI model determine whether the answer to the next question satisfies the definition, the server 20 may use information contained in the summaries of the user's statements created for all questions before the next question as the subject of the determination. Below, we will explain an example in which the user answers the first question, "Can you please tell me your name, age, and prefecture where you live?" with "My name is △△Ai. I am 25 years old and live in Kanagawa Prefecture."
[0140] For example, based on the above-mentioned answers, the LLM of the generative AI system 30 creates and outputs a summary of the first question, such as "Name: △△Ai, Age: 25, Prefecture of residence: Kanagawa." Here, if the second question in the question order predetermined by the question master table 2021 is "How old are you?", the dialogue processing module 2034 reads, for example, from the question master table 2021 a definition of the answer to this second question (e.g., that age can be specified by a specific number) and transmits it to the generative AI system 30 via the communication unit 201.
[0141] For example, the generative AI system 30 causes the LLM to determine whether information satisfying this definition is included in the summary of the first question, which is a question before the second question, "Name: △△Ai, Age: 25, Prefecture of Residence: Kanagawa Prefecture." If the LLM determines that at least one piece of information (in this example, "Age: 25") included in the summary of the answer to the first question satisfies the definition of an answer to the second question, the generative AI system 30, for example, sets the at least one piece of information as the answer to the second question and causes the LLM to stop outputting the second question. The dialogue processing module 2034 internally stores, for example, "25 years old" as the answer to the second question and records this in the answer table 2022. At this time, "TRUE" is recorded in the skip flag column, and the log ID of the first question is recorded in the information source log ID column.
[0142] Furthermore, if the third question in the question sequence predetermined by the question master table 2021 is "Which prefecture do you live in?", the dialogue processing module 2034 reads, for example, the definition of the answer to this third question (e.g., being able to identify the name of a prefecture in Japan) from the question master table 2021 and transmits it to the generation AI system 30 via the communication unit 201.
[0143] In this case, because the second question was skipped as described above, there is no summary obtained directly from the second question, and only the age information "25 years old" is the user's utterance in response to the second question. In this modified example, even in such a case, the dialogue processing module 2034 causes the LLM to again evaluate the summaries of all questions prior to the third question, i.e., the summary of the first question, "Name: △△Ai, Age: 25 years old, Prefecture of residence: Kanagawa Prefecture." Because this summary includes the information "Prefecture of residence: Kanagawa Prefecture," if the LLM determines that this information meets the definition of an answer to the third question, "Which prefecture do you live in?", the generation AI system 30 causes the LLM to stop outputting the third question as well, and sets "Kanagawa Prefecture" as the answer to the third question.
[0144] On the other hand, if it is determined that none of the information contained in the summary of answers to all questions satisfies the definition of the answer to the next question, the server 20 may cause the generative AI model to output the next question.
[0145] In the above example, if the answer to the first question is only "△△Ai, I'm 25 years old," and does not include information about the prefecture, and the summary of the first question also does not include prefecture information, then there is no information in the past summary that meets the definition of the answer to the third question, "Which prefecture do you live in?" Therefore, the dialogue processing module 2034, for example, instructs the generative AI system 30 to output the third question using the LLM. For example, upon receiving an instruction to output the third question from the server 20, the generative AI system 30 causes the LLM to output the text or audio data of the question sentence of the third question.
[0146] As described above, in this modification, the server 20 expands the range of summaries used to determine whether to output a certain question to include not only the summaries for the question preceding the question, but also all summaries obtained throughout the entire dialogue. This allows the server 20 to more comprehensively and flexibly extract specific information necessary for determining whether to output a question from the summaries already provided, regardless of which question the user provided specific information in their answer. This effectively avoids unnecessary repetition of questions, and also ensures that questions can be asked to obtain necessary information when the necessary information has not been collected.
[0147] For example, when the server 20 causes the generative AI model to determine whether a response to a next question satisfies the definition, the server 20 may use information contained in the summaries of user statements created for each question a predetermined number of times before the next question as the target of the determination. The predetermined number of times may be set arbitrarily, for example, and may be set in advance in the determination prompt. Furthermore, for example, the LLM may autonomously set the predetermined number of times depending on the content of the user's response to a certain question or the content of the summary corresponding to a certain question.
[0148] <9. Basic Computer Hardware Configuration> 8 is a block diagram showing the basic hardware configuration of a computer 90. The computer 90 includes at least a processor 901, a main memory device 902, an auxiliary memory device 903, and a communication IF 991 (interface), which are electrically connected to one another by a communication bus 921.
[0149] The processor 901 is hardware for executing an instruction set written in a program, and is composed of an arithmetic unit, registers, peripheral circuits, and the like.
[0150] The main storage device 902 is for temporarily storing programs, data to be processed by the programs, etc. For example, it is a volatile memory such as a DRAM (Dynamic Random Access Memory).
[0151] The auxiliary storage device 903 is a storage device for saving data and programs, such as a flash memory, a hard disk drive (HDD), a magneto-optical disk, a CD-ROM, a DVD-ROM, or a semiconductor memory.
[0152] The communication IF 991 is an interface for inputting and outputting signals for communicating with other computers via a network using wired or wireless communication standards.
[0153] The network is composed of the Internet, a LAN, various mobile communication systems constructed by wireless base stations, etc. For example, the network includes 3G, 4G, and 5G mobile communication systems, LTE (Long Term Evolution), and wireless networks (e.g., Wi-Fi (registered trademark)) that can connect to the Internet via a predetermined access point. In the case of a wireless connection, communication protocols include, for example, Z-Wave (registered trademark), ZigBee (registered trademark), and Bluetooth (registered trademark). In the case of a wired connection, the network also includes a direct connection using a USB (Universal Serial Bus) cable, etc.
[0154] It should be noted that the computer 90 can be virtually realized by distributing all or part of each hardware configuration across multiple computers 90 and interconnecting them via a network. In this way, the computer 90 is a concept that includes not only a computer 90 housed in a single housing or case, but also a virtualized computer system.
[0155] <10. Basic Functional Configuration of Computer 90> The following describes the functional configuration of a computer realized by the basic hardware configuration (FIG. 8) of the computer 90. The computer includes at least the functional units of a control unit, a storage unit, and a communication unit.
[0156] The functional units of the computer 90 can also be realized by distributing all or part of the functional units among multiple computers 90 interconnected via a network. The computer 90 is a concept that includes not only a single computer 90 but also a virtualized computer system.
[0157] The control unit is realized by the processor 901 reading out various programs stored in the auxiliary storage device 903, expanding them in the main storage device 902, and executing processing in accordance with the programs. The control unit can realize functional units that perform various types of information processing depending on the type of program. In this way, the computer is realized as an information processing device that performs information processing.
[0158] The storage unit is realized by a main storage device 902 and an auxiliary storage device 903. The storage unit stores data, various programs, and various databases. Furthermore, the processor 901 can allocate a storage area corresponding to the storage unit in the main storage device 902 or the auxiliary storage device 903 in accordance with the programs. Furthermore, the control unit can cause the processor 901 to execute processes for adding, updating, and deleting data stored in the storage unit in accordance with the various programs.
[0159] A database refers to a relational database, which manages data sets called masters and tables in a tabular format structurally defined by rows and columns, by relating them to each other. In a database, a table is called a table, a master, a column in a table is called a column, and a row in a table is called a record. In a relational database, relationships between tables and masters can be set and associated.
[0160] Typically, each table and each master has a column set as a primary key to uniquely identify a record, but setting a primary key to a column is not essential. The control unit can cause the processor 901 to add, delete, or update records in specific tables and masters stored in the storage unit according to various programs.
[0161] Furthermore, by storing data, various programs, and various databases in the storage unit, it can be considered that an information processing device and an information processing system according to one aspect of the present disclosure have been manufactured.
[0162] Note that the databases and masters in this disclosure may include any data structure in which information is structurally defined (such as a list, dictionary, associative array, or object). The data structure also includes data that can be considered as a data structure by combining data with functions, classes, methods, etc. written in any programming language.
[0163] The communication unit is realized by the communication IF 991. The communication unit realizes a function of communicating with other computers 90 via a network. The communication unit can receive information transmitted from other computers 90 and input the information to the control unit. The control unit can cause the processor 901 to execute information processing on the received information in accordance with various programs. In addition, the communication unit can transmit information output from the control unit to other computers 90.
[0164] Furthermore, the above-described configurations, functions, processing units, processing means, etc. may be partially or entirely implemented in hardware, for example, by designing them as integrated circuits. The present invention can also be realized by software program code that implements the functions of the embodiments. In this case, a storage medium on which the program code is recorded is provided to a computer, and a processor included in the computer reads the program code stored in the storage medium. In this case, the program code itself read from the storage medium implements the functions of the above-described embodiments, and the program code itself and the storage medium on which it is stored constitute the present invention. Examples of storage media for providing such program code include flexible disks, CD-ROMs, DVD-ROMs, hard disks, SSDs, optical disks, magneto-optical disks, CD-Rs, magnetic tape, non-volatile memory cards, and ROMs.
[0165] Furthermore, the program code that realizes the functions described in this embodiment can be implemented in a wide range of program or script languages, such as assembler, C / C++, perl, Shell, PHP, and Java (registered trademark).
[0166] Furthermore, the program code of the software that realizes the functions of the embodiments may be distributed via a network and stored in a storage means such as a computer's hard disk or memory, or in a storage medium such as a CD-RW or CD-R, and the processor of the computer may read and execute the program code stored in the storage means and the storage medium.
[0167] The functions performed by the components described herein may be implemented in circuitry or processing circuitry, including general-purpose processors, application-specific processors, integrated circuits, ASICs (Application Specific Integrated Circuits), a CPU (a Central Processing Unit), conventional circuits, and / or combinations thereof, programmed to perform the described functions. A processor includes transistors and other circuits and is considered to be circuitry or processing circuitry. A processor may also be a programmed processor that executes programs stored in a memory.
[0168] In this specification, a circuitry, unit, or means is hardware that is programmed to realize or performs the described functions, which may be any hardware disclosed herein or any hardware known to be programmed to realize or perform the described functions.
[0169] If the hardware is a processor considered to be a type of circuitry, the circuitry, means, or unit is a combination of the hardware and the software used to configure the hardware and / or processor.
[0170] Although several embodiments of the present disclosure have been described above, these embodiments can be embodied in various other forms, and various omissions, substitutions, and modifications can be made without departing from the spirit of the invention. These embodiments and modifications are intended to be included in the scope of the inventions and their equivalents as defined in the claims, as well as in the scope and spirit of the inventions.
[0171] <Additional Notes> The matters described in the above embodiments will be supplemented below.
[0172] (Appendix 1) A program for operating a computer having a processor and a memory, the program having a plurality of questions and definitions of answers to each of the plurality of questions set therein, the program causing the processor to execute the following steps: presenting a question to a user and accepting an answer from the user; inputting the accepted user answer into a generative AI model and having the generative AI model determine whether the answer satisfies the definition of an answer to the question; if the accepted user answer is determined to satisfy the definition of an answer to the question, having the generative AI model create a summary of the user's comments to the question; having the generative AI model determine whether information contained in the created summary satisfies the definition of an answer to the question following the question; if the information contained in the created summary is determined to satisfy the definition of an answer to the next question, the information is used as the answer to the next question, and having the generative AI model stop outputting the next question.
[0173] (Appendix 2) The generative AI model is a program described in Appendix 1 that is pre-tuned to determine whether a user's response satisfies the definition of an answer based on predetermined prompts that include multiple questions and definitions of answers to each of the multiple questions, and to determine whether the information included in the created summary satisfies the definition of an answer to the next question.
[0174] (Appendix 3) 3. The program of claim 1 or 2, further causing the processor to execute a step of causing the generative AI model to output a next question if it is determined that the information contained in the created summary does not meet the definition of an answer to the next question.
[0175] (Appendix 4) A program as described in any of Appendix 1 to Appendix 3, further comprising causing the processor to execute a step of causing the generative AI model to determine whether, for all questions prior to the next question, the information contained in the summary of answers to each of said questions satisfies the definition of an answer to the next question, and in the step of terminating said step, if at least one piece of information contained in the summary of answers to each of all questions satisfies the definition of an answer to the next question, said at least one piece of information is taken as the answer to the next question, and the generative AI model is caused to halt output of the next question.
[0176] (Appendix 5) 5. The program of claim 4, further causing the processor to execute a step of causing the generative AI model to output the next question if it is determined that none of the information contained in the summary of answers to all questions satisfies the definition of the answer to the next question.
[0177] (Appendix 6) 5. The program according to any one of appendices 1 to 4, wherein a plurality of questions and definitions of answers to each of the plurality of questions are set in a predetermined data table that stores question sentences corresponding to the questions, answer definitions corresponding to the question sentences, and information indicating the order in which the questions are presented, in association with each other.
[0178] (Appendix 7) A method implemented on a computer having a processor and a memory, wherein the processor executes all the steps of a program according to any one of Supplementary Notes 1 to 6.
[0179] (Appendix 8) An information processing device comprising a control unit and a storage unit, wherein the control unit executes all steps in the program according to any one of Supplementary Note 1 to Supplementary Note 6.
[0180] (Appendix 9) A system comprising means for executing all steps of the program according to any one of appendices 1 to 6. [Explanation of symbols]
[0181] 1. System 10...Terminal device 12...Communication IF 13...Input device 14...Output device 15...Memory 16…Storage 19...Processor 20...Server 22...Communication IF 23...Input / output interface 25…Memory 26…Storage 29...Processor 30...Generative AI system 80…Network
Claims
1. A program for operating a computer having a processor and a memory, A plurality of questions and definitions of answers to each of the plurality of questions are set, The program causes the processor to: presenting the question to a user and accepting an answer from the user; inputting the received answer from the user into a generative AI model and causing the generative AI model to determine whether the answer satisfies a definition of an answer to the question; If it is determined that the received answer from the user satisfies the definition of an answer to the question, causing the generative AI model to create a summary of the user's utterance in response to the question; having the generative AI model determine whether the information contained in the generated summary meets a definition of an answer to a question that follows the question; If it is determined that the information included in the created summary satisfies the definition of the answer to the next question, the information is set as the answer to the next question, and the generative AI model stops outputting the next question. A program that executes the following.
2. 2. The program of claim 1, wherein the generative AI model is pre-tuned to determine whether an answer from the user satisfies a definition of an answer based on predetermined prompts including the plurality of questions and definitions of answers to each of the plurality of questions, and to determine whether information included in the created summary satisfies a definition of an answer to the next question.
3. 2. The program of claim 1, further causing the processor to execute a step of causing the generative AI model to output the next question if it is determined that the information contained in the created summary does not satisfy the definition of an answer to the next question.
4. causing the processor to further perform a step of causing the generative AI model to determine, for all questions before the next question, whether information included in a summary of answers to each of the questions satisfies a definition of an answer to the next question; 2. The program of claim 1, wherein, in the step of stopping, if at least one piece of information included in the summary of answers to each of all of the questions satisfies the definition of an answer to the next question, the at least one piece of information is set as the answer to the next question, and the generative AI model is caused to stop outputting the next question.
5. 5. The program of claim 4, further causing the processor to execute a step of causing the generative AI model to output the next question if it is determined that none of the information contained in the summary of answers to each of the questions satisfies the definition of an answer to the next question.
6. 2. The program according to claim 1, wherein the plurality of questions and the definitions of the answers to each of the plurality of questions are set in a predetermined data table that stores, in association with each other, question sentences corresponding to the questions, the definitions of the answers corresponding to the question sentences, and information indicating the order in which the questions are presented.
7. A method executed by a computer having a processor and a memory, wherein the processor executes all the steps of the program of any one of claims 1 to 6.
8. 7. An information processing apparatus comprising a control unit and a storage unit, wherein the control unit executes all steps of the program according to claim 1.
9. A system comprising means for executing all steps of the program according to any one of claims 1 to 6.
Citation Information
Patent Citations
Knowledge extraction device, and knowledge extraction method
JP2023161941A
Information processing method, program, and information processing device
JP7649586B1
JPP7649586B
Cited By
Program, interview control device, and interview control method
JP7858952B1