Generative system, data generation method, and program
The generation system addresses the challenge of simulating diverse and coherent discussions by grouping roles with similar viewpoints, enhancing the relevance and coherence of generated data.
Patent Information
- Application Number
- PCT/JP2024/023938
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-07-02
- Publication Date
- 2026-01-08
AI Technical Summary
Existing data generation systems using large-scale language models (LLMs) lack the ability to effectively simulate discussions between agents with different personalities, leading to divergent and less meaningful outcomes.
A generation system that assigns roles to a generative model, groups these roles based on similarity, and simulates discussions within these groups, extracting relevant opinions and assigning priorities to enhance coherence and relevance.
The system effectively generates coherent and diverse discussions by grouping roles with similar viewpoints, preventing divergence and allowing for deeper discussions with prioritized opinions.
Smart Images

Figure JP2024023938_08012026_PF_FP_ABST
Abstract
Description
Generation system, data generation method and program
[0001] The present invention relates to a generation system, a data generation method, and a program.
[0002] By assigning different roles to a generative model that generates subsequent data from input data, such as a large-scale language model, it is possible to generate different data (e.g., opinions) for the same input data (e.g., an agenda). Patent Document 1 discloses a technology that uses large-scale language models (LLMs) to simulate discussions between agents with different personalities.
[0003] Chi-Min Chan et al., "CHATEVAL: TOWARDS BETTER LLM-BASED EVALUATORS THROUGH MULTI-AGENT DEBATE," arXiv:2308.07201v1 [cs.CL] 14 Aug 2023
[0004] In a data generation system that expects synergistic effects from using multiple roles, more effective data generation is required. An object of the present invention is to provide a generation system, a data generation method, and a program that can generate effective data.
[0005] One aspect of the present invention is a generation system comprising: a perspective acquisition unit that, for each of a plurality of roles to be given to a generation model that receives input data and generates output data following the input data, inputs second input data including the role's setting information and an agenda into the generation model to obtain second output data; a grouping unit that divides the plurality of roles into a plurality of groups based on the second output data for each role; and a discussion generation unit that inputs first input data including the setting information and agenda-related data related to the agenda into the generation model to obtain first output data, wherein the agenda-related data included in the first input data includes the first output data generated based on other roles that belong to the same group as the role related to the setting information.
[0006] One aspect of the present invention is a generation system comprising: a discussion generation unit that inputs first input data including setting information relating to one of a plurality of roles to be given to a generation model that receives input data and generates output data following the input data, and agenda-related data relating to an agenda into the generation model to obtain first output data; and an extraction unit that extracts one or more opinions on the agenda from the first output data relating to the plurality of roles, wherein the agenda-related data included in the first input data includes the first output data generated based on another role.
[0007] One aspect of the present invention is a generation system comprising: a perspective acquisition unit that, for each of a plurality of roles to be given to a generation model that receives input data and generates output data following the input data, inputs first input data including the role's setting information and an agenda into the generation model to obtain first output data; a selection unit that selects a portion of the plurality of roles based on the first output data for each role; and a discussion generation unit that inputs first input data including setting information for one of the selected portions of roles and agenda-related data related to the agenda into the generation model to obtain first output data, wherein the agenda-related data included in the first input data includes the first output data generated based on other roles of the portion of roles.
[0008] One aspect of the present invention is a generation system comprising: a discussion generation unit that inputs first input data including setting information relating to one of a plurality of roles to be given to a generation model that receives input data and generates output data following the input data, and agenda-related data related to an agenda, into the generation model to obtain first output data; and a rewriting unit that rewrites part of the agenda-related data, wherein the agenda-related data included in the first input data includes the first output data generated based on another role, and the discussion generation unit inputs the first input data including the rewritten agenda-related data into the generation model to obtain the first output data.
[0009] One aspect of the present invention is a data generation method comprising the steps of: for each of a plurality of roles to be given to a generative model that receives input data and generates output data following the input data, inputting second input data including the role's setting information and an agenda into the generative model to obtain second output data; dividing the plurality of roles into a plurality of groups based on the second output data for each role; and inputting first input data including the setting information and agenda-related data related to the agenda into the generative model to obtain first output data, wherein the agenda-related data included in the first input data includes the first output data generated based on other roles that belong to the same group as the role related to the setting information.
[0010] One aspect of the present invention is a program that causes a computer to execute the following steps: for each of a plurality of roles to be given to a generative model that receives input data and generates output data following the input data, inputting second input data including the role's setting information and an agenda into the generative model to obtain second output data; dividing the plurality of roles into a plurality of groups based on the second output data for each role; and inputting first input data including the setting information and agenda-related data related to the agenda into the generative model to obtain first output data, wherein the agenda-related data included in the first input data includes the first output data generated based on other roles that belong to the same group as the role related to the setting information.
[0011] According to the above aspect, it is possible to generate data effectively.
[0012] 1 is a diagram illustrating an example of a configuration of a generation system according to a first embodiment. FIG. 2 is a diagram illustrating an example of role information according to the first embodiment. FIG. 3 is a diagram illustrating an example of knowledge data according to the first embodiment. FIG. 4 is a flowchart illustrating the operation of the generation system according to the first embodiment. FIG. 5 is a diagram illustrating an example of an agenda input screen according to the first embodiment. FIG. 6 is a diagram illustrating an example of a discussion preparation screen according to the first embodiment. FIG. 7 is a diagram illustrating an example of a discussion progress screen according to the first embodiment. FIG. 8 is a diagram illustrating an example of a discussion summary screen according to the first embodiment. FIG. 9 is a flowchart illustrating the operation of the generation system according to the second embodiment. FIG. 10 is a diagram illustrating an example of a configuration of a generation system according to a third embodiment. FIG. 11 is a flowchart illustrating the operation of the generation system according to the third embodiment. FIG. 12 is a diagram illustrating an example of a discussion summary screen when selecting an opinion according to the third embodiment. FIG. 13 is a diagram illustrating an example of a configuration of a generation system according to a fourth embodiment. FIG. 14 is a flowchart illustrating the operation of the generation system according to the fourth embodiment. FIG. 15 is a diagram illustrating an example of a discussion preparation screen when groups are combined according to the fourth embodiment. FIG. 16 is a diagram illustrating an example of a discussion summary screen when groups are combined according to the fourth embodiment. FIG. 17 is a flowchart illustrating the operation of the generation system according to the fifth embodiment. FIG. 18 is a flowchart illustrating the operation of the generation system according to the fifth embodiment. FIG. 1 is a schematic block diagram illustrating the configuration of a computer according to at least one embodiment.
[0013] Several embodiments will be described below with reference to the drawings. A generation system according to the following embodiments realizes role-playing of a discussion involving multiple personalities by inputting a topic and roles into a generation model. The topic is provided by a user. The generation system may be a web server that accepts access from a terminal device such as a PC connected via a network such as the Internet, or may be a terminal device on which a program for realizing role-playing of a discussion is installed.
[0014] A generative model is a model that receives input data and generates output data that follows the input data. A generative model may be configured using a machine learning model, such as a generative adversarial network (GAN) or a Transformer. Furthermore, a generative model is not limited to a computer-generated model like the above-mentioned machine learning model, but may also include human input and output. A large-scale language model (LLM) is an example of a generative model trained to receive input of a natural language sentence and generate a natural language sentence (character string) that follows the input natural language sentence. Known types of generative models include a text-to-text model that receives an input of a character string and outputs a character string, and a text-to-image model that receives an input of a character string and outputs an image. The input of a generative model is not limited to a character string, and may also accept image data or audio data. The input data to an LLM is also called a "prompt."
[0015] A role is an instruction given as input data to a generative model, and is configuration information that represents attributes such as the persona (character, personality, character profile, etc.), occupation, age, and background of the person to be role-played by the generative model. Since a generative model generates output data following the input data, inputting input data including a role into the generative model can obtain output data that would be generated by the person represented by the role. The generative system may provide knowledge of the person to be role-played using Retrieval-Augmented Generation (RAG), fine tuning (full fine tuning, adapter tuning), or the like. When using RAG, the referenceable data may differ for each role. For example, when a generative model is to generate output data according to the role of a lawyer, the generative system references legal data using RAG. On the other hand, when a generative model is to generate output data according to the role of a meteorologist, the generative system references meteorological data using RAG. When using adapter tuning, an adapter model for each role is prepared in advance, and the output data obtained by inputting input data into the adapter corresponding to the specified role is input to the LLM.
[0016] In an embodiment, a generation system assigns different roles to a generation model, thereby allowing the generation model to simulate characters (agents) with different personalities. Hereinafter, the i-th role will be referred to as role Ri, and the character simulated by role Ri will be referred to as agent Ai. The generation system inputs input data, including output data generated as a utterance by agent A2 and role R1, into the generation model, thereby generating output data representing the utterance of agent A1 after receiving the utterance of agent A2. By repeating this process, the generation system can simulate a discussion between multiple agents. In this case, the generation system may assign multiple roles to a single generation model, thereby simulating all of the multiple agents in a single generation model. Alternatively, the generation system may distribute multiple roles among several generation models, thereby dividing the simulation of multiple agents among multiple generation models. In this way, the generation system simulates a discussion between multiple agents with different settings, allowing users to obtain diverse opinions from the results of the discussion.
[0017] First Embodiment FIG. 1 is a diagram illustrating an example configuration of a generation system 1 according to a first embodiment. The generation system 1 has a web server function that accepts access from a terminal device 2, such as a PC, connected via a network such as the Internet. In response to instructions from the terminal device 2, the generation system 1 uses an LLM to realize role-playing of a discussion between multiple agents A regarding a topic input by a user. The LLM is an example of a generation model. The generation system 1 may use an LLM stored in advance, or an LLM on an external server 3. The generation system 1 according to the first embodiment divides multiple roles into several groups according to the input topic, thereby simulating a discussion between agents belonging to each group.
[0018] The generation system 1 includes an input unit 101 , an agenda determination unit 102 , a role storage unit 103 , a viewpoint acquisition unit 104 , a selection unit 105 , a grouping unit 106 , a discussion generation unit 107 , an extraction unit 108 , and an output unit 109 .
[0019] The input unit 101 accepts input operations from the terminal device 2. The agenda decision unit 102 prompts the user to input an agenda, and decides that the character string input by the user via the input unit 101 is the agenda.
[0020] The role storage unit 103 stores role information related to the role assigned to the LLM. FIG. 2 is a diagram illustrating an example of role information according to the first embodiment. The role storage unit 103 according to the first embodiment stores an agent name, an LLM to be used, a job title, a persona, knowledge data attributes, and discussion rules in association with each other. The agent name is a character string indicating the name of the agent simulated by the role. In the example illustrated in FIG. 2, the agent name and job title are the same, but in other embodiments, the agent name may be a name, nickname, or the like. The LLM to be used indicates the type of LLM (such as a service name) to which the role is assigned. The job title and persona are character strings indicating the job title and persona of the agent to be simulated by the LLM, respectively. The knowledge data is identification information indicating the data referenced by the RAG. According to other embodiments, role information may include other information describing the agent's background, such as family structure and upbringing. The knowledge data may be stored within the generation system 1 or the external server 3. The discussion rules indicate instructions for how to proceed with the discussion according to the role. For example, examples of discussion rules include "persuading the other person" and "considering the other person's argument." Note that a role does not have to have discussion rules.
[0021] The viewpoint acquisition unit 104 acquires a sentence (a viewpoint sentence) that expresses the agent's viewpoint on the agenda by inputting a prompt, which includes an agenda and a role, for generating the agent's viewpoint on the agenda into the LLM. Examples of viewpoints include the points of contention on the agenda, the main points of argument, the viewpoint on the agenda, opinions on the agenda, points of disinterest in the agenda, and concerns about the agenda. The viewpoint acquisition unit 104 inputs the prompt into the LLM designated as the "LLM to use" in the role storage unit 103.
[0022] Below is an example of a prompt for generating an agent's perspective on a topic. In the following example prompt, {} indicates a variable. "#Instructions You are {agent name}. Your occupation is {job type} and you are a person called {persona}. Using {knowledge data} as a reference, please provide one of your perspectives when discussing the following topic. #topic {topic} #knowledge data {knowledge data search results}" The topic included in the prompt is an example of topic-related data related to the topic.
[0023] The "knowledge data search results" are knowledge data obtained by RAG. For example, the perspective acquisition unit 104 generates a vector relating to a combination of a role and an agenda, and searches for sentences that have a high similarity to the vector from knowledge data relating to attributes associated with the role. FIG. 3 is a diagram illustrating an example of knowledge data according to the first embodiment. The knowledge data is stored in a storage device of the generation system 1 or an external storage device. The knowledge data illustrated in FIG. 3 includes attributes, sentence vectors, and sentences. The attributes of the knowledge data represent attributes related to the content of the knowledge data, such as corporate data, legal data, and meteorological data. The attributes correspond to the attributes of the knowledge data included in the role information illustrated in FIG. 2. The sentence vector is a vector representation of the sentence. The sentence is represented by a character string. The perspective acquisition unit 104 can then implement RAG by including the searched sentence in a prompt. Note that if the highest similarity is lower than a predetermined threshold, the "knowledge data search results" may be blank.
[0024] The selection unit 105 calculates a relevance score representing the relevance between the viewpoint sentences for each agent acquired by the viewpoint acquisition unit 104 and the roles, and selects a predetermined number of roles with high relevance scores as roles to be used in the discussion simulation. The number of roles to be extracted may be predetermined or may be determined by a threshold value of the relevance score. This is expected to prevent the discussion from diverging due to the inclusion of statements by agents that are less relevant to the content of the discussion. The selection unit 105 may calculate the relevance score using LLM.
[0025] An example of a prompt for calculating a relevance score is shown below: "#Instructions Please express the relevance between the person shown below and the perspective shown below as a number between 0 and 10. The higher the number representing the relevance, the stronger the relevance. #About the person His occupation is {job type} and he is a person called {persona}. #About the perspective {perspective sentence} #Output format Relevance: <number>" The selection unit 105 can obtain a relevance score by extracting the number written after "relevance:" from the sentence output from the LLM in accordance with the above prompt.
[0026] In addition, the selection unit 105 in other embodiments may use a vector space model instead of an LLM and calculate the relevance score using other methods, such as obtaining the relevance score by calculating the similarity (such as cosine similarity) between a vector representing a role and a vector representing a viewpoint sentence.
[0027] The grouping unit 106 classifies the roles selected by the selection unit 105 into several groups. The grouping unit 106 classifies roles having relatively high similarities between the generated viewpoint sentences into the same group. The grouping unit 106 may calculate the relevance score using LLM.
[0028] An example of a prompt for achieving grouping is shown below: "#Instructions Refer to the combinations of people and their perspectives shown below and divide the people into groups of people with similar perspectives. Each group should have at least two people. Give each group a name that represents the commonality of the perspectives. #People and perspectives {Agent A1}'s perspective: {Perspective 1} {Agent A2}'s perspective: {Perspective 2} {Agent A3}'s perspective: {Perspective 3} ... #Output format 1. <Group name>: <People>, <People>, ... 2. <Group name>: <People>, <People>, ..." The grouping unit 106 can obtain a group name by extracting the character string written before the colon (:) from the sentence output from the LLM in accordance with the above prompt, and can obtain the names of multiple agents by dividing the character string written after the colon (:) with a comma (,).
[0029] Note that the grouping unit 106 according to another embodiment may use a vector space model to find vectors representing viewpoint sentences generated from each role, and may use a technique such as clustering to sort each vector into multiple clusters, thereby classifying roles with similar viewpoints into the same group. In this case, the grouping unit 106 may generate group names by inputting a prompt to the LLM to generate group names that represent commonalities among the viewpoint sentences related to each group.
[0030] The discussion generation unit 107 generates sentences (statement sentences) that simulate discussions between agents by inputting prompts including a topic and a role into the LLM for each group divided by the grouping unit 106. The discussion generation unit 107 inputs the prompt into the LLM designated as the "LLM to use" in the role storage unit 103.
[0031] An example of a prompt for simulating a discussion is shown below: "#Instructions You are {agent name}. Your occupation is {job type} and your identity is {persona}. Please refer to {knowledge data} and continue speaking in the following conversation. Please speak in accordance with {discussion rules}. #Topic {topic} #Knowledge data {knowledge data search results} #Your perspective on the topic {point of view} #Last conversation {Agent A1}: {statement 1} {Agent A2}: {statement 2} {Agent A3}: {statement 3} {Agent A4}: {statement 4} ..." The "last conversation" is a history of statements generated based on other agents in the same group and the roles associated with each agent. Note that when the discussion generation unit 107 first generates a statement, the "last conversation" may be blank or a statement indicating that no statement was made. The point of view statements and statement statements generated based on the topic are both examples of topic-related data.
[0032] By inputting the above prompts for each role into the LLM, the utterance sentences of each agent can be obtained. Furthermore, since the "last conversation" includes utterance sentences of agents belonging to the same group, the discussion generation unit 107 can generate utterance sentences that simulate discussions between agents belonging to the same group. Note that, since the utterance sentences are generated based on the "last conversation," the content of the utterance sentences changes depending on the order of the roles for which prompts are generated, i.e., the order in which the agents speak. The discussion generation unit 107 may determine the order of the roles using a round-robin method. Alternatively, the discussion generation unit 107 may have the LLM determine the order of the roles.
[0033] An example of a prompt for determining the order of roles is shown below: "#Instructions You are the moderator of the discussion. Please choose from the candidates below who is most suitable to speak next in the following conversation on the topic {topic}. #Conversation {Agent A1}: {Speech 1} {Agent A2}: {Speech 2} {Agent A3}: {Speech 3} {Agent A4}: {Speech 4} ... #Candidates {Agent A5}: Occupation {Job Type 5}, Person named {Persona 5}. Perspective on the topic {Perspective 5}. {Agent A6}: Occupation {Job Type 6}, Person named {Persona 6}. Perspective on the topic {Perspective 6} ... #Output Format Next person to speak: <person>" A candidate is a role that has not yet been selected to create a prompt.
[0034] The extraction unit 108 extracts opinions raised in the discussion from the multiple comment sentences generated by the discussion generation unit 107. The upper limit number of opinions to be extracted may be determined in advance. The extraction unit 108 generates sentences (opinion sentences) expressing the opinions raised in the group discussion by inputting a prompt including the comment sentences for each group and the upper limit number of opinions into the LLM.
[0035] Below is an example of a prompt for extracting opinions in a discussion: "#Instructions You are the discussion moderator. Please extract up to {maximum number} opinions from the following conversation on the topic {topic}. #Conversation {Agent A1}: {Statement 1} {Agent A2}: {Statement 2} {Agent A3}: {Statement 3} {Agent A4}: {Statement 4} ... #Output format Opinion 1: <Extracted opinion> Opinion 2: <Extracted opinion> ..."
[0036] The extraction unit 108 calculates a display priority for each of the multiple opinion sentences obtained from the LLM. The display priority is set to be higher the greater the number of agents who support the opinion expressed by the opinion sentence (the number of supporters). In other words, the extraction unit 108 calculates the number of supporters for the opinion sentence as the priority.
[0037] Below is an example of a prompt for obtaining the priority of an opinion: "#Instructions From the following conversation, please tell me the number of people who agree with the opinion "{opinion statement}". #Conversation {Agent A1}: {Statement statement 1} {Agent A2}: {Statement statement 2} {Agent A3}: {Statement statement 3} {Agent A4}: {Statement statement 4} ... #Output format Number of people who agree: <Number of people>"
[0038] The output unit 109 generates a display screen showing the status of the discussion among a plurality of agents and outputs it to the terminal device 2 .
[0039] 4 is a flowchart showing the operation of the generation system 1 in the first embodiment. When a user accesses the generation system 1 using a terminal device 2, the agenda decision unit 102 generates an agenda input screen G1 for inputting an agenda into the terminal device 2, and outputs the screen to the terminal device 2 (step S1).
[0040] FIG. 5 illustrates an example of an agenda input screen G1 according to the first embodiment. The agenda input screen G1 includes a first area P1 displaying the agenda, a second area P2 displaying the appearance of the agent, a third area P3 displaying the content of the discussion, and a fourth area P4 displaying a summary of the discussion. The first area P1 includes an input form P11 for accepting input of the agenda. The second area P2 displays multiple symbols P21 representing agents. The symbols P21 according to the first embodiment are icon images. Note that in other embodiments, the symbols P21 may be other symbols representing agents, such as avatars, moving images, or character strings. Each symbol P21 is associated with an agent name. In the agenda input screen G1, the multiple symbols P21 are arranged randomly. That is, before the agenda is input into the input form P11, the multiple symbols P21 are arranged without distinction. When a symbol P21 is selected, a balloon P22 presenting the agent's attribute information (such as occupation, persona, and type of LLM used in the simulation) is displayed near the selected symbol P21. At this point, the discussion has not yet started, so the third area P3 and the fourth area P4 of the agenda input screen G1 are blank.
[0041] When the input unit 101 accepts input from a user into the input form P11, the agenda setting unit 102 sets the character string entered by the user as the agenda (step S2). Next, the viewpoint acquisition unit 104 acquires viewpoint sentences representing the viewpoints of each agent by providing the LLM with a prompt including the agenda determined in step S2 and the role of each agent (step S3). The selection unit 105 calculates a relevance score representing the relevance between the viewpoint sentences and the roles for each agent, and selects a predetermined number of roles with high relevance scores as roles to be used in the discussion simulation (step S4).
[0042] The grouping unit 106 classifies the roles selected in step S4 into groups based on the similarity between the viewpoint sentences (step S5). After the roles are classified into groups, the output unit 109 generates a discussion preparation screen G2 and outputs it to the terminal device 2 (step S6).
[0043] 6 is a diagram showing an example of the discussion preparation screen G2 according to the first embodiment. The discussion preparation screen G2 has a first area P1 that displays the agenda, a second area P2 that displays the status of the agents, a third area P3 that displays the content of the discussion, and a fourth area P4 that displays the opinions (opinion statements) raised in the discussion for each group.
[0044] The first area P1 includes an agenda label P12 that displays the entered agenda. Unlike the input form P11, the text representing the agenda displayed in the agenda label P12 cannot be edited. The second area P2 displays multiple symbols P21 representing agents. In the second area P2, symbols P21 representing agents belonging to the same group are arranged adjacent to each other. That is, after an agenda is entered into the input form P11, the multiple symbols P21 are arranged according to the group to which the corresponding agent belongs. In the second area P2, an oval group frame P23 representing a group is arranged, and symbols P21 representing agents belonging to the group represented by the group frame P23 are arranged over the group frame P23. The group name is displayed in the group frame P23. The group name is a text string representing the commonalities of the perspectives of roles belonging to the same group, and is therefore an example of a text string representing the commonalities of roles. When a symbol P21 is selected, a balloon P22 is displayed near the symbol P21. The balloon P22 may display a perspective sentence of the agent represented by the symbol P21.
[0045] At this point, the discussion has not started, so the third area P3 of the discussion preparation screen G2 is blank. In the fourth area P4, spaces for displaying the opinion sentences of each group are arranged side by side. At the top of each space, the group name of the corresponding group is displayed. At this point, the discussion has not started, so no opinion sentences are arranged in the fourth area P4 of the discussion preparation screen G2.
[0046] The generation system 1 performs the following steps S7 to S10 for each group divided by the grouping unit 106. Below, the processing for one of the groups (target group) will be described. The discussion generation unit 107 selects one role from the target group that has not yet been selected to create a prompt for obtaining a statement sentence (step S7). In other words, the discussion generation unit 107 selects one agent who has not yet made a statement in the target group. The discussion generation unit 107 selects a role using a round-robin method or a method using an LLM. The discussion generation unit 107 obtains a statement sentence by inputting into the LLM a prompt that includes the topic determined in step S2, the role selected in step S7, the viewpoint sentence for that role obtained in step S3, and the statement sentence previously generated in the target group (step S8).
[0047] The output unit 109 generates a discussion progress screen G3 and outputs it to the terminal device 2 (step S9). Fig. 7 is a diagram showing an example of the discussion progress screen G3 according to the first embodiment. The discussion progress screen G3 has a first area P1 that displays the agenda, a second area P2 that displays the status of the agents, a third area P3 that displays the content of the discussion, and a fourth area P4 that displays the opinions (opinion statements) raised in the discussion for each group.
[0048] The first area P1 includes an agenda label P12 that displays the input agenda, similar to the discussion preparation screen G2. The second area P2 includes a plurality of symbols P21 representing agents, arranged in groups, similar to the discussion preparation screen G2.
[0049] In the third area P3, a statement sentence P31 for one of the multiple groups and a symbol P32 representing the agent who made the statement are arranged in chronological order. That is, the statement sentences P31 are arranged in the order in which they were created. The statement sentences P31 are displayed dynamically over time. For example, the statement sentences P31 may be character strings output from the LLM arranged in real time. At this time, a speech bubble P24 indicating that a statement is being made is displayed near the symbol P21 corresponding to the role used to create the displayed statement sentence P31 in the second area P2. That is, the speech bubble P24 is displayed near the symbol P21 corresponding to the role selected in step S7. The presence or absence of the speech bubble P24 is an example of the appearance of the symbol P21. In other embodiments, the statement symbol P21 may be enlarged or may be differentiated from the other symbols P21 by a method other than the speech bubble P24, such as by adding an animation of the mouth moving. At this point, the discussion has not yet reached a conclusion, and therefore no opinion text has been placed in the fourth area P4 of the discussion progress screen G3.
[0050] The discussion generation unit 107 determines whether or not there are any roles in the target group that have not yet been selected for creating a prompt to obtain a comment sentence (step S10). If there are any unselected roles (step S10: YES), the discussion generation unit 107 returns the process to step S7 and continues generating the next comment sentence. On the other hand, if there are no unselected roles (step S10: NO), the discussion generation unit 107 ends generating comment sentences for the target group.
[0051] After generating the comment sentences for each group, the extraction unit 108 inputs a prompt including the generated comment sentences into the LLM for each group to obtain opinion sentences (step S11). The extraction unit 108 then determines the display priority of each of the opinion sentences (step S12).
[0052] The output unit 109 generates a discussion summary screen G4 and outputs it to the terminal device 2 (step S13). Fig. 8 is a diagram showing an example of the discussion summary screen G4 according to the first embodiment. The discussion summary screen G4 has a first area P1 that displays the agenda, a second area P2 that displays the status of the agents, a third area P3 that displays the content of the discussion, and a fourth area P4 that displays the opinions (opinion statements) raised in the discussion for each group.
[0053] The first area P1 includes a topic label P12 that displays the input topic, similar to the discussion progress screen G3. The second area P2 includes a plurality of symbols P21 representing agents, arranged by group, similar to the discussion progress screen G3. The third area P3 includes a statement P31 from one of the groups and a symbol P32 representing the agent who made the statement, arranged in chronological order. At the end of the statement P31 arranged in the third area P3, a summary status display P33 such as "The discussion has ended and N opinions have been extracted" is arranged. The fourth area P4 includes opinion statements P41 from each group extracted in step S11, arranged in the order of priority determined in step S12.
[0054] (Effects of the First Embodiment) As described above, the generation system 1 according to the first embodiment executes the following processing. The viewpoint acquisition unit 104 inputs a prompt (second input data) including the role's setting information and the agenda for each of the multiple roles to be assigned to the generation model into the generation model to acquire viewpoint sentences (second output data). The grouping unit 106 divides the multiple roles into multiple groups based on the viewpoint sentences for each role. The discussion generation unit 107 inputs a prompt (first input data) including a statement sentence generated based on other roles belonging to the same group and setting information into the generation model to acquire the statement sentences (first output data). By grouping roles based on the viewpoint sentences for each role, the generation system 1 can simulate a discussion between roles with a common viewpoint. This allows the generation system 1 to prevent the discussion from diverging and simulate a discussion that deepens in line with a common viewpoint.
[0055] The extraction unit 108 according to the first embodiment extracts, for each group, one or more opinions on a topic from the statements related to the roles belonging to the group. This allows users to easily recognize the opinions obtained as a result of discussions on the set topic. The extraction unit 108 also assigns a priority to each opinion based on the statements related to each role. This allows users to use the priority as information when considering multiple opinions.
[0056] The selection unit 105 according to the first embodiment selects some of the multiple roles as roles to be used in the discussion based on the viewpoint sentences for each role. This allows the generation system 1 to simulate a discussion that is deepened according to a common viewpoint by eliminating roles that may lead to divergence in the discussion. In particular, the selection unit 105 according to the first embodiment selects some of the roles based on a relevance score that indicates the degree of relevance between the topic (the viewpoint sentence obtained from the topic) and the role. This allows roles that are less relevant to the topic to be excluded from the discussion.
[0057] In the first embodiment, the type of LLM can be specified for each role in the role storage unit 103. If the LLM associated with role R1 and the LLM associated with role R2 are different, the discussion generation unit 107 outputs the statement sentences related to role R1 and role R2 in different LLMs. This allows the generation system 1 to simulate agents with different personalities based not only on the differences in roles but also on the differences in the characteristics of the LLMs.
[0058] The screen displayed by the generation system 1 according to the first embodiment has the following features: In the first area P1 of the screen, an agenda item is placed to be set in order to obtain utterance sentences (output data) from the generative model. In the second area P2, a plurality of symbols P21 representing a plurality of roles assigned to the generative model are placed. In the third area P3, a plurality of utterance sentences generated by the generative model based on each of the plurality of roles and the agenda are placed. This allows the generation system 1 to visually present to the user the state of a discussion between a plurality of agents A.
[0059] Second Embodiment A generation system 1 according to a second embodiment evaluates the discussion by agent A and continues generating utterance sentences until a certain evaluation is reached. The configuration of the generation system 1 according to the second embodiment is the same as that of the first embodiment.
[0060] The extraction unit 108 according to the second embodiment calculates a score for evaluating a discussion based on a plurality of opinion sentences obtained from the LLM. The extraction unit 108 calculates a diversity score for evaluating the diversity of opinions and a depth score for evaluating the depth of the discussion as scores for evaluating the discussion. The diversity score may be expressed, for example, by the dispersion of vectors of words included in each opinion. In other words, an opinion that uses a variety of words will have a higher diversity score than an opinion that contains many words with similar meanings. The depth score may be expressed, for example, by the dispersion of vectors of words included in the entire discussion. Note that, to prevent scores from increasing depending on the length of a sentence, the diversity score and depth score may be calculated so that they decrease as the sentence length increases. For example, the functions for calculating the diversity score and depth score may include a term that takes the sentence length as the denominator. The diversity score and depth score may be calculated using distinct-N, Self-BLEU, Pairwise-BLEU, or the like.
[0061] 9 is a flowchart showing the operation of the generation system 1 in the second embodiment. The generation system 1 performs steps S1 to S13 in the same manner as in the first embodiment. After the output unit 109 outputs the discussion summary screen G4 in step S13, the extraction unit 108 calculates a diversity score and a depth score for each group based on the opinion sentences (step S21). The extraction unit 108 determines whether the diversity score and the depth score exceed predetermined thresholds (step S22).
[0062] If at least one of the diversity score and the depth score does not exceed the threshold (step S22: NO), the generation system 1 returns to step S7 and continues the discussion simulation in each group. At this time, the discussion generation unit 107 may replace the value of the "last conversation" included in the prompt with the opinion sentence extracted in step S11 instead of the multiple statement sentences. In this case, the generation system 1 can reduce the number of characters in the prompt to be input into the LLM.
[0063] On the other hand, if both the diversity score and the depth score exceed the threshold (step S22: YES), the generation system 1 ends the processing.
[0064] (Effects of the Second Embodiment) The generation system 1 according to the second embodiment continues a discussion until the diversity and depth of the discussion reach a certain level. This allows the generation system 1 to suppress variations in the diversity and depth of the discussion that vary depending on the topic, and to simulate discussions above a certain level. Note that the generation system 1 according to other embodiments may determine whether or not to continue the discussion based on only either the diversity score or the depth score, or may determine whether or not to continue the discussion using other scores.
[0065] Third Embodiment FIG. 10 is a diagram illustrating an example configuration of a generation system 1 according to a third embodiment. The generation system 1 according to the third embodiment selects opinions raised in a discussion by simulating user values, and then simulates a discussion about the selected opinion. The generation system 1 according to the third embodiment further includes a decision-making unit 110 in addition to the configuration of the second embodiment. The decision-making unit 110 mimics the user values and selects an opinion that will serve as a conclusion for the discussion from among the multiple opinions extracted by the extraction unit 108. The decision-making unit 110 mimics the user values by, for example, inputting a prompt including information about past user statements (e.g., SMS posts) and past user decisions into the LLM. The prompt includes the multiple opinions extracted by the extraction unit 108 and an instruction to select at least one of the multiple opinions by simulating the user values.
[0066] Below is an example of a prompt that mimics the user's values and allows them to choose the conclusion of a discussion: "#Instructions You are the decision maker who will decide the direction of the discussion. Taking into account the decision maker's past statements shown below, please select the one opinion that you consider most important from the opinions raised in the discussion between multiple people. #Topic {Topic} #Opinions 1. {Opinion text} 2. {Opinion text} ... #Decision maker's past statements {Information on statements and decisions made by past users} #Output format <Opinion number>"
[0067] FIG. 11 is a flowchart illustrating the operation of the generation system 1 in the third embodiment. The generation system 1 performs steps S1 to S22 in the same manner as in the second embodiment. If at least one of the diversity score and the depth score does not exceed the threshold in step S22 (step S22: NO), the decision-making unit 110 selects one of the multiple opinions extracted in step S11, imitating the user's values (step S31). FIG. 12 is a diagram illustrating an example of the discussion summary screen G4 when selecting an opinion in the third embodiment. Among the multiple opinion sentences P41 arranged in the fourth area P4 of the discussion summary screen G4, the one selected in step S31 is displayed in a different manner (e.g., color, size, blinking, font) from the other opinion sentences P41. Note that the selected opinion sentence P41 is selected based on the user's values, so it is not necessarily the opinion with the majority of votes (high priority) that is selected.
[0068] The generation system 1 then returns to step S2. This causes the agenda decision unit 102 to change the agenda based on the opinion selected in step S31 (step S2). The agenda decision unit 102 may replace the selected opinion with the original agenda, or may create a new agenda by adding the selected opinion to the original agenda. This changes the character string of the agenda label P12 in the first area P1 of the subsequent discussion preparation screen G2, discussion progress screen G3, and discussion summary screen G4. That is, after multiple opinion sentences P41 are arranged in the fourth area P4 on the display screen, at least one opinion among the multiple opinion sentences P41 is arranged as the agenda in the first area P1. Since the viewpoint sentence obtained in step S3 also changes due to the change in the agenda, the role groups are reorganized in step S5. This changes the arrangement of the symbols P21 in the second area P2 of the subsequent discussion preparation screen G2, discussion progress screen G3, and discussion summary screen G4. That is, the multiple symbols P21 are arranged separately for each reorganized group.
[0069] The method of acquiring the comment text by the discussion generation unit 107 in step S8 may be different for the initial discussion and the discussion after the topic has been changed. For example, a comment by a listener such as "I think {the selected opinion} is important" may be included at the beginning of the "Conversation" item in the prompt. In this case, a comment text P31 representing the above comment by the listener may be placed on the discussion progress screen G3.
[0070] In step S22, if both the diversity score and the depth score exceed the threshold (step S22: YES), the generation system 1 ends the processing.
[0071] (Effects of the Third Embodiment) The generation system 1 according to the third embodiment continues a discussion until the diversity and depth of the discussion reach a certain level. At this time, the generation system 1 selects one of the extracted opinions while imitating the user's values, and determines that opinion as the new topic. In this way, the generation system 1 can simulate the progress of a discussion in line with the user's values.
[0072] In the generation system 1 according to the third embodiment, the decision-making unit 110 automatically determines a new agenda item by imitating the user's values, but this is not limited to this. For example, the generation system 1 according to other embodiments may accept a selection of one of multiple opinions from the user in step S31. For example, the input unit 101 may accept an operation (click, tap, etc.) by the user via the terminal device 2 to select one of multiple opinion sentences P41 displayed on the discussion summary screen G4. Furthermore, the decision-making unit 110 according to other embodiments may select an agenda item by imitating the values of a person other than the user.
[0073] (Fourth embodiment) FIG. 13 is a diagram showing an example of the configuration of a generation system 1 according to a fourth embodiment. The generation system 1 according to the fourth embodiment simulates a discussion in which some of multiple groups are combined into one group. In addition to the configuration of the second embodiment, the generation system 1 according to the fourth embodiment further includes a collaboration instruction receiving unit 111. The collaboration instruction receiving unit 111 receives an instruction to combine two or more of the multiple groups. When two or more groups are combined, agents belonging to the combined group advance a discussion beyond the boundaries of the groups.
[0074] 14 is a flowchart illustrating the operation of the generation system 1 in the fourth embodiment. The generation system 1 performs steps S1 to S22 in the same manner as in the second embodiment. If at least one of the diversity score and the depth score does not exceed the threshold in step S22 (step S22: NO), the collaboration instruction receiving unit 111 waits for a certain period of time for a user instruction to combine two or more groups (step S41). For example, if a user wants to combine groups G1 and G2, the user inputs an instruction to the generation system 1 by dragging and dropping the group frame P23 of group G1 displayed in the second area P2 of the discussion summary screen G4 onto the group frame P23 of group G2.
[0075] If the user does not input an instruction to combine two or more groups (step S41: NO), the generation system 1 returns the process to step S7 as in the second embodiment, and continues the simulation of the discussion in each group.
[0076] On the other hand, if the user inputs an instruction to combine two or more groups (step S41: YES), the collaboration instruction receiving unit 111 combines two or more groups in accordance with the instruction (step S42). Then, the process returns to step S6, and the output unit 109 outputs the discussion preparation screen G2 to the terminal device 2. In another embodiment, the viewpoint acquisition unit 104 may acquire viewpoint sentences anew when combining the groups, and the grouping unit 106 may determine group names based on commonalities in the viewpoint sentences. This changes the group names of existing groups.
[0077] FIG. 15 is a diagram showing an example of the discussion preparation screen G2 when groups are combined according to the fourth embodiment. The second area P2 displays a plurality of symbols P21 representing agents. In the second area P2, the group frames P23 of the combined groups are connected by a relational line P25. Furthermore, the group frames P23 of the combined groups are arranged relatively close to each other relative to the other group frames P23. The relational line P25 is an example of a graphic that associates groups. In the fourth area P4 of the discussion preparation screen G2, spaces for displaying the opinions of the combined groups are arranged together. In the example shown in FIG. 15, the "Local Resources" group and the "Law" group are combined, and the fourth area P4 is arranged with a space for the "Local Resources / Law" combination, rather than spaces for the "Local Resources" group and the "Law" group individually.
[0078] Thereafter, the generation system 1 simulates a discussion in the same way as in the second embodiment. At this time, for groups not specified in the combination instructions, the discussion generation unit 107 selects one role that has not yet been selected from the target group, just as in the creation of the first comment document. On the other hand, for group combinations, the discussion generation unit 107 selects one role that has not yet been selected from the groups involved in the combination in step S7. For example, when combining groups G1 and G2, the discussion generation unit 107 selects one role from the roles belonging to group G1 and the roles belonging to group G2. Furthermore, in step S8, the discussion generation unit 107 includes all comment sentences related to roles belonging to any of the two or more groups involved in the combination as "conversations" included in the prompts to be input into the LLM. For example,
[0079] An example of a prompt for simulating a discussion in a combination of groups is shown below. In the following prompt, the selected role R5 (agent A5) belongs to group G1. "#Instructions You are {agent A5}. Your occupation is {job type} and your identity is {persona}. Please refer to the {knowledge data} and continue speaking in the following conversation. #Topic {topic} #Knowledge data {knowledge data search results} #Your perspective on the topic {point of view} #Previous conversation {agent A1 in group G1}: {sentence 1} {agent A2 in group G2}: {sentence 2} {agent A3 in group G1}: {sentence 3} {agent A4 in group G2}: {sentence 4} ..." In other words, the prompt for simulating a discussion in the combination of groups G1 and G2 includes information about role R1 in group G1 and sentences generated based on the other roles (roles R2 and R4) in group G2 involved in the combination.
[0080] FIG. 16 is a diagram showing an example of a discussion summary screen G4 when groups are combined according to the fourth embodiment. In the fourth area P4 of the discussion summary screen G4, similar to the discussion preparation screen G2, a single space for displaying opinion sentences related to the group combination is arranged. Opinion sentences P41 related to the group combination are displayed side by side in this space. Among the multiple opinion sentences P41, opinion sentences P41 representing new opinions that were not extracted before the groups were combined are arranged in a different manner from the other opinion sentences P41. For example, opinion sentences P41 representing new opinions may be displayed with a relatively high brightness. The determination of whether or not an opinion sentence P41 related to a new opinion exists may be performed by the LLM.
[0081] An example of a prompt for extracting new opinions is shown below: "#Instructions: Compare the first and second opinion sets shown below, and extract opinions that are not in the first opinion set but are in the second opinion set. Even if the expressions are not an exact match, if the meaning is close, consider them to be the same opinion. Note that there may be no opinions that are not in the first opinion set but are in the second opinion set. In that case, please answer "No opinion." #First opinion set A1. {Opinion sentences for group G1 before combination} A2. {Opinion sentences for group G1 before combination} A3. {Opinion sentences for group G2 before combination} ... #Second opinion set B1. {Opinion sentences related to the combination of group G1 and group G2} B2. {Opinion sentences related to the combination of group G1 and group G2} ... #Output format <Number of second opinion set>, <Number of second opinion set>, ..."
[0082] (Effects of the Fourth Embodiment) The generation system 1 according to the fourth embodiment selects two or more groups and simulates a discussion that spans the groups. In other words, the generation system 1 creates new statements based on statements made by agents with different viewpoints. This allows the generation system 1 to increase the diversity of the discussion.
[0083] The generation system 1 according to the fourth embodiment receives instructions from a user regarding the combination of groups, but is not limited to this. For example, the generation system 1 according to another embodiment may include the decision-making unit 110 according to the third embodiment, and the decision-making unit 110 may generate instructions regarding the combination of groups by imitating the user's values.
[0084] Fifth Embodiment FIG. 17 is a diagram illustrating an example configuration of a generation system 1 according to a fifth embodiment. The generation system 1 according to the fifth embodiment allows users to control the direction of a discussion by rewriting or deleting some of the statements made in the discussion. The generation system 1 according to the fifth embodiment further includes a rewriting unit 112 in addition to the configuration of the first embodiment. The rewriting unit 112 accepts an instruction from a user to rewrite or delete a statement. For example, the rewriting unit 112 accepts a designation from a user of a statement P31 displayed in the third area P3 of the discussion summary screen G4, and accepts an instruction to delete or rewrite the specified statement P31. When the rewriting instruction is accepted, the rewriting unit 112 accepts a string input from the user using the specified statement P31 as a text box and acquires the rewritten statement.
[0085] 18 is a flowchart showing the operation of the generation system 1 in the fifth embodiment. The generation system 1 performs steps S1 to S13 in the same manner as in the first embodiment. After the output unit 109 outputs the discussion summary screen G4 in step S13, the rewriting unit 112 receives an instruction from the user to rewrite or delete the comment text (step S51). If there is no instruction to rewrite or delete the comment text (step S51: NO), the generation system 1 ends the processing.
[0086] On the other hand, if the rewriting unit 112 receives an instruction to rewrite or delete a comment sentence (step S51: YES), it generates a history of comment sentences in which the specified comment sentence has been rewritten or deleted, i.e., a conversation sentence (step S52). For example, in a certain group, if comment sentences C1, C2, C3, C4, and C5 have been generated in this order through the execution of steps S7 to S10, and a user instructs the rewriting of comment sentence C3, the rewriting unit 112 creates a conversation sentence by leaving comment sentences C1 and C2 that precede the specified comment sentence C3, rewriting the specified comment sentence C3 according to the instruction, and deleting comment sentences C4 and C5 that follow the specified comment sentence C3. The generation system 1 returns the process to step S7 and continues the discussion simulation in each group. At this time, the discussion generation unit 107 sets the value of the "last conversation" included in the prompt to the conversation sentence generated by the rewriting unit 112.
[0087] (Effects of the Fifth Embodiment) As a result, the generation system 1 according to the fifth embodiment allows users to check how the discussion will proceed if they change or delete a statement made by agent A. This allows users to control the direction of the discussion.
[0088] Sixth Embodiment The generation system 1 according to the sixth embodiment allows a user to specify a different discussion generation method than those described in the first to fifth embodiments. The generation system 1 according to the sixth embodiment accepts instructions from a user regarding rules for discussion generation. Examples of rules for discussion generation include a group formation method, a method for determining the order of comments within a group, a maximum number of opinions generated per group, a diversity score threshold, a depth score threshold, an entity for selecting the next opinion to be discussed, opinion extraction conditions, and a method for outputting the results of the discussion. Examples of methods for outputting the results of the discussion include a discussion log, an opinion collection, and selected opinions. A discussion log is an output in a format in which comment text is arranged in chronological order, i.e., the output of information displayed in the third area P3. An opinion collection is an output in a format in which opinions extracted from comment text are arranged, i.e., the output of information displayed in the fourth area P4. Selected opinions are an output in a format in which opinions are ordered according to a predetermined criterion (e.g., priority, diversity score, score based on the user's values, etc.).
[0089] 19 is an example of rule data stored in the generation system 1 according to the sixth embodiment. The generation system 1 according to the sixth embodiment may store multiple types of rule data indicating rules related to discussion generation, as shown in FIG. 19, and allow a user to determine the rules related to discussion generation by selecting any rule data.
[0090] 20 is an example of a rule input screen according to the sixth embodiment. The generation system 1 according to the sixth embodiment may determine rules for discussion generation by displaying an input screen for rules for discussion generation as shown in FIG. 20 and accepting rule data input from a user.
[0091] In the sixth embodiment, when a user specifies an upper limit number of opinions, the extraction unit 108 extracts opinions equal to or less than the upper limit number using a prompt including the specified upper limit number. As a result, opinions equal to or less than the specified upper limit number are arranged in the fourth area P4 of the screen. In the sixth embodiment, when a user specifies extraction conditions for opinions, the extraction unit 108 extracts opinions using a prompt including the specified extraction conditions.
[0092] (Other Embodiments) Although one embodiment has been described in detail above with reference to the drawings, 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 changed as appropriate. Furthermore, some processes may be executed in parallel. The generation system 1 according to the above-described embodiment may be configured by a single computer, or the configuration of the generation system 1 may be distributed across multiple computers, and the multiple computers may function as the generation system 1 by cooperating with each other. The generation system 1 may be implemented in a virtual machine realized by cloud computing using multiple computers.
[0093] The generation system 1 according to the above-described embodiment simulates a discussion between multiple agents, but is not limited to this. For example, the generation system 1 according to another embodiment may simulate non-verbal communication between multiple agents. In this case, the output data obtained by the generation system 1 from the generative model may not be text data, but may be other data such as images or coded information. In other words, the generative model in this case may be other generative models such as an image generation model rather than an LLM.
[0094] The generation system 1 according to the embodiment described above allows the LLM to simulate an agent by including role information in the LLM prompt, but this is not limited to this. For example, in the generation system 1 according to other embodiments, the LLM may be simulated by fine-tuning the LLM, RAG, adapter tuning, or the like. For example, when fine-tuning the LLM, an LLM that outputs according to the specified role can be generated by providing data representing the occupation and personality (persona) represented by a specific role as a training dataset. Furthermore, when RAG is used, the data referenced can be limited to data representing the occupation and personality represented by the specific role, allowing the LLM to output according to the specified role. Adapter tuning is a technique for inputting input data into the LLM via a trained adapter model, thereby changing the output of the LLM depending on the type of adapter model. The adapter model is composed of a trained neural network, for example. The adapter model is trained using a training dataset consisting of, for example, input samples, which are questions to a person representing a specific role, and output samples, which are the person's expected answers. Specifically, the adapter model inputs an input sample into the adapter model, obtains output data, and inputs the output data into the LLM. Based on the difference between the data output from the LLM and the output sample, the adapter model's internal parameters are updated. By updating only the internal parameters of the adapter model without updating the internal parameters of the LLM, the adapter model can learn the characteristics of a specific role without changing the LLM. In this case, fine-tuning training datasets, RAG reference data, adapter models, etc. are examples of input data for the generative model. Furthermore, the generative model according to other embodiments is not limited to the LLM, but may be a machine learning model configured and trained using a GAN, a Transformer, or the like. Furthermore, the generative model is not limited to a machine learning model, as long as it receives input data and generates output data following the input data.
[0095] Furthermore, while the generation system 1 according to the above-described embodiment inputs prompts containing role information each time an agent is simulated in an LLM, some LLM services have interfaces that generate output data based on previously input information. However, such LLM services achieve the above functionality by inputting past prompts, past output data, and newly input prompts into the LLM itself. Therefore, even if the interface does not transmit role information to the LLM service each time, when agent simulation is continuously realized, it can be said that input data containing roles is input into the LLM itself. Furthermore, because the LLM itself has a limited capacity for input data, the generation system 1 determines the amount of past prompts and past output data to input into the LLM itself after ensuring at least the amount of data related to role information and newly input prompts.
[0096] The generation system 1 according to the above-described embodiment accepts input of an agenda from a user and simulates a discussion according to the agenda, but is not limited to this. For example, in the generation system 1 according to another embodiment, the agenda may be automatically generated by the decision-making unit 110 according to the third embodiment.
[0097] The generation system 1 according to the above-described embodiment selects roles to be used in the discussion simulation from among multiple roles based on a relevance score representing the relevance between the role and the viewpoint sentence. However, this is not limited to this. For example, the selection unit 105 according to another embodiment may calculate a relevance score representing the relevance between the topic and the role, and select a predetermined number of roles with high relevance scores as roles to be used in the discussion simulation. The selection unit 105 according to another embodiment may calculate a relevance score representing the relevance between the topic and the role, sort the roles in order of relevance score, and select roles to be used in the discussion simulation by sampling at equal intervals. In this case, the variability of the agent's position on the topic can be increased, and a highly diverse discussion can be expected. The generation system 1 according to another embodiment may use all roles in the discussion simulation without selecting roles to be used in the discussion simulation. The selection unit 105 according to another embodiment may receive, from a user, designation of roles to be removed from among multiple roles, and select roles not designated as targets for removal as roles to be used in the discussion simulation. When the selection of a role to be removed is accepted, multiple symbols representing roles other than the role to be removed are placed in the second area P2 of the screen. Furthermore, multiple comment sentences generated based on roles other than the role to be removed are placed in the third area P3. Furthermore, when a role is removed on the discussion summary screen G4, the discussion generation unit 107 generates new comment sentences based on the output data of the remaining roles, and the new comment sentences P31 are placed in the third area P3.
[0098] Although the generation system 1 according to the above-described embodiment uses the similarity of viewpoint sentences to group agents, this is not limiting. For example, the generation system 1 according to another embodiment may group agents based on the similarity of each role. That is, the grouping unit 106 may group agents so that agents with similar expertise or personalities belong to the same group. Furthermore, in order to increase the diversity of discussions, the grouping unit 106 may group agents so that agents that are dissimilar to each other belong to the same group. Furthermore, the generation system 1 according to another embodiment may group agents so that the diversity of viewpoint sentences is high. For example, the generation system 1 may group agents so that the diversity is high by clustering agents based on viewpoint sentences and then randomly selecting agents from each cluster to generate groups.
[0099] The generation system 1 according to the above embodiment may have a wrapper to conceal differences in the LLM architecture. By providing the wrapper as an interface, the generation system 1 does not affect the processing of the discussion generation unit 107 or the like even if the number of LLM types that the generation system 1 can use increases or decreases.
[0100] The generation system 1 according to the above-described embodiment simulates one-by-one talk, in which agents in a group take turns speaking. FIG. 21 illustrates an example of one-by-one talk according to at least one embodiment. That is, the discussion generation unit 107 of the generation system 1 according to the above-described embodiment causes the LLM to generate a statement sentence in a group to which roles R1, R2, R3, and R4 belong, using the following procedure. First, the discussion generation unit 107 outputs a prompt including information about role R1 to the LLM, thereby obtaining statement sentence C1. Next, the discussion generation unit 107 outputs a prompt including information about role R2 and statement sentence C1 to the LLM, thereby obtaining statement sentence C2. Next, the discussion generation unit 107 outputs a prompt including information about role R3 and statement sentences C1 and C2 to the LLM, thereby obtaining statement sentence C3. Next, the discussion generation unit 107 outputs a prompt including information about role R4 and comment sentences C1, C2, and C3 to the LLM, and acquires comment sentence C4.
[0101] On the other hand, in other embodiments, discussions may be simulated using methods other than one-by-one talk. For example, the generation system 1 according to other embodiments may simulate simultaneous talk. FIG. 22 is a diagram illustrating an example of simultaneous talk according to at least one embodiment. The discussion generation unit 107 outputs a prompt including information about role R1 to the LLM and obtains statement sentence C11. The discussion generation unit 107 outputs a prompt including information about role R2 to the LLM and obtains statement sentence C12. The discussion generation unit 107 outputs a prompt including information about role R3 to the LLM and obtains statement sentence C13. The discussion generation unit 107 outputs a prompt including information about role R4 to the LLM and obtains statement sentence C14. Once statement sentences C11-C14 corresponding to all roles R1-R4 have been obtained, the discussion generation unit 107 outputs a prompt including information about role R1 and statement sentences C11-C14 to the LLM and obtains statement sentence C21. The discussion generation unit 107 outputs a prompt including information about role R2 and statement sentences C11-C14 to the LLM, and obtains statement sentence C22. The discussion generation unit 107 outputs a prompt including information about role R3 and statement sentences C11-C14 to the LLM, and obtains statement sentence C23. The discussion generation unit 107 outputs a prompt including information about role R4 and statement sentences C11-C14 to the LLM, and obtains statement sentence C24. Once statement sentences C21-C24 corresponding to all roles R1-R4 have been obtained, the discussion generation unit 107 outputs a prompt including information about role R1 and statement sentences C11-C14 and statement sentences C21-C24 to the LLM, and obtains statement sentence C31. The discussion generation unit 107 outputs a prompt including information about role R2 and statement sentences C11-C14 and statement sentences C21-C24 to the LLM, and obtains statement sentence C32. The discussion generation unit 107 outputs a prompt including information about role R3 and comment sentences C11-C14 and C21-C24 to the LLM, and obtains comment sentence C33. The discussion generation unit 107 outputs a prompt including information about role R4 and comment sentences C11-C14 and C21-C24 to the LLM, and obtains comment sentence C34.In this way, the generation system 1 according to another embodiment may simultaneously create the statement sentences of multiple roles, rather than selecting roles in order and generating statement sentences in order.
[0102] Furthermore, the generation system 1 according to another embodiment may include self-reflection when creating a statement sentence by an agent. FIG. 23 is a diagram illustrating an example of self-reflection according to at least one embodiment. First, the discussion generation unit 107 outputs a prompt including information about role R1 to the LLM, thereby obtaining a statement sentence C11. The discussion generation unit 107 outputs a prompt including information about role R2 to the LLM, thereby obtaining a statement sentence C12. The discussion generation unit 107 outputs a prompt including information about role R3 to the LLM, thereby obtaining a statement sentence C13. The discussion generation unit 107 outputs a prompt including information about role R4 to the LLM, thereby obtaining a statement sentence C14. Next, the discussion generation unit 107 outputs a prompt including information about role R1 and statement sentence C11 to the LLM, thereby obtaining a statement sentence C21. The discussion generation unit 107 outputs a prompt including information about role R2 and statement sentence C12 to the LLM, thereby obtaining a statement sentence C22. The discussion generation unit 107 outputs a prompt including information about role R3 and statement sentence C13 to the LLM, and obtains statement sentence C23. The discussion generation unit 107 outputs a prompt including information about role R4 and statement sentence C14 to the LLM, and obtains statement sentence C24. Next, the discussion generation unit 107 outputs a prompt including information about role R1 and statement sentence C11 and statement sentence C21 to the LLM, and obtains statement sentence C31. The discussion generation unit 107 outputs a prompt including information about role R2 and statement sentence C12 and statement sentence C22 to the LLM, and obtains statement sentence C32. The discussion generation unit 107 outputs a prompt including information about role R3 and statement sentence C13 and statement sentence C23 to the LLM, and obtains statement sentence C33. The discussion generation unit 107 outputs a prompt including information about role R4 and statement sentences C14 and C24 to the LLM, and obtains statement sentence C34. In this way, in self-reflection, the discussion generation unit 107 creates the next statement sentence for each of multiple roles using a prompt that includes a statement sentence related to that role and does not include a statement sentence related to other roles. In this way, the discussion generation unit 107 can simulate agent A asking itself questions and answering them, and refine the statement sentences.
[0103] 24 is a schematic block diagram showing the configuration of a computer according to at least one embodiment. The computer 90 includes a processor 91, a memory 92, a storage 93, and an interface 94. The generation system 1 described above is implemented in the computer 90. The operations of the above-described processing units are stored in the storage 93 in the form of a program. The processor 91 reads the program from the storage 93, loads it into the memory 92, and executes the above-described processing in accordance with the program. The processor 91 also allocates storage areas in the memory 92 corresponding to the above-described storage units in accordance with the program. Examples of the processor 91 include a CPU (Central Processing Unit), a GPU (Graphic Processing Unit), and a microprocessor.
[0104] The program may be for implementing some of the functions to be performed by the computer 90. For example, the program may be implemented in combination with other programs already stored in storage or in combination with other programs implemented in other devices. In another embodiment, the computer 90 may include a custom large-scale integrated circuit (LSI) such as a programmable logic device (PLD) in addition to or instead of the above configuration. Examples of PLDs include programmable array logic (PAL), generic array logic (GAL), complex programmable logic device (CPLD), and field programmable gate array (FPGA). 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 an example of a processor. In another embodiment, the computer 90 may be virtualized on one or more computers.
[0105] Examples of storage 93 include a magnetic disk, a magneto-optical disk, an optical disk, and a semiconductor memory. Storage 93 may be an internal medium directly connected to the bus of computer 90, or an external medium connected to computer 90 via interface 94 or a communication line. Furthermore, when this program is distributed to computer 90 via a communication line, computer 90 that receives the program may load the program into memory 92 and execute the above-described processing. In at least one embodiment, storage 93 is a non-transitory tangible storage medium.
[0106] The program may also be a program for realizing some of the above-described functions. Furthermore, the program may be a so-called differential file (differential program) that realizes the above-described functions in combination with another program already stored in storage 93.
[0107] According to the above aspect, the generation system can generate data effectively.
[0108] DESCRIPTION OF SYMBOLS 1...Generation system 101...Input section 102...Agenda decision section 103...Role memory section 104...Perspective acquisition section 105...Selection section 106...Grouping section 107...Discussion generation section 108...Extraction section 109...Output section 110...Decision-making section 111...Collaboration instruction reception section 112...Rewriting section 2...Terminal device 3...External server 90...Computer 91...Processor 92...Memory 93...Storage 94...Interface G1...Agenda input screen G2...Discussion preparation screen G3...Discussion progress screen G4...Discussion summary screen P1...First area P11...Input form P12...Agenda label P2...Second area P21...Symbol P22...Balloon P23...Group frame P24...Speech bubble P25...Relation line P3...Third area P31...Statement text P32...Symbol P33…Summary status display P4…Fourth area P41…Opinion text
Claims
1. A generation system comprising: a perspective acquisition unit that, for each of a plurality of roles to be given to a generation model that receives input data and generates output data following the input data, inputs second input data including the role's setting information and an agenda into the generation model to obtain second output data; a grouping unit that divides the plurality of roles into a plurality of groups based on the second output data for each role; and a discussion generation unit that inputs first input data including the setting information and agenda-related data related to the agenda into the generation model to obtain first output data, wherein the agenda-related data included in the first input data includes the first output data generated based on other roles that belong to the same group as the role related to the setting information.
2. The generation system according to claim 1, wherein the grouping unit divides the plurality of roles into a plurality of groups based on setting information of each role or the second output data.
3. The generation system of claim 1, further comprising a collaboration instruction receiving unit that receives an instruction to combine two or more groups from among the plurality of groups, and the agenda-related data included in the first input data includes the first output data generated based on other roles belonging to other groups that are combined with the group to which the role related to the setting information belongs.
4. The generation system according to claim 1, further comprising: an extraction unit that extracts, for each group, one or more opinions on the agenda from the first output data related to the roles belonging to that group.
5. A generation system comprising: a discussion generation unit that inputs first input data, including setting information relating to one of a plurality of roles to be given to a generation model that receives input data and generates output data following the input data, and agenda-related data relating to the agenda, into the generation model to obtain first output data; and an extraction unit that extracts one or more opinions on the agenda from the first output data relating to the plurality of roles, wherein the agenda-related data included in the first input data includes the first output data generated based on another role.
6. The generation system according to claim 4 or claim 5, wherein the extraction unit assigns a priority to the one or more opinions based on the first output data for each role.
7. The generation system according to claim 4 or claim 5, further comprising an agenda determination unit that determines one of the one or more extracted opinions as the agenda.
8. The generation system described in claim 7, wherein the agenda determination unit inputs third input data including the extracted one or more opinions and instructions to select at least one of the one or more opinions by simulating the user's values into the generation model to obtain third output data, and determines one of the one or more opinions as the agenda based on the third output data.
9. The generation system according to claim 1, further comprising a selection unit that selects some of the plurality of roles based on the second output data for each of the roles, and the grouping unit divides the some of the roles into the plurality of groups based on the second output data related to the selected some of the roles.
10. A generation system comprising: a perspective acquisition unit that, for each of a plurality of roles to be given to a generation model that receives input data and generates output data following the input data, inputs second input data including the role's setting information and an agenda into the generation model to obtain second output data; a selection unit that selects a portion of the plurality of roles based on the second output data for each role; and a discussion generation unit that inputs first input data including setting information for one of the selected portions of roles and agenda-related data related to the agenda into the generation model to obtain first output data, wherein the agenda-related data included in the first input data includes the first output data generated based on a role other than the portion of the roles.
11. A generation system as described in claim 9 or claim 10, wherein the second input data includes instructions for evaluating the degree of relevance between the topic and the role, and the selection unit selects the portion of the roles based on the degree of relevance included in the second output data.
12. A generation system as described in claim 1, further comprising a rewriting unit that rewrites part of the agenda-related data, and wherein the discussion generation unit inputs the first input data including the rewritten agenda-related data into the generation model to obtain the first output data.
13. A generation system comprising: a discussion generation unit that inputs first input data containing setting information relating to one of a plurality of roles to be given to a generation model that receives input data and generates output data following the input data, and agenda-related data relating to an agenda, into the generation model to obtain first output data; and a rewriting unit that rewrites part of the agenda-related data, wherein the agenda-related data included in the first input data includes the first output data generated based on another role, and the discussion generation unit inputs the first input data containing the rewritten agenda-related data into the generation model to obtain the first output data.
14. The generation system described in claim 1, wherein the discussion generation unit inputs the first input data into a plurality of generation models including the generation model to obtain the first output data, and the first output data relating to a first role that is one of the plurality of roles and the first output data relating to a second role that is one of the plurality of roles are output from different generation models.
15. A data generation method comprising the steps of: for each of a plurality of roles to be given to a generative model that receives input data and generates output data following the input data, inputting second input data including the role's setting information and an agenda into the generative model to obtain second output data; dividing the plurality of roles into a plurality of groups based on the second output data for each role; and inputting first input data including the setting information and agenda-related data regarding the agenda into the generative model to obtain first output data, wherein the agenda-related data included in the first input data includes the first output data generated based on other roles that belong to the same group as the role related to the setting information.
16. A program that causes a computer to execute the following steps: for each of a plurality of roles to be given to a generative model that receives input data and generates output data following the input data, inputting second input data including the setting information and agenda of the role into the generative model to obtain second output data; dividing the plurality of roles into a plurality of groups based on the second output data for each role; and inputting first input data including the setting information and agenda-related data related to the agenda into the generative model to obtain first output data, wherein the agenda-related data included in the first input data includes the first output data generated based on other roles that belong to the same group as the role related to the setting information.