Discussion simulation system, discussion simulation method, and discussion simulation program

The discussion simulation system addresses the issue of diverging or stuck discussions by dynamically managing states and evaluating candidate statements to facilitate productive discussion progression.

WO2026110225A1PCT designated stage Publication Date: 2026-05-28NT T INC
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
NT T INC
Filing Date
2024-11-19
Publication Date
2026-05-28

AI Technical Summary

Technical Problem

Discussion simulations using large language models often diverge or become stuck due to opposing viewpoints, leading to ineffective progression.

Method used

A discussion simulation system that includes a discussion state determination unit, statement generation unit, and statement evaluation unit to dynamically advance discussions based on their progress.

Benefits of technology

The system effectively manages discussion states to generate and evaluate candidate statements, ensuring the discussion progresses appropriately and productively.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2024040959_28052026_PF_FP_ABST
    Figure JP2024040959_28052026_PF_FP_ABST
Patent Text Reader

Abstract

A discussion state determination unit according to the present invention determines the state of a discussion on the basis of the history of utterances in the discussion. An utterance generation unit generates a plurality of utterance candidates following the history of utterances on the basis of the state of the discussion. An utterance evaluation unit evaluates each of a plurality of utterance candidates, and selects one of the plurality of utterance candidates on the basis of the evaluation.
Need to check novelty before this filing date? Find Prior Art

Description

Discussion simulation system, discussion simulation method, and discussion simulation program

[0001] The present invention relates to a discussion simulation system, a discussion simulation method, and a discussion simulation program.

[0002] In recent years, discussion support systems that utilize large language models (LLMs) as agents have attracted attention. In these systems, the LLMs are used to simulate the statements of multiple agents and present the results to assist users in making decisions and solving problems.

[0003] Li-Chun Lu, Shou-Jen Chen, Tsung-Min Pai, Chan-Hung Yu, Hung-yi Lee, Shao-Hua Sun, “LLM Discussion: Enhancing the Creativity of Large Language Models via Discussion Framework and Role-Play,” COLM2024, [online], arXiv.org, [searched on November 13, 2024], Internet <URL: https: / / arxiv.org / pdf / 2405.06373>

[0004] However, in simulating the statements of multiple agents, the discussion may diverge without converging, or may become stuck due to opposing viewpoints, resulting in the discussion not progressing effectively. The objective of the present invention is to provide a discussion simulation system, a discussion simulation method, and a discussion simulation program that can dynamically progress the discussion based on the progress of the discussion.

[0005] A first aspect of the present invention is a discussion simulation system comprising: a discussion state determination unit that determines the state of the discussion based on the history of statements in the discussion; a statement generation unit that generates a plurality of statement candidates following the history of statements based on the state of the discussion; and a statement evaluation unit that evaluates each of the plurality of statement candidates and selects one of the plurality of statement candidates based on the evaluation.

[0006] A second aspect of the present invention is a discussion simulation method comprising the steps of: a computer determining the state of a discussion based on a history of statements made in the discussion; generating a plurality of candidate statements following the history of statements based on the state of the discussion; obtaining an evaluation for each of the plurality of candidate statements; and selecting one of the plurality of candidate statements based on the evaluations of the plurality of candidate statements.

[0007] A third aspect of the present invention is a discussion simulation program that causes a computer to perform the following steps: determine the state of a discussion based on the history of statements made in the discussion; generate a plurality of candidate statements following the history of statements based on the state of the discussion; obtain an evaluation for each of the plurality of candidate statements; and select one of the plurality of candidate statements based on the evaluation of the plurality of candidate statements.

[0008] According to the above embodiment, the discussion simulation system can dynamically advance the discussion based on the progress of the discussion.

[0009] This is a diagram showing the configuration of the language processing system according to the first embodiment. This is a diagram showing an example of the configuration of the front server according to the first embodiment. This is a flowchart showing the operation of the language processing system in the first embodiment. This is a schematic block diagram showing the configuration of a computer according to at least one embodiment.

