Processing device, processing method, and processing program
The processing device and method address the challenge of complex slot-filling by creating slots from past interactions, extracting question properties, and managing dialogue with a stack, resulting in a natural and efficient user interaction.
Patent Information
- Application Number
- PCT/JP2024/031410
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-08-30
- Publication Date
- 2026-03-05
AI Technical Summary
Existing slot-filling technologies using large-scale natural language models (LLMs) often result in asking multiple or unnecessary questions to users, making it difficult to achieve natural dialogue, especially when the amount of information to be obtained becomes complex.
A processing device and method that creates slots from a past response history dataset, extracts question properties, and controls dialogue by selecting appropriate questions based on these properties to generate questions using a language model, managing them with a stack data structure to ensure a natural conversation.
Enables the creation of appropriate slots and facilitates natural dialogue by avoiding unnecessary questions, even when the number of slots becomes large, ensuring a smooth interaction with users.
Smart Images

Figure JP2024031410_05032026_PF_FP_ABST
Abstract
Description
Processing device, processing method, and processing program
[0001] The present invention relates to a processing device, a processing method, and a processing program.
[0002] Slot-filling is a chatbot mechanism that analyzes user utterances and fills slots to progress the dialogue. Slot-filling is primarily suited to situations where the information elicited from users is formatted (such as reservation and order systems).
[0003] In Slot-Filling, small units of information that the chatbot wants to obtain from the user are defined in advance, called slots. The chatbot collects information by interacting with the user in a way that fills these slots. This is called Slot-Filling.
[0004] EXIIS-Lab, "What is slot filling? Uncovering one of the mechanisms that expands the uses of chatbots," [Retrieved July 17, 2024], Internet <URL: https: / / www.exiis-lab.com / slot-filling / >
[0005] In the case of simple reservation systems or order reception systems, slots can be generated manually. However, as the dialogue content becomes more complex, manual generation of slots becomes impractical, and automatic generation of slots is required.
[0006] Therefore, there is a method for slot-filling that uses large-scale natural language models (LLMs) to automatically generate questions that match user inquiries. In this method, slots are generally assigned to the LLMs to generate questions for the user.
[0007] However, when slot-filling is performed using LLM, if the slots become large, a large number of questions may be asked to the user in a single question, or unnecessary questions may be asked to the user, making it impossible to achieve natural dialogue.
[0008] The present invention has been made in consideration of the above, and aims to provide a processing device, processing method, and processing program that can create appropriate slots and realize natural dialogue with users in slot-filling.
[0009] In order to solve the above-mentioned problems and achieve the object, the processing device according to the present invention is characterized by having an extraction unit that creates slots, which are groups of questions that divide information desired to be obtained from a user into predetermined units, from a past response history dataset, and extracts the properties of the questions in the slots, and a control unit that selects questions to be posed to the user from the slots based on the properties of the questions, provides the selected questions to a language model to generate questions to the user, and controls a dialogue with the user via the user terminal.
[0010] Furthermore, the processing method according to the present invention is a processing method executed by a processing device, and is characterized by including the steps of: creating slots, which are groups of questions obtained by dividing information to be obtained from a user into predetermined units, from a past response history dataset; extracting the properties of the questions in the slots; selecting questions to be posed to the user from the slots based on the properties of the questions; providing the selected questions to a language model to generate questions to the user; and controlling a dialogue with the user via a user terminal used by the user.
[0011] The processing program of the present invention causes a computer to execute the following steps: creating slots, which are groups of questions that divide information desired to be obtained from a user into predetermined units, from a past response history dataset, and extracting the properties of the questions in the slots; selecting questions to be posed to the user from the slots based on the properties of the questions, providing the selected questions to a language model to generate questions to the user, and controlling a dialogue with the user via a user terminal used by the user.
[0012] According to the present invention, in a dialogue by slot-filling, it is possible to create an appropriate slot and realize a natural dialogue with the user.
[0013] FIG. 1 is a diagram illustrating an example of an application of slot-filling dialogue. FIG. 2 is a diagram schematically illustrating an example of the configuration of a processing system according to an embodiment. FIG. 3 is a diagram illustrating an example of a response history dataset. FIG. 4 is a diagram illustrating an example of a dialogue in which a base question is asked. FIG. 5 is a diagram illustrating an example of a dialogue in which a question question is asked. FIG. 6 is a diagram illustrating an example of a dialogue in which an are question is asked. FIG. 7 is a diagram illustrating an overview of processing performed by a processing system according to an embodiment. FIG. 8 is a diagram illustrating an example of a prompt given to the LLM shown in FIG. 2. FIG. 9 is a diagram illustrating an example of a dialogue structure extracted by the extraction unit shown in FIG. 2. FIG. 10 is a diagram illustrating a stack. FIG. 11 is a diagram illustrating an algorithm used by the dialogue control unit shown in FIG. 2. FIG. 12 is a flowchart illustrating the processing procedure of a processing method according to an embodiment. FIG. 13 is a diagram illustrating an example of a slot obtained by the extraction unit shown in FIG. 2. FIG. 14 is a diagram illustrating an example of a base question. FIG. 15 is a diagram illustrating an example of a question question and its generation probability. FIG. 16 is a diagram illustrating an example of an are question and its generation probability. FIG. 17 is a diagram illustrating an example of an actual dialogue performed by a processing system according to an embodiment. Fig. 18 is a diagram showing an example of a dialogue when the slot shown in Fig. 13 is directly given to the LLM. Fig. 19 is a diagram showing an example of a computer that implements a server device by executing a program.
[0014] Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings. Note that the present invention is not limited to this embodiment. In addition, in the description of the drawings, the same parts are designated by the same reference numerals.
[0015] [Embodiment] [Slot-Filling] First, slot-filling will be explained. Slot-filling is one of the mechanisms of chat bots that progresses a dialogue by analyzing a user's utterance and applying the results to slots.
[0016] In Slot-Filling, slots are defined that divide the information you want to obtain from the user into small units, and the slots are filled through dialogue with the user.
[0017] Figure 1 shows an example of the application of slot-filling dialogue to a pizza order acceptance system. As shown in Figure 1, a pizza order slot S11 is predefined, which has items for pizza type, size, delivery time, and confirmation.
[0018] Then, a pizza order acceptance AI (artificial intelligence) (machine learning model) fills in pizza order slot S11 through dialogue with the user via a chatbot. For example, when the user responds to question Q11, "What kind of pizza do you want?" by the pizza order acceptance AI, with a response A11 such as "I'd like a Margherita," the pizza type "Margherita" in pizza order slot S11 is filled. Then, when the user responds to question Q12, "What size?" by the pizza order acceptance AI, with a response A12 such as "Medium, please," the size "M" in pizza order slot S11 is filled.
[0019] Here, a problem with slot-filling dialogue is that the question in the slot is asked to the user in one go.
[0020] In the example shown in Figure 1, the slots and questions posed to the user by the chatbot are simple.
[0021] However, when considering responding to security alerts or troubleshooting, for example, the amount of information (slots) obtained from the user may increase and become more complex. In such cases, including multiple questions in the slots in a single question from the chatbot is not a desirable user experience. Furthermore, if the slots become large-scale, creating them may become difficult.
[0022] In the embodiment, a method for creating appropriate slots and realizing natural conversation with the user in a conversation using slot-filling is proposed.
[0023] [Processing System] A processing system according to an embodiment will now be described. Fig. 2 is a diagram schematically illustrating an example of the configuration of a processing system according to an embodiment. The processing system 1 according to the embodiment includes a user terminal 20, a server device 10, and a language model server 30.
[0024] The user terminal 20 is a terminal device used by a user who is an interlocutor. The user terminal 20 is, for example, a smart device such as a tablet or a smartphone, and has a communication function, an information (including voice and text) input / output function, and an imaging function.
[0025] The server device 10 performs information collection processing regarding, for example, reservation acceptance, order acceptance, IR, etc. The server device 10 collects information regarding reservation acceptance, order acceptance, IR, etc. by interacting with the user through slot-filling. The server device 10 communicates with the user terminal 20 and the language model server 30.
[0026] The language model server 30 is equipped with an LLM 31. The LLM 31 is a large-scale natural language processing model that performs natural language processing on input speech data or text data in accordance with set prompts, and generates and outputs speech data or text data.
[0027] [Server Device] The server device according to the embodiment will be described with reference to FIG.
[0028] The server device 10 according to the embodiment is implemented by loading a predetermined program into a computer or the like including, for example, a read-only memory (ROM), a random access memory (RAM), a central processing unit (CPU), etc., and causing the CPU to execute the predetermined program. The server device 10 also has a communication interface for transmitting and receiving various types of information to and from other devices connected via a network or the like.
[0029] 2, the server device 10 includes a response history data set 11, an extraction unit 12, and a dialogue control unit 13 (control unit). Among the processes performed by the server device 10, the following describes dialogue processes using slot-filling related to reservation acceptance, order acceptance, IR, security alerts, troubleshooting, etc.
[0030] The response history dataset 11 is a dataset that accumulates past response histories between a plurality of users. For example, the response history dataset 11 includes interactions between the accommodation consultation dialogue service and the user.
[0031] Fig. 3 is a diagram showing an example of the response history data set 11. Fig. 3 shows an example of a dialogue in an accommodation consultation dialogue service. In Fig. 3, operator_1 is an operator of the accommodation consultation service, and customer_1 is a user who uses the accommodation consultation service.
[0032] The extraction unit 12 creates slots from the past response history data set and extracts the properties of each question item in the slots. A slot is a group of questions that divides information desired to be obtained from a user into predetermined units.
[0033] The dialogue control unit 13 selects questions to be posed to the user from a slot based on the properties of each question item, provides the selected questions to the LLM 31 to generate questions for the user, and controls the dialogue with the user via the user terminal 20.
[0034] [Properties of Question Items] In the embodiment, the following three properties are considered as properties of question items.
[0035] The first property is the Base Question. A Base Question is a question that is always asked to the user. FIG. 4 is a diagram showing an example of a dialogue in which a Base Question is asked. As shown in FIG. 4, in the example of a dialogue in a hotel consultation dialogue service, questions such as the location of accommodation, date, number of people, etc. correspond to the Base Question.
[0036] The second property is a Question related Question (Qrel Question). A Qrel Question is an additional question related to a certain question that is asked to the user. Figure 5 shows an example of a conversation in which a Qrel Question is asked. As shown in Figure 5, a question about PC and printer rental services, which is related to the user's question about Wi-Fi, "Does Wi-Fi exist?", corresponds to a Qrel Question.
[0037] The third property is an Answer Related Question (Arel Question). An Arel Question is a question that is posed to the user in relation to a response sent from the user terminal 20. FIG. 6 is a diagram showing an example of a dialogue in which an Arel Question is asked. As shown in FIG. 6, in response to the user's response "traveling with my daughter," a question about whether or not the user will use a "child bed" corresponds to an Arel Question.
[0038] The extraction unit 12 organizes the question items in the slots using the above three properties. The server device 10 aims to realize a natural dialogue by using the question items organized by the extraction unit 12 to generate a dialogue with the user.
[0039] [Processing Overview] The server device 10 constructs a dialogue system that conducts an information gathering dialogue with a user in a situation where a past response history data set 11 is given. The server device 10 realizes this through two processes described below. Fig. 7 is a diagram illustrating an overview of the processes performed by the processing system 1 according to the embodiment. Fig. 7 shows an overview of the processes when a security incident occurs.
[0040] As a first process, the extraction unit 12 provides the referenced past response history data set 11 to the LLM 31 ((1) and (2) in Figure 7), causes the LLM 31 to create slots, and extracts the characteristics of the question items ((3) in Figure 7).
[0041] Fig. 8 is a diagram showing an example of a prompt given to the LLM 31 shown in Fig. 2. The extraction unit 12 gives the prompt shown in Fig. 8 to the LLM 31, thereby causing it to extract question items.
[0042] The extraction unit 12 assigns corresponding properties (Base Question, Qrel Question, Arel Question) to the question items in the slots.
[0043] When extracting the properties of the question items, the extraction unit 12 calculates the probability that each question item will be asked in the response history dataset 11 using conditional probability.
[0044] The set of questions obtained in creating the slots is called {q i}, user answers {a i For each question item, the probability of generation p(q i ), p(q i |q j ), p(q i |a j ) is calculated. Then, the Base Question, Qrel Question, and Arel Question are defined as in equations (1) to (3). base , c qrel , c arel is a hyperparameter that is set in advance.
[0045]
[0046]
[0047]
[0048] That is, in the embodiment, the question set {q i} and a set of responses from users {ai}, the question items to be calculated (q i ) generation probability p(q i ) (first probability), other questions (q j ) to calculate the question items (q i ) is generated with probability p(q i |q j ) (second probability), user response (a j ) to calculate the question items (q i ) is generated with probability p(q i |a j ) (third probability) is calculated for each question item.
[0049] In the embodiment, as shown in formula (1), c base (first threshold) i ) is defined as the Base Question. As shown in equation (2), qrel (second threshold) i |q j ) is called a Qrel Question. arel (third threshold) is greater than the probability p(q i |a j ) is called an Arel Question.
[0050] The extraction unit 12 assigns a Base Question, a Qrel Question, or an Arel Question to the corresponding question item based on the calculation results of equations (1) to (3). Note that two properties may be assigned to one question item. There may also be a question item to which neither property is assigned. In addition, the Base Question question item is assigned the calculated generation probability p(q i ) may be assigned. Question items with the nature of Qrel Question or Arel Question (q i ) and one of the questions (q j ) or a response from the user (a j ) may be linked by assigning a calculated generation probability.
[0051] Fig. 9 is a diagram illustrating a dialogue structure extracted by the extraction unit 12 shown in Fig. 2. As shown in Fig. 9, a dialogue structure is extracted in which a Qrel Question and / or Arel Question is returned in response to a response a1 from the user to a Base Question, and a Qrel Question and / or Arel Question is returned in response a3 to that question.
[0052] The extraction unit 12 outputs the slot and each question item to the dialogue control unit 13 ((4) in FIG. 7).
[0053] As a second process, the dialogue control unit 13 performs a dialogue control process for controlling a dialogue with a user using the question item group (slots) generated in the first process and the properties of each question item.
[0054] The dialogue control unit 13 controls the dialogue with the user by prioritizing question items with a Base Question property over question items with other properties. In addition, if there is a Qrel Question property related to the question sent to the user terminal 20 and / or an Arel Question property related to the response received from the user terminal 20, the dialogue control unit 13 causes the LLM 31 to generate a question property of the relevant Qrel Question property and / or a question property of the relevant Arel Question property.
[0055] FIG. 10 is a diagram illustrating a stack. The dialogue control unit 13 manages questions to be posed to the user using a stack. A stack is a data structure provided separately from slots for managing questions. As shown in FIG. 10, a stack can store one or more data items (question items), and has a data structure that allows data to be retrieved in the reverse order of the order in which they were stored. In other words, the last item stored in a stack is the first item retrieved.
[0056] The dialogue control unit 13 stacks question items related to alert mail, questions to the user, or responses from the user. The dialogue control unit 13 removes the last question item from the stack and provides it to the LLM 31.
[0057] For example, in the example of Figure 10, questions are stacked in the order of Base Question (base in Figure 10)-1, base-2, and base-3, and are removed in the order of base-3, base-2, and base-1. In addition to the Base Question, question items Qrel Question and Arel Question are also stacked on the stack.
[0058] A specific description will be given of the processing of the dialogue control unit 13. Fig. 11 is a diagram showing an algorithm used by the dialogue control unit 13 shown in Fig. 2.
[0059] When the dialogue control unit 13 receives an alert email ((5) in FIG. 7), it places one or more Base Questions related to the alert email on the stack (Step 1 in FIGS. 10 and 11). The dialogue control unit 13 does not particularly consider the order in which the questions are placed on the stack, as long as they are Base Questions. The dialogue control unit 13 may place a randomly selected Base Question on the stack, or may place a randomly selected Base Question on the stack with a generation probability p(q i Alternatively, the dialogue control unit 13 may stack the question items of the Base Questions with the highest generation probability p(q) from the top to a predetermined rank, so that the question items with the highest generation probability are extracted first. i ) on the stack in ascending order to gather more accurate information.
[0060] The dialogue control unit 13 provides the LLM 31 with an appropriate question item based on the slot and the properties of the question item, causing it to generate a question ((6) and (7) in FIG. 7). Specifically, the dialogue control unit 13 retrieves the last question item of the Base Question (e.g., base-3 in FIG. 10) from the stack and provides the retrieved question item to the LLM 31, causing it to generate a question (Step 2 in FIG. 11). The dialogue control unit 13 discards the question item that has already been asked.
[0061] The dialogue control unit 13 transmits the question created by the LLM 31 to the user terminal 20 ((8) in FIG. 7), and receives a response to the question from the user terminal 20 ((9) in FIG. 7).
[0062] The dialogue control unit 13 causes the LLM 31 to fill in the slot based on the response from the user (Step 3 in FIG. 11).
[0063] Next, if there are any Qrel Question items related to the question posed to the user or Arel Question items related to the reply from the user, the dialogue control unit 13 stacks the relevant Qrel Question items and Arel Question items onto the stack (Step 4 in FIG. 11). If there are multiple relevant Qrel Question items and Arel Question items, the dialogue control unit 13 randomly selects and stacks them onto the stack, and also calculates the generation probability p(q i |q j ) or generation probability p(q i |a j ) on the stack in ascending order to gather more accurate information.
[0064] If the stack is empty, the dialogue control unit 13 ends the algorithm.
[0065] If the stack is not empty, the dialogue control unit 13 returns to Step 2 in Fig. 11. If there is a Qrel Question item related to the question posed to the user or an Arel Question item related to the user's reply, the dialogue control unit 13 retrieves the Qrel Question item or Arel Question item stacked at the end of the stack and causes the LLM 31 to generate a question sentence for this question item. If there is no Qrel Question item related to the question posed to the user or an Arel Question item related to the user's reply, the dialogue control unit 13 retrieves the Base Question item stacked at the end (e.g., base-2 in Fig. 10) and causes the LLM 31 to generate a question sentence for this question item.
[0066] The dialogue control unit 13 stacks question items from the slots on a stack as needed during dialogue with the user, and asks the questions in the stack to the user, thereby avoiding asking unnecessary question items in the slots to the user.
[0067] Furthermore, the dialogue control unit 13 manages question items using a stack, and takes out the most recently stacked question item and asks the user a question.
[0068] Therefore, even when a Qrel Question or Arel Question is derived from a question or a user's response, the dialogue control unit 13 can stack the Qrel Question or Arel Question in the stack, and then quickly retrieve the most recently stacked Qrel Question or Arel Question to pose the derived question to the user. Therefore, by applying the above stack, the dialogue control unit 13 can quickly and appropriately pose a question appropriate to the situation to the user.
[0069] Furthermore, when a queue is used to manage questions, the data is retrieved in the order in which it is queued, so even if Qrel Questions and Arel Questions derived from questions and user responses are queued, the Qrel Questions and Arel Questions will only be retrieved after all other questions have been retrieved. For this reason, when a queue is used to manage questions, it is difficult to have a quick and smooth dialogue according to the situation.
[0070] [Processing Procedure] FIG. 12 is a flowchart showing the processing procedure of the processing method according to the embodiment.
[0071] In the server device 10, the extraction unit 12 performs an extraction process to create slots from the past response history data set and extract the characteristics of each question item in the slots (step S21).The dialogue control unit 13 performs a dialogue control process to control a dialogue with the user via the user terminal 20 using the algorithm shown in Figure 11 (step S22).
[0072] [Experiment] We evaluated the slot-filling dialogue processing in this embodiment. GPT-4 is used as the LLM 31. In addition, as the response history dataset, we used a Japanese dialogue dataset between two people, a customer and an operator, in a fictitious accommodation consultation service, as shown in Figure 3.
[0073] In order to evaluate the interaction between the server device 10 and the user, first, slots obtained by the extraction process (step S21) by the extraction unit 12 are shown. Fig. 13 shows an example of slots obtained by the extraction unit 12 shown in Fig. 2.
[0074] The slot shown in Figure 13 contains questions that seem important in a lodging consultation service, such as the location of accommodation, number of people, and dinner, but also questions that seem trivial, such as whether to bring pets or whether to rent a snowboard.
[0075] The extraction unit 12 assigns the properties of Base Question, Qrel Question, and Arel Question to each question item in the slots of FIG. 13 by calculating the conditional probability in the dialogue history data set.
[0076] The hyperparameters in equations (1) to (3) used to calculate the properties of the question items are c base =0.6, c qrel =0.6, c arel =0.6.
[0077] 14 to 16 show examples of Base Questions, Qrel Questions, and Arel Questions, along with their generation probabilities. Fig. 14 is a diagram showing an example of a Base Question. Fig. 15 is a diagram showing an example of a Qrel Question and its generation probability. Fig. 16 is a diagram showing an example of an Arel Question and its generation probability.
[0078] As shown in Figure 14, questions that are considered important are listed as questions with Base Questions. Furthermore, as shown in Figure 15, for Qrel Questions, connections between question items that appear to be related, such as the connection between questions about meals for the elderly and questions about barrier-free access, have been extracted. The same is true for Arel Questions.
[0079] 17 is a diagram showing an example of an actual dialogue in the processing system according to the embodiment. Bot is an utterance from the server device 10, and User is an utterance from a person. The server device 10 gives priority to the Base Question and provides it to the LLM 31, which then generates a question for the user.
[0080] As a result, in the dialogue of Fig. 17, it is clear that the server device 10 is asking the user questions (e.g., questions Q1 and Q2) in which one question is included in one sentence in the accommodation consultation service. Also, in the dialogue of Fig. 17, the server device 10 is not asking the user unnecessary questions. Therefore, as shown in Fig. 17, it can be confirmed that a natural dialogue is taking place between the server device 10 and the user.
[0081] FIG. 18 shows an example of a dialogue when the slot shown in FIG. 13 is directly provided to the LLM. In the dialogue shown in FIG. 18, the sentences generated by the bot contain a large number of questions (e.g., question Q21). This shows that the amount of text generated is significantly different from the appropriate amount for a single exchange. Furthermore, as shown in question Q22, a question that overlaps with question Q21 is posed to the user, making it difficult to have a natural dialogue with the user. This problem was not significantly improved even when appropriate dialogue examples were provided to the LLM using a few-shot learning method or when a warning such as "avoid asking too many questions" was included in the prompts provided to the LLM.
[0082] Therefore, in an information gathering dialogue system, it is believed that the processing method according to this embodiment, in which questions to the user are mechanically set and the LLM 31 generates questions, is effective.
[0083] Effect of the embodiment: Slots are created from a past dialogue history data set, and the characteristics of the questions in the slots are extracted. The server device 10 selects questions to be posed to the user from the slots based on the characteristics of each question, and causes the LLM 31 to generate a question sentence. Therefore, even if the number of slots becomes large, the server device 10 does not pose a large number of questions to the user in a single question, and does not pose unnecessary questions to the user.
[0084] Furthermore, during a dialogue with a user, questions to the user are managed using a stack. Questions are pushed onto the stack from slots as needed during the dialogue with the user, and the question sentence of the question pushed onto the bottom of the stack is posed to the user, thereby realizing a fast dialogue while avoiding posing unnecessary questions to the user in the slots.
[0085] In experiments, it was confirmed that the server device 10 according to the embodiment can create appropriate slots and realize natural dialogue with the user in a Slot-Filling dialogue, even when the slots become large in size.
[0086] [System Configuration of the Embodiment] Each component of the server device 10 is a functional concept and does not necessarily have to be physically configured as shown in the figure. In other words, the specific form of distribution and integration of the functions of the server device 10 is not limited to that shown in the figure, and all or part of the functions can be functionally or physically distributed or integrated in any unit depending on various loads, usage conditions, etc.
[0087] Furthermore, all or any part of the processes performed by the server device 10 may be realized by a CPU, a GPU (Graphics Processing Unit), and a program analyzed and executed by the CPU and the GPU. Furthermore, each process performed by the server device 10 may be realized as hardware using wired logic.
[0088] Furthermore, among the processes described in the embodiments, all or part of the processes described as being performed automatically can be performed manually. Alternatively, all or part of the processes described as being performed manually can be performed automatically using a known method. In addition, the processing procedures, control procedures, specific names, and information including various data and parameters described above and illustrated can be changed as appropriate unless otherwise specified.
[0089] 19 is a diagram showing an example of a computer in which a program is executed to realize the server device 10. The computer 1000 has, for example, a memory 1010 and a CPU 1020. The computer 1000 also has a hard disk drive interface 1030, a disk drive interface 1040, a serial port interface 1050, a video adapter 1060, and a network interface 1070. These components are connected by a bus 1080.
[0090] The memory 1010 includes a ROM 1011 and a RAM 1012. The ROM 1011 stores a boot program such as a BIOS (Basic Input Output System). The hard disk drive interface 1030 is connected to a hard disk drive 1090. The disk drive interface 1040 is connected to a disk drive 1100. A removable storage medium such as a magnetic disk or optical disk is inserted into the disk drive 1100. The serial port interface 1050 is connected to a mouse 1110 and a keyboard 1120, for example. The video adapter 1060 is connected to a display 1130, for example.
[0091] The hard disk drive 1090 stores, for example, an OS (Operating System) 1091, an application program 1092, a program module 1093, and program data 1094. That is, the program that defines each process of the server device 10 is implemented as a program module 1093 in which code that can be executed by the computer 1000 is written. The program module 1093 is stored, for example, in the hard disk drive 1090. For example, the program module 1093 for executing processes similar to those of the functional configuration of the server device 10 is stored in the hard disk drive 1090. Note that the hard disk drive 1090 may be replaced with an SSD (Solid State Drive).
[0092] Furthermore, setting data used in the processing of the above-described embodiment is stored as program data 1094, for example, in memory 1010 or hard disk drive 1090. Then, CPU 1020 reads out program module 1093 or program data 1094 stored in memory 1010 or hard disk drive 1090 into RAM 1012 as necessary and executes them.
[0093] The program module 1093 and program data 1094 may not necessarily be stored in the hard disk drive 1090, but may also be stored in a removable storage medium and read by the CPU 1020 via the disk drive 1100 or the like. Alternatively, the program module 1093 and program data 1094 may be stored in another computer connected via a network (such as a local area network (LAN) or a wide area network (WAN)). The program module 1093 and program data 1094 may then be read by the CPU 1020 from the other computer via the network interface 1070.
[0094] Although the present invention has been described above as an embodiment, the present invention is not limited to the description and drawings that form part of the disclosure of the present invention. In other words, other embodiments, examples, and operational techniques that can be made by those skilled in the art based on the present invention are all included in the scope of the present invention.
[0095] 1 Processing system 10 Server device 11 Response history data set 12 Extraction unit 13 Dialogue control unit
Claims
1. A processing device characterized by having: an extraction unit that creates slots, which are groups of questions that divide information desired to be obtained from a user into predetermined units, from a past response history dataset, and extracts the properties of the questions in the slots; and a control unit that selects questions to be posed to the user from the slots based on the properties of the questions, provides the selected questions to a language model to generate questions to the user, and controls a dialogue with the user via a user terminal used by the user.
2. The processing device described in claim 1, characterized in that the nature of the question items is a basic question, which is a question item that is always asked to the user, a related question, which is a question item that is asked to the user in addition to a certain question item, or a response-related question, which is a question item that is asked to the user in relation to a response sentence sent from the user terminal.
3. The processing device described in claim 2, characterized in that the extraction unit calculates, for each question item, a first probability which is the probability of the question item to be calculated being generated, a second probability which is the probability that the question item to be calculated will be generated from other question items, and a third probability which is the probability that the question to be calculated will be generated from the user's response, based on the group of questions extracted in creating the slot and the group of responses from the user, and determines the property of the question item having the first probability greater than a predetermined first threshold as the basic question, the property of the question item having the second probability greater than a predetermined second threshold as the related question, and the property of the question item having the third probability greater than a predetermined third threshold as the response-related question.
4. The processing device described in claim 2, characterized in that the control unit prioritizes question items that are basic questions over question items of other natures, controls the dialogue with the user, and, if there are question items of related questions related to the question sentence sent to the user terminal and / or question items of response-related questions related to the response sentence received from the user terminal, causes the language model to generate question sentences of the relevant question items of related questions and / or question sentences of the relevant question items of response-related questions.
5. The processing device described in claim 1, characterized in that the control unit manages questions to be posed to the user using a stack that is capable of storing one or more pieces of data and from which data is extracted in the reverse order of the order in which it was stored, and the control unit stores questions in response to alert emails, questions to the user, or responses from the user received by the processing device on the stack, and removes the question item that was last stored on the stack from the stack and provides it to the language model.
6. A processing method executed by a processing device, comprising the steps of: creating slots, which are groups of questions that divide information desired to be obtained from a user into predetermined units, from a past response history dataset, and extracting the properties of the questions in the slots; selecting questions to be posed to the user from the slots based on the properties of the questions, providing the selected questions to a language model to generate questions for the user, and controlling a dialogue with the user via a user terminal used by the user.
7. A processing program for causing a computer to execute the steps of: creating slots, which are groups of questions that divide information desired to be obtained from a user into predetermined units, from a data set of past response history, and extracting the properties of the questions in the slots; selecting questions to be posed to the user from the slots based on the properties of the questions, providing the selected questions to a language model to generate questions to the user, and controlling a dialogue with the user via a user terminal used by the user.
Citation Information
Patent Citations
Interactive business assistance system
JP2019207648A
Human-computer interaction method and electronic device
JP2022515005A
Program, computer, system and information processing method
JP7462368B1
Determination device and determination method
WO2023233852A1