[0010] <First Embodiment> <Configuration of the Language Processing System> The embodiments will be described in detail below with reference to the drawings. Figure 1 is a diagram showing the configuration of the language processing system according to the first embodiment. The language processing system 1 comprises a language model server 10, a front server 20, and a user terminal 30.

[0011] The language model server 10 provides an application service that accepts a query string as input and returns a response string following the query string. The language model server 10 generates the response string using a language model such as an LLM. The language model may be composed of machine learning models such as a Generative Adversarial Network (GAN) or a Transformer. Furthermore, the language model is not limited to models computed by a computer, as in the machine learning models described above, but may also include human input and output. A Large-Scale Language Model (LLM) is an example of a language model trained to receive natural language text as input and generate natural language text (strings) following the input natural language text. The query string for the LLM is also called a "query string". In this embodiment, the "language model" includes not only probabilistic models such as LLMs (language models in the narrow sense) but also application services that add pre-processing or post-processing to the input and output of probabilistic models (language models in the broad sense).

[0012] The front server 20 receives a query statement from the user terminal 30 and provides an application service that generates a response to the query statement. The response may be represented as text or as an image such as a graph. The front server 20 receives a query statement from the user terminal 30, generates a query string containing the query statement, and outputs it to the language model server 10. The front server 20 retrieves the response string generated based on the query string from the language model server 10. The front server 20 parses the response string obtained from the language model server 10 and returns the response to the user terminal 30.

[0013] The user terminal 30 accesses the front server 20 and displays the interface screen for the application services provided by the front server 20. The user terminal 30 sends the query text entered by the user to the front server 20 via the interface screen. The interface screen that the user terminal 30 receives from the front server 20 after sending the query text includes the response to the query text.

[0014] In the first embodiment of the language processing system 1, the language model server 10, the front server 20, and the user terminal 30 are provided as separate devices, but the language processing system 1 according to other embodiments is not limited to this. For example, the language processing system 1 according to other embodiments may have a configuration in which the front server 20 has a language model and does not have a language model server 10, or it may have a configuration in which the front server 20 is not provided and application service software is installed on the user terminal 30.

[0015] 《Front Server 20》 The front server 20 according to the first embodiment receives an agenda item from a user and provides a discussion application that enables role-playing of a discussion on the agenda item using a language model.

[0016] The front server 20 can obtain the content of a statement on an agenda item from the language model server 10 by providing the language model server 10 with a query string that includes the agenda item and the role. A role is a command given to the language model server 10 as input data, and is setting information that represents the persona (character, personality, personality, etc.), occupation, age, background, and other attributes of the person that the language model server 10 is to roleplay. Since the language model server 10 generates output data that follows the input data, by inputting input data including the role to the language model server 10, a response string that would be spoken by the person represented by the role can be obtained.

[0017] The language model server 10 may be given knowledge of the person to be role-played by RAG (Retrieval-Augmented Generation), fine-tuning (full fine-tuning, adapter tuning), etc. When using RAG, the data that can be referenced may differ for each role. For example, when generating output data in accordance with the role of a lawyer, the generation system references legal data via RAG. On the other hand, when generating output data in accordance with the role of a meteorologist, the generation system references meteorological data via RAG. When using adapter tuning, adapter models for each role are prepared in advance, and the output data obtained by inputting input data into the adapter corresponding to the specified role is input into the LLM.

[0018] In the first embodiment, the front server 20 simulates individuals (agents) with different personalities by assigning different roles to the language model server 10. The front server 20 can generate output data representing the second agent's statement after receiving the first agent's statement by inputting output data, which includes the first agent's statement and the second agent's role, into the language model server 10. The front server 20 can simulate a discussion between multiple agents by repeating this process. In this case, the front server 20 may assign all of the multiple roles to a single language model server 10, allowing a single language model server 10 to simulate all of the multiple agents. Alternatively, the front server 20 may distribute the multiple roles among several language model servers 10, sharing the task of simulating multiple agents among multiple language model servers 10. In this way, the front server 20 simulates a discussion between multiple agents with different settings, allowing users to obtain diverse opinions from the discussion results.

[0019] Figure 2 shows an example configuration of the front server 20 according to the first embodiment. The front server 20 includes an input unit 201, a query acquisition unit 202, a role storage unit 203, a discussion status determination unit 204, a speech instruction unit 205, a speech generation unit 206, a speech evaluation unit 207, and an output unit 208.

[0020] The input unit 201 receives input operations from the user terminal 30. The query acquisition unit 202 prompts the user to input a topic and determines the string entered by the user via the input unit 201 as the topic. The topic is an example of a query statement that represents a question to the language model server 10.

[0021] The role storage unit 203 stores role information related to the roles to be given to the language model server 10. The role storage unit 203 stores, for example, agent names, job titles, and personas in association with each other. The agent name is a string indicating the name of the agent to be simulated by the role. The job title and persona are strings indicating the job title and persona of the agent to be simulated by the language model server 10, respectively.

[0022] The discussion state determination unit 204 determines the state of the discussion based on the agent's past and present statements. In the first embodiment, there are three possible states (state candidates): "convergence," "divergence," and "stalemate." Convergence is a state where statements are moving in the same direction and consensus is approaching. Divergence is a state where new topics and perspectives are being added one after another, and the discussion is expanding. Stalemate is a state where different perspectives exist, the discussion is not progressing, and no change is observed.

[0023] The discussion state determination unit 204 inputs a query string to the language model server 10 that includes the agent's utterance history and an instruction sentence to determine the state of the discussion, thereby generating a sentence (evaluation sentence) that evaluates the state of the discussion between the agents.

[0024] Below is an example of a query string for evaluating a discussion. In the following example query string, [] indicates a variable. "#Instructions Based on the following statements, determine the current state of the discussion. Classify the progress of the discussion into one of the following: "Convergence," "Divergence," or "Stalemate." 1. Convergence: Statements are moving in the same direction, and consensus is approaching. 2. Divergence: New topics and perspectives are being added one after another, and the discussion is expanding. 3. Stalemate: Different perspectives exist, the discussion is not progressing, and no change is observed. Based on the points and flow of each statement, state which of the three states the discussion is in. Also, briefly explain the reason in 200 characters or less. #Statement history: [Agent's statement history] #Answer format -Discussion state: <Convergence / Divergence / Stalemate> -Reason: <Briefly describe the reason for your judgment of the discussion state>"

[0025] The speech instruction unit 205 generates a speech instruction statement for the agent based on the discussion state value obtained by the discussion state determination unit 204. The speech instruction statements corresponding to the discussion state value are predetermined. Specifically, in the first embodiment, the following speech instruction statements are provided.

[0026] Examples of instructions for speaking when the discussion is in a "convergent" state are as follows: Instruction I11: "Now, please make the next statement." Instruction I12: "Please summarize the points agreed upon in the discussion so far and then state your opinion." Instruction I13: "Please state an opinion that differs from the discussion so far." By including instruction I12 in the query string, it is expected that a statement stating the conclusion of the discussion will be generated. By including instruction I13 in the query string, it is expected that an opinion different from what was discussed in the discussion will be generated.

[0027] Examples of instructions for speaking when the discussion is in a "divergent" state are as follows: Instruction I21: "Now, please make the next comment." Instruction I22: "Please summarize the opinions that have been expressed so far and then offer a comment that delves deeper into that point." Instruction I23: "Please offer a comment that delves deeper into the most effective comment you have heard so far." Including instruction I22 in the query string is expected to generate comments that summarize the divergent opinions. Including instruction I23 in the query string is expected to generate comments that evaluate the opinions.

[0028] The following are examples of instructions for speaking when the discussion is at a "stalemate": Instruction I31: "Now, please make the next statement." Instruction I32: "There seem to be differences of opinion, but please propose a concrete solution based on what you have in common." Instruction I33: "Please propose a concrete solution based on what it looks like from a different perspective." By including instruction I31 in the query string, it is expected that a statement will be generated that will serve as a catalyst for resolving the stalemate by taking into account the common ground between opposing viewpoints. By including instruction I33 in the query string, it is expected that a statement will be generated that will move the discussion forward by changing the perspective of the discussion.

[0029] The speech generation unit 206 generates multiple query strings based on the multiple speech instruction sentences determined by the speech instruction unit 205, and inputs them to the language model server 10 to generate multiple sentences (speech sentences) that simulate agent speech. The multiple speech sentences generated by the speech generation unit 206 are speech candidates.

[0030] The following is an example of a query string for obtaining spoken words. "You are [Agent Name]. Your occupation is [Job Title] and your persona is [Persona]. #Topic [Topic] #Previous Conversation [Agent A1]: [Spoken Word 1] [Agent A2]: [Spoken Word 2] [Agent A3]: [Spoken Word 3] [Agent A4]: [Spoken Word 4] ... #Instruction [Speaking Instruction] Please speak concisely in about 400 characters." "Previous Conversation" is the history of spoken words generated based on the roles of other agents and the agent in question. Note that when the spoken word generation unit 206 generates the first spoken word, "Previous Conversation" may be blank or a sentence indicating that there is no spoken word. The spoken word generation unit 206 generates multiple query strings by substituting the multiple speaking instructions determined by the speaking instruction unit 205 into the "Speaking Instruction" in the above query string. Note that when the discussion has not progressed sufficiently, such as during the first round of discussion, the speaking instruction based on the discussion status may be blank.

[0031] The speech generation unit 206 according to the first embodiment obtains multiple speech sentences by inputting multiple query strings that cause a single speech sentence to be created into the language model server 10, but is not limited to this; for example, multiple speech sentences may be obtained by inputting a single query string that causes multiple speech sentences to be created into the language model server 10.

[0032] The speech evaluation unit 207 generates a query string for evaluating multiple speech candidates acquired by the speech generation unit 206 and inputs it to the language model server 10 to obtain evaluations of the multiple speech candidates. Based on the evaluation results, the speech evaluation unit 207 selects the speech candidate that is most suitable for the discussion.

[0033] The following is an example of a query string for evaluating candidate statements. "#Instructions Evaluate the following group of statements from the perspectives of "Specificity," "Diversity," and "Accuracy," and select the best statement from each perspective. Finally, make a comprehensive judgment based on the three perspectives and select the statement that contributes most to the discussion. Evaluation criteria: 1. Specificity: Is the statement specific and does it contain detailed information or specific examples? 2. Diversity: Does it offer a unique perspective or new ideas that differ from other statements? 3. Accuracy: Is the statement accurate, fact-based, and reliable? #Group of statements [Candidate statement 1] [Candidate statement 2] [Candidate statement 3]" According to the above query string, the language model server 10 outputs a response string that selects one candidate statement that is overall superior from the perspectives of "Specificity," "Diversity," and "Accuracy." In other embodiments, the statement evaluation unit 207 may generate a query string that selects one candidate statement from one or two of the perspectives of "Specificity," "Diversity," and "Accuracy."

[0034] The output unit 208 generates a display screen showing the status of the discussion among multiple agents based on the candidate statements selected by the statement evaluation unit 207, and outputs it to the user terminal 30.

[0035] 《Operation of the Language Processing System 1》 Figure 3 is a flowchart illustrating the operation of the language processing system 1 in the first embodiment. When a user accesses the front server 20 via the user terminal 30, the query acquisition unit 202 generates an agenda input screen for the user terminal 30 to input an agenda item and outputs it to the user terminal 30 (step S1). When the input unit 201 receives a string representing an agenda item from the user, the query acquisition unit 202 determines the string entered by the user as the agenda item (step S2).

[0036] The speech generation unit 206 selects one role from the roles stored in the role storage unit 203 that has not yet been selected for creating a query string to obtain a speech text (step S3). In other words, the speech generation unit 206 selects one agent that has not yet spoken. The speech generation unit 206 selects a role using a method such as a round-robin method or a method using the language model server 10. The speech generation unit 206 generates a query string to create a speech text using the agenda determined in step S2, the role selected in step S3, and the previously generated speech text, and sends the generated query string to the language model server 10, thereby receiving a response string containing the speech text from the language model server 10 (step S4).

[0037] The output unit 208 generates a discussion progress screen and outputs it to the user terminal 30 (step S5). The discussion progress screen displays the statements made by agents and icons representing the agents who made the statements, arranged in chronological order.

[0038] The speech generation unit 206 determines whether there are any roles that have not yet been selected for creating a query string to obtain speech text (step S6). If there are any roles that have not been selected (step S6: YES), the speech generation unit 206 returns to step S3 and continues generating the next speech text. In the next step S4, the query acquisition unit 202 generates a query string using the speech text contained in the response string acquired in the current step S4.

[0039] On the other hand, if there are no unselected roles (step S6: NO), that is, if the first round of discussion has ended, the discussion status determination unit 204 inputs a query string to the language model server 10 that includes the history of spoken texts obtained in step S4 and an instruction to determine the state of the discussion, thereby obtaining an evaluation text that evaluates the state of the discussion represented by the history of spoken texts (step S7). The speaking instruction unit 205 generates a speaking instruction text to the agent based on the discussion status value obtained in step S9 (step S8).

[0040] The speech generation unit 206 selects one role from the roles stored in the role storage unit 203 that has not yet been selected for creating a query string to obtain a speech text in the current round (step S9). Based on the multiple speech instruction sentences determined by the speech instruction unit 205, the speech generation unit 206 generates multiple query strings and inputs them to the language model server 10 to generate multiple speech candidates (step S10). The speech evaluation unit 207 evaluates the multiple speech candidates obtained in step S10 and generates a query string to select one speech text, inputting it to the language model server 10 to obtain one speech text (step S11). The output unit 208 generates a discussion progress screen including the speech text obtained in step S11 and outputs it to the user terminal 30 (step S12).

[0041] The speech generation unit 206 determines whether or not to end the discussion (step S13). The speech generation unit 206 determines whether or not to end the discussion under predetermined conditions, such as when a predetermined number of rounds have passed or when the number of characters in the discussion reaches the upper limit of the language model. If the discussion is not to end (step S13: NO), the speech generation unit 206 returns to step S7 and continues to generate speech text while evaluating the discussion. If the discussion is to end (step S13: YES), the language processing system 1 terminates processing.

[0042] 《Effects》 As described above, the language processing system 1 according to the first embodiment performs the following processes. The discussion state determination unit determines the state of the discussion based on the history of statements made in the discussion. The statement generation unit generates a plurality of statement candidates that follow the history of statements based on the state of the discussion. As a result, the language processing system 1 can appropriately advance the simulation of the discussion by generating statement candidates in consideration of the state of the discussion.

[0043] Furthermore, the language processing system 1 according to the first embodiment generates multiple candidate statements by providing the language model with generation instructions corresponding to the state of the discussion. In other words, the language processing system 1 can obtain candidate statements corresponding to the state of the discussion by providing the language model with query strings that facilitate the discussion according to the state of the discussion.

[0044] <Second Embodiment> The speech instruction unit 205 of the front server 20 according to the first embodiment determines the speech instruction sentence used for creating a speech candidate by selecting a speech instruction sentence corresponding to the value of the discussion state from among a plurality of prepared speech instruction sentences. In contrast, the speech instruction unit 205 according to the second embodiment dynamically generates a speech instruction sentence using a language model.

[0045] The speech instruction unit 205 according to the second embodiment generates a query string for generating a speech instruction sentence to the agent based on the value of the discussion state obtained by the discussion state determination unit 204. The speech instruction unit 205 outputs the generated query string to the language model server 10 to obtain a speech instruction sentence corresponding to the value of the discussion state.

[0046] The following shows an example of a query string for realizing the evaluation of speech candidates. "You are the facilitator who progresses the discussion. Based on the participants' speeches, please conduct facilitation to lead the discussion to the goal. The topic is "[topic]". The goal of the discussion is "[goal of the discussion]". In the discussion so far, the following speeches have been made from each panelist. [Speeches from past to present] It can be said that the current state of the discussion is in a [converging / diverging / stuck] state. Your speech is made to prompt the next speaker. As the facilitator, based on the content of the discussion so far, please make a natural speech that prompts the next speaker's speech necessary to lead the discussion to the goal. Please never output sentences other than the speech. Please make your speech about 300 characters long."

[0047] <Other Embodiments> As described above, one embodiment has been described in detail with reference to the drawings. However, the specific configuration is not limited to the above, and various design changes and the like are possible. That is, in other embodiments, the order of the above-described processes may be appropriately changed. Also, some processes may be executed in parallel. The language model server 10 and the front server 20 according to the above-described embodiment may each be configured by a single computer, or may be distributed among a plurality of computers by cloud computing or the like, and the plurality of computers may cooperate with each other to function as the language model server 10 or the front server 20.

[0048] The utterance evaluation unit 207 according to the above-described embodiment directly obtains the evaluation of a plurality of utterance candidates based on the viewpoints specified using the language model, but is not limited thereto. For example, the utterance evaluation unit 207 according to other embodiments may calculate the evaluation values of a plurality of utterance candidates by measuring the relevance between the utterance candidates and the history of utterances. As a method for calculating the evaluation values, for example, C-PMI (Liliang Ren, et.al, “C-PMI: Conditional Pointwise Mutual Information for Turn-level Dialogue Evaluation,” https: / / arxiv.org / pdf / 2306.15245) can be used.

[0049] <Computer Configuration> Figure 4 is a schematic block diagram showing the configuration of a computer according to at least one embodiment. The computer 90 includes a processor 91, main memory 92, storage 93, and interface 94. The language model server 10, front server 20, and user terminal 30 described above are each implemented in the computer 90. The operation of each of the above-described processing units is stored in the storage 93 in the form of a program. The processor 91 reads the program from the storage 93, expands it into the main memory 92, and executes the above-described processing according to the program. The processor 91 also allocates storage areas in the main memory 92 corresponding to each of the above-described storage units according to the program. Examples of the processor 91 include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), and a microprocessor.

[0050] The program may be for implementing a part of the functions to be performed by the computer 90. For example, the program may perform functions in combination with other programs already stored in storage, or in combination with other programs implemented on other devices. In other embodiments, the computer 90 may include a custom LSI (Large Scale Integrated Circuit) such as a PLD (Programmable Logic Device) in addition to, or instead of, the above configuration. Examples of PLDs include PAL (Programmable Array Logic), GAL (Generic Array Logic), CPLD (Complex Programmable Logic Device), and FPGA (Field Programmable Gate Array). In this case, some or all of the functions implemented by the processor 91 may be implemented by the integrated circuit. Such an integrated circuit is also included as an example of a processor. In other embodiments, the computer 90 may be virtualized on one or more computers.

[0051] Examples of storage 93 include magnetic disks, magneto-optical disks, optical disks, and semiconductor memory. Storage 93 may be an internal medium directly connected to the bus of the computer 90, or it may be an external medium connected to the computer 90 via an interface 94 or a communication line. Furthermore, if this program is distributed to the computer 90 via a communication line, the computer 90 that receives the distribution may expand the program into the main memory 92 and execute the above processing. In at least one embodiment, storage 93 is a tangible storage medium that is not temporary.

[0052] Furthermore, the program may be intended to implement some of the functions described above. In addition, the program may be a so-called differential file (differential program) that implements the functions described above in combination with other programs already stored in the storage 93.

[0053] The following additional information is disclosed regarding the embodiments described above.

[0054] (Note 1) A discussion simulation system comprising one or more processors, wherein the one or more processors perform the following: determine the state of the discussion based on the history of statements made in the discussion; generate a plurality of candidate statements following the history of statements based on the state of the discussion; evaluate each of the plurality of candidate statements and select one of the plurality of candidate statements based on the evaluation.

[0055] (Note 2) The language processing system according to Note 1, wherein the one or more processors generate a plurality of candidate statements by giving a plurality of generation instructions according to the state of the discussion to a language model that accepts a query string as input and outputs a response string following the query string.

[0056] (Note 3) The argument simulation system according to Note 2, wherein the one or more processors generate the multiple candidate statements by providing the language model with the generation instruction statement associated with the state of the argument from among the multiple generation instruction statements that are pre-associated with each of the multiple candidate states that the state of the argument can take.

[0057] (Appendix 4) The argument simulation system according to Appendix 2, wherein the one or more processors generate the multiple generation instructions by providing the language model with a query string that includes the state of the argument and causes the language model to create one or more generation instructions for facilitating the argument, and generate the multiple candidate statements by providing the generated multiple generation instructions to the language model.

[0058] (Appendix 5) The argument simulation system described in Appendix 1, wherein the one or more processors select the best candidate for each of the multiple candidate speeches from each of the multiple viewpoints.

[0059] (Note 6) A discussion simulation method in which a computer performs the following steps: determining the state of a discussion based on the history of statements made in the discussion; generating a plurality of candidate statements following the history of statements based on the state of the discussion; obtaining an evaluation for each of the plurality of candidate statements; and selecting one of the plurality of candidate statements based on the evaluation of the plurality of candidate statements.

[0060] (Note 7) A non-temporary storage medium storing a language processing program executable by a computer to perform a debate simulation method, wherein the debate simulation method comprises: determining the state of a debate based on a history of statements in a debate; generating a plurality of candidate statements following the history of statements based on the state of the debate; obtaining an evaluation for each of the plurality of candidate statements; and selecting one of the plurality of candidate statements based on the evaluation of the plurality of candidate statements.

[0061] 1...Language processing system 10...Language model server 20...Front server 201...Input unit 202...Query acquisition unit 203...Role storage unit 204...Discussion state determination unit 205...Speech instruction unit 206...Speech generation unit 207...Speech evaluation unit 208...Output unit 30...User terminal 90...Computer 91...Processor 92...Main memory 93...Storage 94...Interface

Claims

1. A discussion simulation system comprising: a discussion state determination unit that determines the state of a discussion based on the history of statements made in the discussion; a statement generation unit that generates a plurality of statement candidates following the history of statements based on the state of the discussion; and a statement evaluation unit that evaluates each of the plurality of statement candidates and selects one of the plurality of statement candidates based on the evaluation.

2. The discussion simulation system according to claim 1, wherein the statement generation unit generates a plurality of statement candidates by providing a plurality of generation instruction statements according to the state of the discussion to a language model that accepts input of a query string and outputs a response string following the query string.

3. The argument simulation system according to claim 2, wherein the speech generation unit provides the language model with a generation instruction sentence associated with the state of the argument from among the plurality of generation instruction sentences that are pre-associated with each of the plurality of state candidates that the state of the argument can take.

4. The discussion simulation system according to claim 2, comprising a speech instruction unit that generates a plurality of generation instruction sentences by providing the language model with a query string that includes the state of the discussion and causes the language model to generate one or more generation instruction sentences for facilitating the discussion, wherein the speech generation unit provides the generated plurality of generation instruction sentences to the language model.

5. The argument simulation system according to claim 1, wherein the statement evaluation unit selects the best statement candidate from each of the multiple statement candidates from each of the multiple viewpoints.

6. A method for simulating a discussion, comprising the steps of: a computer determining the state of a discussion based on a history of statements made in the discussion; generating a plurality of candidate statements following the history of statements based on the state of the discussion; obtaining an evaluation for each of the plurality of candidate statements; and selecting one of the plurality of candidate statements based on the evaluations of the plurality of candidate statements.

7. A discussion simulation program that causes a computer to perform the following steps: determine the state of a discussion based on the history of statements made in the discussion; generate a plurality of candidate statements following the history of statements based on the state of the discussion and obtain an evaluation for each of the plurality of candidate statements; and select one of the plurality of candidate statements based on the evaluation of the plurality of candidate statements.