Information processing device, information processing method, and information processing program
The information processing device addresses the issue of inappropriate answers by creating a context graph from user interests and thinking patterns to provide relevant responses.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- FUJITSU LTD
- Filing Date
- 2024-11-26
- Publication Date
- 2026-06-04
AI Technical Summary
Conventional interactive agents struggle to generate appropriate answers to questions due to the inclusion of both familiar and unfamiliar posts, leading to unhelpful responses for users.
An information processing device that extracts user topics of interest and thinking tendencies, generates a context graph summarizing posts based on these tendencies, and uses the graph to provide targeted answers to user questions.
Generates appropriate answers by filtering relevant information from user posts, enhancing the relevance and usefulness of responses.
Smart Images

Figure JP2024041883_04062026_PF_FP_ABST
Abstract
Description
Information processing device, information processing method, and information processing program
[0001] This invention relates to an information processing device, etc.
[0002] In online group chats on social networking services (SNS), the barriers to sharing information and asking questions can be high, sometimes limiting the number of users who share information to only a select few.
[0003] For example, one conventional technology that aims to resolve user questions and encourage users to share information involves assigning an agent to each user, providing an environment where the agent answers the user's questions.
[0004] Figure 24 is a diagram illustrating a hypothetical case. User u x The user accesses SNS10 using a browser, client application, etc. x This user makes various statements (group communication, ideas, and opinions) to the Group Channel 11 and Timeline / Private Channel 12 on the SNS 10.
[0005] This section explains a scenario where you ask an agent questions about the progress of group work involving multiple users. For example, user u x The agent for this purpose is a user who has posted past posts across multiple Timelines / Private Channels 12. x Based on past posts, user u x I had a conversation with them.
[0006] Using Figure 25, we will explain a conventional interactive agent using a typical RAG (Retrieval Augmented Generation). Figure 25 is a diagram illustrating a conventional interactive agent using RAG. The conventional interactive agent 20 has a past post DB 21, a reception unit 22, a regeneration unit 23, a search unit 24, a response generation unit 25, and a transmission unit 26.
[0007] The Past Posts DB21 is a database that stores past posts (conversation history) made by the user who asked the question, or by other users.
[0008] The reception unit 22 receives the question text 5a from the user. The reception unit 22 outputs the received question text 5a to the regeneration unit 23.
[0009] The regeneration unit 23 regenerates the question sentence 5a using the user's conversation history and LLM (Large Language Models) stored in the past posting DB 21. For example, the regeneration unit 23 regenerates the question sentence 5a by converting nouns contained in the question sentence 5a into proper nouns. The regeneration unit 23 outputs the regenerated question sentence 5a (hereinafter simply referred to as question sentence 5a) to the search unit 24.
[0010] The search unit 24 calculates the similarity between the question text 5a and past SNS posts stored in the past posts DB 21, and searches for multiple past posts whose similarity is above a threshold. The search unit 24 outputs the search results as a similar posts list to the answer generation unit 25.
[0011] The response generation unit 25 generates a prompt based on the recent conversation history between the interactive agent 20 and the user, and a list of similar posts. By inputting the generated prompt into the LLM, it generates a plausible answer to the question 5a. The response generation unit 25 outputs the generated answer to the transmission unit 26.
[0012] Figure 26 shows an example of a prompt generated by the response generation unit of a conventional interactive agent. Area 6a of the prompt 6 shown in Figure 26 contains instructions for the LLM. Area 6b contains the search results from the search unit 24. Area 6c contains the posting history of the most recent conversation between the interactive agent 20 and the user. "You" in area 6c refers to the agent.
[0013] The transmission unit 26 notifies the user of the response generated by the response generation unit 25 as the Agent response 5b.
[0014] Japanese Patent Publication No. 2022-183122, Japanese Patent Publication No. 2008-512789, U.S. Patent Application Publication No. 2017 / 0169101, U.S. Patent Application Publication No. 2015 / 0178267
[0015] However, the conventional technology described above has the problem of not being able to generate appropriate answers to questions.
[0016] For example, the search results obtained by the conventional interactive Agent 20 from the past posts DB 21 include a mix of posts the user who asked the question is familiar with and posts they are not familiar with. In many cases, posts the user is familiar with do not contain information the user is newly interested in. As explained in Figure 26, the search results from the search unit 24 (a mix of posts the user is familiar with and posts they are not familiar with) are set in the area 6b of the Prompt 6, so the LLM's answer is often not useful to the user.
[0017] In one aspect, the present invention aims to provide an information processing device, an information processing method, and an information processing program that can generate appropriate answers to questions.
[0018] In the first proposal, the information processing device extracts multiple topics of interest to the first user and the first user's thinking tendencies based on the content posted by the first user in a community on the network. The information processing device extracts topics from the content posted by the first user and multiple second users in the community and generates a context graph containing multiple posts related to the same topic. The information processing device updates the context graph by summarizing the multiple posts included in the context graph based on thinking tendencies. When the information processing device receives a question from the first user, it generates an answer to the question based on the context graph corresponding to the topic of the question.
[0019] It can generate appropriate answers to questions.
[0020] Figure 1 is a diagram illustrating other conventional interactive agents. Figure 2 is a diagram illustrating an example of a Prompt generated by the answer generation unit of other conventional interactive agents. Figure 3 is a diagram illustrating the system according to this embodiment. Figure 4 is a functional block diagram showing the configuration of the information processing device according to this embodiment. Figure 5 is a diagram illustrating an example of the data structure of past posted data. Figure 6 is a diagram illustrating an example of a Prompt for extracting a topic. Figure 7 is a diagram illustrating an example of a Prompt for extracting the user's thinking tendencies. Figure 8 is a diagram illustrating an example of a Prompt for identifying the topic of the posted content. Figure 9 is a diagram illustrating an example of the data structure of context data. Figure 10 is a diagram (1) illustrating the processing of the summarization unit. Figure 11 is a diagram (2) illustrating the processing of the summarization unit. Figure 12 is a diagram illustrating an example of a Prompt for summarization. Figure 13 is a diagram illustrating an example of a summary of posted content. Figure 14 is a diagram illustrating an example of a context graph after updating. Figure 15 is a diagram illustrating an example of a question before and after regeneration. Figure 16 is a diagram illustrating the search processing of the answer unit. Figure 17 is a diagram illustrating an example of posted content and summary content included in the search range. Figure 18 is a diagram illustrating an example of the search process performed by the answer unit. Figure 19 is a diagram illustrating an example of a Prompt for generating an answer. Figure 20 is a diagram illustrating an example of an answer generated in the LLM. Figure 21 is a flowchart illustrating the processing procedure for the summarization process. Figure 22 is a flowchart illustrating the processing procedure for the answer generation process. Figure 23 is a diagram illustrating an example of a computer hardware configuration that realizes similar functions to the information processing device in the embodiment. Figure 24 is a diagram illustrating an assumed case. Figure 25 is a diagram illustrating a conventional interactive agent using RAG. Figure 26 is a diagram illustrating an example of a Prompt generated by the answer generation unit of a conventional interactive agent.
[0021] The following describes in detail, with reference to the drawings, embodiments of the information processing apparatus, information processing method, and information processing program disclosed in this application. However, this invention is not limited by these embodiments.
[0022] Before describing the examples, a supplementary explanation of the prior art will be provided. Figure 1 is a diagram illustrating other conventional interactive agents. In addition to the processing of the interactive agent 20 described in Figure 25, these other conventional interactive agents add and use the past posts of the user who asked the question (the questioner) as "prerequisite knowledge known by the questioner."
[0023] In Figure 1, other interactive agents are described as interactive agent 30. Interactive agent 30 includes a past posting database 31, a reception unit 32, a regeneration unit 33, a search unit 34, a response generation unit 35, and a transmission unit 36.
[0024] The explanations regarding the past posts DB 31, reception unit 32, regeneration unit 33, and transmission unit 36 are the same as those for the past posts DB 21, reception unit 22, regeneration unit 23, and transmission unit 26 explained in Figure 25. Note that the content of question 5a should be "How was the situation at the regular XX meeting?"
[0025] The search unit 34 calculates the similarity between the question text 5a and past SNS posts stored in the past posts DB 31, and searches for the top K posts with the highest similarity among multiple past posts whose similarity is above a threshold. The search results from the search unit 34 include a list of past posts by the user who asked the question (first similar posts list) and a list of past posts by other users (second similar posts list). The search unit 34 outputs the first similar posts list and the second similar posts list to the answer generation unit 35. The posts in the first similar posts list are "prerequisite knowledge that the questioner already knows."
[0026] The response generation unit 35 generates a prompt based on the recent conversation history between the interactive agent 30 and the user, the first similar post list, and the second similar post list. By inputting the generated prompt into the LLM, it generates a plausible response to the question 5a. The response generation unit 35 outputs the generated response to the transmission unit 36.
[0027] Figure 2 shows an example of a prompt generated by the response generation unit of other conventional interactive agents. Area 7a of Prompt 7 shown in Figure 2 contains instructions for the LLM. Area 7b contains posts from the first similar post list. For example, the posts from the first similar post list are posts 7b1 and 7b2 below. Post 7b1: I want to get the demo development ready for the XX regular meeting. Post 7b2: At the XX regular meeting, I will report on the demo event on 5 / 14.
[0028] Area 7c contains posts from the Second Similar Posts List. For example, the posts in the Second Similar Posts List are posts 7c1 and 7c2 below. Post 7c1: Please reserve a spot for the regular XX meeting. Post 7c2: I would like to confirm the LLM trends at the regular XX meeting.
[0029] Area 7d contains the posting history of the most recent conversation between the interactive Agent 30 and the user. "You" in area 7d refers to the Agent. For example, area 7d includes the question the questioner asked immediately before, "How was the regular meeting of XX?"
[0030] For example, the interactive agent 30 described above has the following problems. The top K posts with high similarity, retrieved by the search unit 34 of the interactive agent 30, do not necessarily provide the information the questioner wants to know at an appropriate level of detail. Furthermore, the search results of the search unit 34 include only posts similar to the keywords in the question, making it difficult to track the background and changes related to those keywords. For example, if the content of question 5a is "How was the regular meeting of XX?", posts 7b1, 7b2, 7c1, and 7c2 contain the keyword "regular meeting of XX", but they do not contain any information about the background or changes related to this keyword. Therefore, even if Prompt 7 is created using the search results of the search unit 34, it is difficult for LLM to generate an appropriate answer to the question.
[0031] The above provides supplementary information on the conventional technology.
[0032] Next, an example of the system according to this embodiment will be described. FIG. 3 is a diagram showing the system according to this embodiment. As shown in FIG. 3, this system includes an SNS server 50, and information processing apparatuses 100x, 100y, and 100z. The SNS server 50 and the information processing apparatuses 100x to 100z are interconnected by a network N.
[0033] The SNS server 50 provides services related to Timelines posted by users and Group Channels posted by multiple users. The SNS server 50 notifies the information processing apparatuses 100x to 100z of the content of user posts on Timelines and the content of posts by multiple users on Group Channels.
[0034] The information processing apparatus 100x is a PC (Personal Computer), tablet terminal, smartphone, etc. used by the user u x The user u x accesses the SNS server 50 using a browser, client application, etc. set in the information processing apparatus 100x, and posts his or her opinions, etc. on Timelines and Group Channels.
[0035] The information processing apparatus 100x has an Agent function for the user u x For example, the information processing apparatus 100x (Agent) and the user u x exchange questions and answers in a Private Channel.
[0036] The information processing apparatus 100y is a PC, tablet terminal, smartphone, etc. used by the user u y The information processing apparatus 100z is a PC, tablet terminal, smartphone, etc. used by the user u z The description of the information processing apparatuses 100y and 100z is the same as the description of the information processing apparatus 100x, except that the target is replaced with the users u y , u z In the system of FIG. 3, the information processing apparatuses 100x to 100z are shown, but other information processing apparatuses used by other users may be included.
[0037] In the following explanation, information processing devices 100a to 100z and other information processing devices will be collectively referred to as "information processing device 100" as appropriate. User u x u y u z We will refer to them collectively simply as "users."
[0038] The processing content of the information processing device 100 will be explained in more detail. For example, the information processing device 100 extracts topics of interest and thinking tendencies of users based on the content posted by users on social networking services (SNS). The information processing device 100 generates a context graph that associates user posts on the same topic, summarizes the user posts in the context graph based on the user's thinking tendencies, and uses the summarized context graph to generate answers corresponding to the user's questions.
[0039] An example of the configuration of the information processing device 100 will be described. Figure 4 is a functional block diagram showing the configuration of the information processing device according to this embodiment. As shown in Figure 4, the information processing device 100 has a communication unit 110, an input unit 120, a display unit 130, a timer 135, a storage unit 140, and a control unit 150. For example, the information processing device 100 is used by a user u x Let the information processing device 100a be used by user u. x This corresponds to "First User". User u y u z This corresponds to the "second user".
[0040] The communication unit 110 performs data communication with the SNS server 50, information processing devices 100b, 100c, etc., via the network N. The communication unit 110 is implemented using a NIC (Network Interface Card) or the like.
[0041] The input unit 120 is an input device that inputs various types of information into the information processing device 100. The input unit 120 is compatible with keyboards, mice, touch panels, etc. Users operate the input unit 120 to post to SNS (Timelime, Group Channel, etc.) and input questions to the Agent. For example, questions to the Agent are entered into the Private Channel.
[0042] The display unit 130 is a display device that displays information output from the control unit 150. The display unit 130 is compatible with liquid crystal displays, organic EL (Electro Luminescence) displays, touch panels, etc.
[0043] Timer 135 is a timer that inputs time-related time information to the control unit 150.
[0044] The storage unit 140 contains past posting data 141, context graph data 142, and profile data 143. The storage unit 140 is a memory or the like.
[0045] Past posting data 141 contains content that the user has posted in the past. For example, past posting data 141 contains "User u x "Content previously posted to Timelime by user u" x u y u z "Content previously posted to Group Channel by user u" x This includes "the content exchanged between the information processing device 100 (100a) and the Private Channel."
[0046] Figure 5 shows an example of the data structure of past posting data. As shown in Figure 5, the past posting data 141 includes table 141a and table 141b.
[0047] Table 141a is "User u x "Content previously posted to Timelime by user u" x u y u zTable 141a holds the content that the user has previously posted to the Group Channel. Table 141a contains the post ID, user ID, type, and post content. The post ID is an ID that uniquely identifies the user's post. The user ID is information that uniquely identifies the user. x Let the user ID be "user_x". y Let's assume the user ID is "user_y". z The user ID is "user_z". The type indicates whether the post is for Timelime or a Group Channel. The post content is the content of the post (text). In this embodiment, it is assumed that each information processing device 100x to 100z holds past post data 141, and that the same post ID is assigned to the same post.
[0048] Table 141b is "User u x The information processing device 100 (100a) and the information processing device 100 (100a) exchange information via Private Channel. For example, "User" is "User u x Therefore, "you" is the information processing device 100x (Agent). Table 141b is "User" and User u x The question text entered is associated with and stored. Table 141b stores "you" and the answer to the question text in association.
[0049] Although not shown in the diagrams in Tables 141a and 141b, each record is assumed to have a timestamp and is arranged chronologically.
[0050] Context graph data 142 is graph information that associates user posts on the same topic. Context graph data 142 includes a context graph for each topic. The data structure of context graph data 142 will be explained later.
[0051] Profile data 143 is for user u x It retains information about topics and thought patterns that can be identified from the content posted by the user over a certain period of time.
[0052] The control unit 150 includes a client application processing unit 151, a profile extraction unit 152, a generation unit 153, a summarization unit 154, and a response unit 155. The control unit 150 is, for example, a CPU (Central Processing Unit).
[0053] The client application processing unit 151 is a processing unit that works in conjunction with the SNS server 50 to provide services related to Timelime, which is posted by users, and Group Channel, which is posted by multiple users.
[0054] For example, the client application processing unit 151 processes the user u x Each time a user makes a new post to Timelime, the contents of that post (post ID, user ID, type, post content) are registered in table 141a of the past post data 141. The client application processing unit 151 processes user u x u y u z Whenever any of the users posts to the Group Channel, the content of that post (post ID, user ID, type, post content) is registered in table 141a of the past post data 141. The client application processing unit 151 registers the content of posts (questions, answers) exchanged in the Private Channel in table 141b of the past post data 141.
[0055] The profile extraction unit 152 performs processes to extract topics and the user's thinking tendencies at regular intervals, and updates the profile data 143. For example, the regular interval is 1-2 weeks, but can be changed as needed.
[0056] The process of extracting topics performed by the profile extraction unit 152 will be described below. The profile extraction unit 152 extracts topics from past posting data 141 (table 141a) for users within a certain period of time. x The content of the post is retrieved, and the Prompt 60 shown in Figure 6 is generated.
[0057] Figure 6 shows an example of a prompt for extracting topics. As shown in Figure 6, area 60a of the prompt 60 contains instructions for the LLM. Area 60b contains user u within a certain period, which the profile extraction unit 152 obtained from table 141a. x The content of the post is set. Area 60c is instructed to extract five keywords related to the topic from LLM.
[0058] Prompt60 is a service for users within a certain period of time. x Based on the content of the post, user u x This system extracts five topics of interest. When posts on social media include not only content related to group work but also hobbies, the system extracts topics based on the purpose of the post (group work, hobby, etc.). The aim is to identify the scope of posts that touch on the same topic and summarize them into a single document, so that the summary and conversation can be used as background information when a particular post is searched.
[0059] The profile extraction unit 152 inputs the Prompt 60 into the LLM to find the most recently discussed topic a (∈A) ux The profile extraction unit 152 extracts the topic a. The profile extraction unit 152 updates the topic in the profile data 143 with the extracted topic a.
[0060] The process performed by the profile extraction unit 152 to extract the user's thinking tendencies will be described below. The profile extraction unit 152 extracts the user's thinking tendencies from past posting data 141 (table 141a) over a certain period of time. x The content of the post is retrieved, and the Prompt 61 shown in Figure 7 is generated.
[0061] Figure 7 shows an example of a prompt for extracting the user's thinking tendencies. As shown in Figure 7, area 61a of the prompt 61 contains instructions for the LLM. Area 61b contains information that defines the thinking tendency patterns. For example, the thinking tendency patterns are conclusion-oriented (conclusion summary), process-oriented (process enumeration), and overview-oriented (process summary). Area 61c contains the user u over a certain period of time, which the profile extraction unit 152 obtained from table 141a.x The content of the post is set. In area 61d, LLM is instructed to extract the user's thinking tendencies.
[0062] Prompt 61 prompts users within a certain period of time x Based on the content of the post, user u x This extracts the thinking tendency d (∈D). For example, since the content and scope of attention change for each thinking tendency, Prompt 61 explicitly instructs the LLM on the characteristics of which parts of the post are being focused on, and has it classify the thinking tendencies according to those characteristics.
[0063] The profile extraction unit 152 inputs Prompt 61 to the LLM, allowing the user u x The thinking tendency d (∈D) is extracted. The profile extraction unit 152 updates the thinking tendency of the profile data 143 with the extracted thinking tendency d.
[0064] The generation unit 153 generates context graph data 142. For example, the generation unit 153 performs pre-processing and specific processing.
[0065] The preprocessing performed by the generation unit 153 will now be described. The generation unit 153 processes the five topics (A) registered in the profile data 143. ux The system retrieves the topic(s) and generates a root node corresponding to each topic. If there are five topics, five root nodes will be generated.
[0066] The specific processing performed by the generation unit 153 will now be described. The generation unit 153 monitors the table 141a of past post data 141, which is updated by the client application processing unit 151, obtains newly registered post content, and identifies the topic of the obtained post content. For example, the generation unit 153 generates the Prompt 62 shown in Figure 8 and inputs it into the LLM, thereby identifying the five topics (A) registered in the profile data 143. ux ) Identify the topic of the post.
[0067] Figure 8 shows an example of a prompt for identifying the topic of the post. As shown in Figure 8, area 62a of the prompt 62 contains instructions for the LLM. Area 62b is set with the newly registered post content. Area 62c contains the five topics (A) registered in the profile data 143. ux ) is set. Region 62d instructs the LLM to extract the relevant topic.
[0068] The generation unit 153 connects the node containing the posted content to the root node corresponding to the identified topic. The generation unit 153 repeatedly performs the above process each time new posted content is registered, thereby generating a context graph for each topic. The generation unit 153 registers the generated context graph for each topic as context graph data 142 in the storage unit 140.
[0069] Figure 9 shows an example of the data structure of context data. For example, five topics (A ux If ) are a1, a2, a3, a4, a5, then the information processing device 100a (user u x ) The context graph data 142 contains context graph G ux,a1 G ux,a2、 G ux,a3、 G ux,a4、 G ux,a5 It includes.
[0070] Context Graph G ux,a1 Next, multiple nodes are connected to the root node r1. In the example shown in Figure 9, nodes n1-1, n1-2, n1-3, n1-4, n1-5, n1-6, n1-7, n1-8, n1-9, and n1-10 are connected to the root node r1. Nodes n1-1 to n1-10 are nodes connected by the generation unit 153 and correspond to the content of posts. Nodes n1-1 to n1-10 are connected chronologically from left to right. Information about the content of posts corresponding to nodes n1-1 to n1-10 (post ID, user ID, type, post content) is linked to records in table 141a by pointers, etc.
[0071] Nodes n1-1, n1-2, n1-4, n1-6, n1-8, n1-9, n1-10 are users u x These are nodes of the content posted by user u. Nodes 1-3, n1-5, and n1-7 are from user u x Other users who posted in the Group Channel to which user u belongs (in this case, user u y This is a node of the post content of user u. Note that other users are users u x It could be a user who reacted (replied, liked, or stamped), or a user u x This could also include users involved in conversations or threads related to that topic.
[0072] Although not shown in Figure 9, other context graphs G ux,a2、 G ux,a3、 G ux,a4、 G ux,a5 Regarding context graph G, ux,a1 Similarly, multiple nodes are connected to the root node.
[0073] Returning to the explanation of Figure 4, the summarization unit 154 monitors the context graph data 142, and when a node containing new post content is added to the context graph, it summarizes the series of posts based on the user's thinking tendencies so that the sum of the number of characters in the post content of the nodes in the context graph does not exceed a threshold.
[0074] Figures 10 and 11 are diagrams illustrating the processing of the summary section. First, Figure 10 will be explained. Here, the context graph G ux,a1 This will be explained using the context graph G. ux,a1 Now, let's explain the case where a new node, n1-8, is connected to the root node r1, where nodes n1-1 to n1-7 are already connected.
[0075] The summarization unit 154 performs the following processing on nodes (or summarized nodes) that are "within one hop" of the root node r1. In the example shown in Figure 10, the nodes "within one hop" of the root node r1 are nodes n1-1 to n1-8.
[0076] Summary section 154 classifies nodes n1-1 to n1-8 into nodes corresponding to the Group Channel type and nodes corresponding to Timelime, based on the type of nodes n1-1 to n1-8. For example, nodes n1-3 to n1-8 are corresponding to the Group Channel type. Nodes n1-1 and n1-2 are corresponding to Timelime.
[0077] We will now move on to the explanation of Figure 11. The summarization unit 154 determines whether the sum of the number of characters in the posts of nodes n1-3 to n1-8 is equal to or greater than the threshold (1000 characters). For example, if the summarization unit 154 determines whether the sum of the number of characters in the posts of nodes n1-3 to n1-8 is equal to or greater than the threshold, it summarizes the posts of nodes n1-3 to n1-8 using the user u profile data 143. x Based on the thought pattern d, the LLM is made to summarize. The summarization unit 154 generates a new node n2-1 corresponding to the summarization result. The summarization unit 154 inputs the Prompt 63 shown in Figure 12 into the LLM and obtains the summarization result. The summarization unit 154 sets the summarization result (summarized text) into node n2-1.
[0078] Figure 12 shows an example of a prompt for summarizing. As shown in Figure 12, area 63a of Prompt 63 contains instructions for LLM. Area 63b contains the context graph G ux,a1 Topic a1 corresponding to this is set. The content of posts from nodes n1-3 to n1-8 is set in area 63c. User u of profile data 143 is set in area 63d. x A thinking tendency d is set. In area 63e, LLM is instructed to generate a summary result.
[0079] Figure 13 shows an example of summarizing post content. For example, the post content of each node to be summarized is the post content included in Group Channel 40. In Group Channel 40, "user_x:~" refers to user u x This is the content of a post made by user u. "user_y:~" is the content of a post made by user u x This is the content of the post made by [username].
[0080] When the content of each post included in Group Channel 40 is set to area 63c of Prompt 63 in Figure 12, and the user's thinking tendency "conclusion-oriented" is set to area 63c, the result of having LLM summarize it is the summary result 40a.
[0081] When the content of each post included in Group Channel 40 is set to area 63c of Prompt 63 in Figure 12, and the user's thinking tendency "emphasis on history" is set to area 63c, the result of having LLM summarize it is the summary result 40b.
[0082] The content of each post included in Group Channel 40 is set to area 63c of Prompt 63 in Figure 12, and the user's thinking tendency "summary-focused" is set to area 63c. The result of having LLM summarize it is the summary result 40c.
[0083] In Figure 11, the summarization unit 154 determines whether the sum of the number of characters in the posts of nodes n1-1 and n1-2 is equal to or greater than a threshold (1000 characters). For example, if the summarization unit 154 determines that the sum of the number of characters in the posts of nodes n1-1 to n1-2 is not equal to or greater than the threshold, it does not perform a summary and leaves nodes n1-1 to n1-2 in their original state.
[0084] The summary unit 154 uses the root node r1 as the parent node, node n2-1 as the child node, and nodes n1-3 to n1-8 as grandchild nodes to create the context graph G ux,a1 The context graph is updated. Figure 14 shows an example of the context graph after the update. In the example shown in Figure 14, nodes n1-1, n1-2, and n2-1 are connected to the root node r1. Nodes n1-1 and n1-2 remain connected to the root node r1.
[0085] The summarization unit 154 sets the number of summaries for nodes n1-1 to n1-8 and n2-1. The number of summaries for nodes n1-1 to n1-8 is set to "0". The number of summaries for node n2-1 is set to "1".
[0086] The summarization unit 154 repeatedly executes the above process whenever a node containing new post content is added to the context graph. As described above, the summarization unit 154 summarizes the post content from the oldest nodes for each Timelime and Group Channel (prioritizing the summarization of posts with older timestamps). The summarization unit 154 summarizes nodes that have been summarized the same number of times. As a result, newer posts are kept unsummarized as time passes, while older summaries are compiled based on the user's thought patterns.
[0087] Returning to the explanation of Figure 4, the answer section 155 is for user u. x When a question is posted to a Private Channel, the system generates an answer to that question. For example, the answer unit 155 sequentially executes a regeneration process, a specific process, a search range determination process, a search process, and an answer generation process.
[0088] An example of the regeneration process executed by the response unit 155 will be described. For example, the response unit 155 monitors the table 141b of past posting data 141 and user u x The last question posted by p ux,q The answer section 155 is for user u. x Based on past posts and coreference analysis, etc., the question text p ux,q Replace pronouns and common nouns with specific information and proper nouns to form the question. ux,q Regenerate it.
[0089] The response section 155 is for user u included in the context graph data 142. x The content of the corresponding node's post, or the summarized content of the summarized node, and the question text p ux,q The cosine similarity with the text is calculated. In this case, the response unit 155 calculates the similarity using the first hop node of the context graph.
[0090] Answer section 155 consists of the posted content and summary content whose cosine similarity is above the threshold, and the question text p ux,q We perform coreference analysis on the pronouns and common nouns of the question sentence p ux,qSpecify specific information for pronouns and common nouns. The answering unit 155 uses the specific information, proper nouns, to supplement the pronouns and common nouns in the question sentence p ux,q and regenerates the question sentence p´ ux,q .
[0091] Fig. 15 is a diagram showing an example of the question sentence before and after regeneration. For example, the question sentence p ux,q is "I want to know the opinions of the members about the advantages and disadvantages of decentralized SNS." Such a question sentence contains the common noun "decentralized SNS". The answering unit 155 executes anaphora analysis to identify that the specific information corresponding to "decentralized SNS" is "ServiceX", and regenerates the question sentence p´ ux,q . The question sentence p´ ux,q is "I want to know the opinions of the members about the advantages and disadvantages of decentralized SNS such as ServiceX."
[0092] Next, an example of the identification process executed by the answering unit 155 will be described. The answering unit 155 identifies the topic of the question sentence p´ ux,q by such an identification process. For example, the answering unit 155 generates a Prompt similar to Prompt62 described in Fig. 8 and inputs it to the LLM to identify the topic of the question sentence p´ ux among the five topics (A ux,q ) registered in the profile data 143. Note that the answering unit 155 may set the question sentence p´ ux,q as the information to be set in the area 62b.
[0093] Next, an example of the search range determination process executed by the answering unit 155 will be described. The answering unit 155 acquires a context graph corresponding to the topic identified by the identification process from the context graph data 142. The answering unit 155 sets the nodes included in the range of 1 hop from the root node among the nodes included in the context graph as the search target.
[0094] Fig. 16 is a diagram for explaining the search process of the answering unit. The context graph G shown in Fig. 16 ux,aThis includes the root node r1, and nodes n1-1, n1-2, n1-3, n1-4, n1-5, n1-6, n1-7, n1-8, n1-9, n1-10, n1-11, n1-12, n1-13, and n1-14. Also, context graph G ux,a This includes nodes n2-1, n2-2, and n3-1. Note that this is the context graph G. ux,a This includes other nodes, but their illustration is omitted.
[0095] Nodes n3-1, n2-2, n1-13, and n1-14 are connected to the root node r1. Node n3-1 is connected to node n2-1 and the other nodes. Nodes n1-1 through n1-6 are connected to node n2-1. Nodes n1-7 through n1-14 are connected to node n2-2.
[0096] The summary content of node n2-1 is a summary of the posts from nodes n1-1 to n1-6. The summary content of node n2-2 is a summary of the posts from nodes n1-7 to n1-12. The summary content of node n3-1 is a summary of the summary content of node n2-1 and the posts from the other nodes.
[0097] Of nodes n1-1 to n1-14, nodes n1-2, n1-4, n1-6, n1-8, n1-10, n1-12 to n1-14 are user u x This node corresponds to the content posted by user u x This is the prerequisite knowledge that they are aware of.
[0098] On the other hand, among nodes n1-1 to n1-14, nodes n1-1, n1-3, n1-5, n1-7, n1-9, n1-11, and n1-11 are users u y This node corresponds to the content of the post and serves as a clue for the answer.
[0099] Answer section 155 is context graph G ux,a Among the nodes included, nodes n3-1, n2-2, n1-13, and n1-14, which are within a one-hop range from the root node r1, are determined to be the search target.
[0100] Figure 17 shows an example of post content and summary content included in the search scope. For example, each post content p1-1, p1-3 is from user u x This is what user u posted on their own Timeline. The content of each post (p1-2) is as follows: x and user u y However, this is the content posted to the Group Channel. Summary p2-1 is a summary of each post p1-1, by user u x This is a summary based on the user's thinking tendencies. The summary on page 2-2 is a summary of each post on page 1-2, based on user u x This is a summary based on the thinking patterns described.
[0101] For example, among the nodes included in the context graph, the post content (summary content) corresponding to the node within a one-hop range from the root node will be designated as post content p1-3, summary content p2-1, and summary content p2-2. In this case, the post content and summary content included in the post search range by the answer unit 155 will be post content p1-3, summary content p2-1, and summary content p2-2.
[0102] Next, an example of the search process executed by the answer unit 155 will be explained. The answer unit 155 selects the nodes included in the search range determined by the search range determination process and identifies the "user u x The process of searching for "prerequisite knowledge" and user u x Excluding the post content that he knows, "Post content p u_diff The process of searching for "" is executed separately.
[0103] First, the response unit 155 responds to user u x This section explains the process of searching for prerequisite knowledge. Answer section 155 is for user u x Question p' ux,q The cosine similarity between the content of the posts of the nodes included in the search range and the user's post content is calculated. The response unit 155 provides the content of the posts of the nodes included in the search range whose cosine similarity is above a threshold to the user u x Extract this as background knowledge.
[0104] Note that answer section 155 is question p'. ux,qIf a node whose cosine similarity with the summary content is above a threshold is the node corresponding to the summary content, the following process is performed. For example, if any of the posts of the nodes connected under the summary content node are from user u x If it is a post, then the summary content will be provided to user u x This is extracted as background knowledge. On the other hand, the answer section 155 states that all posts from nodes connected under the node of the summary content are from user u x If it is not a post by user u, then the summary content will be sent to user u x Exclude it from the prerequisite knowledge.
[0105] Next, response section 155 is the content of the post p u_diff This section explains the process of searching for [something]. Figure 18 is a diagram illustrating an example of the search process performed by the answer unit. For the sake of explanation, in Figure 18, the context graph G is shown. ux,a to, user u x This context graph is obtained from the context graph data 142 and corresponds to the topic identified by the specific processing described above.
[0106] Note that user U x The response unit 155 of the information processing device 100x used by user u y The information processing device 100y used by the system performs data communication and receives a context graph G from the information processing device 100y. uy,a Obtain the context graph G. uy,a is user u y A context graph obtained from context graph data of user u x Question p' ux,q This will be a context graph corresponding to the topic.
[0107] Context Graph G ux,a This includes the root node r1x and nodes n4-1, n4-2, n4-3, n4-4, n4-5, n4-6, n4-7, and n4-8. Of nodes n4-1 to n4-8, nodes n4-2, n4-4, n4-6 to n4-8 are used by user u xThese are nodes corresponding to posts made by user u. Of nodes n4-1 to n4-8, nodes n4-1, n4-3, and n4-5 are from user u y This node corresponds to the content posted by [the user / organization].
[0108] Context Graph G uy,a This includes the root node r1y and nodes n5-1, n5-2, n5-3, n5-4, n5-5, n5-6, n5-7, and n5-8. Of nodes n5-1 to n5-8, nodes n5-2, n5-4, and n5-6 are used by user u x These are nodes corresponding to posts made by user u. Of nodes n5-1 to n5-8, nodes n5-1, n5-3, n5-5, n5-7, and n5-8 are from user u y This node corresponds to the content posted by [the user / organization].
[0109] The answer section 155 consists of nodes n4-1 to n4-8 and question text p'. ux,q The cosine similarity between each node is calculated, and nodes whose cosine similarity is above a threshold are identified. For example, nodes n4-1, n4-2, and n4-4 are defined as nodes n4-1, n4-2, and n4-4. Furthermore, the response unit 155 selects from nodes n4-1, n4-2, and n4-4 the user u y Identify node n4-4 corresponding to the content posted by [the user].
[0110] The answer section 155 consists of nodes n5-1 to n5-8 and question text p'. ux,q The cosine similarity of each node is calculated, and nodes whose cosine similarity is above a threshold are identified. For example, nodes n5-1, n5-2, n5-4, and n5-7 are defined as nodes n5-1, n5-2, n5-4, and n5-7. Furthermore, the response unit 155 selects from nodes n5-1, n5-2, n5-4, and n5-7 the user u y Identify nodes n5-1 and n5-7 corresponding to the content posted by [username].
[0111] The response unit 155, if the post ID of node n4-4 does not match the post ID of node n5-1, and the post ID of node n4-4 does not match the post ID of node n5-7, then returns the post content of node n4-4 to the post content p u_diff Extract it as follows.
[0112] Note that the example explained in Figure 18 describes the case where the search range does not include the node corresponding to the summary content. The answer section 155, when the search range includes the node corresponding to the summary content, uses this summary content and the question text p'. ux,q The response unit 155 determines whether the cosine similarity with is above a threshold. If the cosine similarity is above a threshold, it determines whether the user u connected to the node corresponding to the summary content is above a threshold. y If the post ID of the node containing the posted content does not match the post ID of the node being compared, then the summary content will be returned to the post content p u_diff The search is performed as follows. For example, if node n4-1 is the node corresponding to the summary content, then the user u connected under node n4-1 will be searched. y If the post ID of the node containing the posted content does not match the post IDs of nodes n5-1 and n5-7, then node n4-1 will be used for the posted content p u_diff It may also be extracted as such.
[0113] Next, an example of the response generation process performed by the response unit 155 will be described. The response unit 155 generates a response by setting various information in the Prompt 70 shown in Figure 19 and inputting it into the LLM.
[0114] Figure 19 shows an example of a prompt for generating an answer. As shown in Figure 19, area 70a of the prompt 70 contains instructions for the LLM. Area 70b contains the user u retrieved by the answer unit 155. x The following background knowledge is established. In area 70c, the posted content p retrieved by the answer unit 155 is entered. u_diff The following is set. In area 70d, the thinking tendencies of the profile data 143 are set. In area 70d, the information of table 141b of the past posting data 141 is set.
[0115] For example, area 70b is set to contain post content (summary content) 71b. The post content set in area 70b includes summaries of topics that have been discussed over a long period of time. By setting such information, the amount of background information can be reduced compared to inserting individual posts, and it becomes easier to extract only the events and conclusions that have attracted attention over a certain period of time, without relying on individual keywords.
[0116] Area 70c is set to post content 71c. Area 70d is set to "conclusion-oriented" as the thinking tendency. Area 70e is set to the conversation history including the latest question, "What is the status of members' efforts regarding distributed SNS?"
[0117] By inputting Prompt 70, as explained in Figure 19, into LLM, an answer 75 like the one shown in Figure 20 is obtained. Figure 20 is a diagram showing an example of an answer generated by LLM. Answer 75 is an answer that takes into account the user's past posts and thinking tendencies on the topic of the question, and can be said to be an answer that focuses on the necessary level of detail and information.
[0118] Response section 155 will post response 75 to the Private Channel.
[0119] Next, an example of the processing procedure of the information processing device 100 according to this embodiment will be described. For example, the information processing device 100 performs summarization processing and answer generation processing. The processing procedure for summarization processing and the processing procedure for answer generation processing will be described in order below.
[0120] Figure 21 is a flowchart showing the processing procedure for summarization. As shown in Figure 21, the client application processing unit 151 of the information processing device 100 acquires user submissions and registers the submitted information in the past submission data 141 (step S101). Based on the time information of the timer 135, if a certain period of time has not elapsed (step S102, No), the information processing device 100 proceeds to step S101. On the other hand, based on the time information of the timer 135, if a certain period of time has elapsed (step S102, Yes), the information processing device 100 proceeds to step S103.
[0121] The profile extraction unit 152 of the information processing device 100 extracts topics and thought patterns based on past posting data 141 (step S103). The profile extraction unit 152 updates the profile data 143 based on the extraction results (step S104).
[0122] The generation unit 153 of the information processing device 100 generates a context graph for each of the multiple topics and updates the context graph data 142 (step S105). The summarization unit 154 of the information processing device 100 determines whether the sum of the posted content of nodes within one hop connected to the root node of the context graph is equal to or greater than a threshold (step S106).
[0123] If the summarization unit 154 finds that the value is above the threshold (step S107, Yes), it summarizes the context graph, updates the context graph data 142 (step S108), and proceeds to step S101. On the other hand, if the summarization unit 154 finds that the value is not above the threshold (step S107, No), it proceeds to step S101.
[0124] Figure 22 is a flowchart showing the processing steps for the answer generation process. The answer unit 155 of the information processing device 100 acquires the question text from the user (step S201). The answer unit 155 performs coreference analysis and regenerates the question text (step S202).
[0125] The answer unit 155 identifies the topic of the question (step S203). The answer unit 155 obtains a context graph corresponding to the topic of the question from the context graph data (step S204).
[0126] The answer section 155, within the search range of the context graph, considers the user's prior knowledge and the content of the post p u_diff The system searches for the search result (step S205). The answer unit 155 generates an answer by setting the search result in the Prompt and inputting it into the LLM (step S206). The answer unit 155 posts the answer to the Private Channel (step S207).
[0127] The answer generation process shown in Figure 22 is executed repeatedly to obtain the user's question text. As mentioned above, the user's question text is posted to the Private Channel.
[0128] Next, the effects of the information processing device 100 according to this embodiment will be described. The information processing device 100 extracts topics of interest and thinking tendencies of users based on the content posted by users on SNS. The information processing device 100 generates a context graph that associates user posts on the same topic, summarizes the user posts in the context graph based on the user's thinking tendencies, and uses the summarized context graph to generate answers corresponding to the user's questions. This makes it possible to generate appropriate answers to questions. Furthermore, it is possible to generate answers to questions by focusing on the necessary level of detail and information based on the user's past posts and thinking tendencies on a certain topic.
[0129] The information processing device 100 generates an answer based on a summary whose similarity (cosine similarity) to the question is above a threshold. This allows the device to generate an answer using a summary similar to the question.
[0130] The information processing device 100 acquires the content posted by users at predetermined intervals and extracts multiple topics and thought patterns. This allows it to track the topics and thought patterns that users are interested in.
[0131] The information processing device 100 summarizes the content of posts from nodes in the context graph that are connected within one hop from the root node. Furthermore, if the total number of characters in the posts from nodes connected within one hop from the root node exceeds a threshold, the information processing device 100 prioritizes summarizing older posts. This allows for the extraction of content that is of interest over a medium to long term.
[0132] Furthermore, by plugging the functions of the information processing device 100 according to this embodiment into each terminal device of the company, the information processing device 100 can be applied to businesses such as generating answers to questions from personnel in the company's security department. For example, the information processing device 100 generates and summarizes a context graph based on the content posted by company employees, and then generates an answer based on this context graph and the questions from the personnel in charge. In addition, the information processing device 100 can be applied to other AI businesses.
[0133] Next, we will describe in order an example of a computer hardware configuration that realizes the same functions as the information processing device 100 shown in the above embodiment.
[0134] Figure 23 shows an example of a computer hardware configuration that realizes similar functions to the information processing device in the embodiment. As shown in Figure 23, the computer 200 has a CPU 201 that performs various calculations, an input device 202 that receives data input from the user, and a display 203. The computer 200 also has a communication device 204 that exchanges data with the SNS server 50 and other information processing devices via a wired or wireless network, and an interface device 205. The computer 200 also has a RAM 206 for temporarily storing various information and a hard disk drive 207. Each of the devices 201 to 207 is connected to a bus 208.
[0135] The hard disk drive 207 includes a client application processing program 207a, a profile extraction program 207b, a generation program 207c, a summarization program 207d, and a response program 207e. The CPU 201 reads each of the programs 207a to 207e and loads them into the RAM 206.
[0136] The client application processing program 207a functions as the client application processing process 206a. The profile extraction program 207b functions as the profile extraction process 206b. The generation program 207c functions as the generation process 206c. The summarization program 207d functions as the summarization process 206d. The response program 207e functions as the response process 206e.
[0137] The processing of the client application processing process 206a corresponds to the processing of the client application processing unit 151. The processing of the profile extraction process 206b corresponds to the processing of the profile extraction unit 152. The processing of the generation process 206c corresponds to the processing of the generation unit 153. The processing of the summarization process 206d corresponds to the processing of the summarization unit 154. The processing of the response process 206e corresponds to the processing of the response unit 155.
[0138] Furthermore, it is not necessary to store each program 207a to 207e on the hard disk drive 207 from the beginning. For example, each program may be stored on a "portable physical medium" such as a flexible disk (FD), CD-ROM, DVD, magneto-optical disk, or IC card inserted into the computer 200. Then, the computer 200 may read and execute each program 207a to 207e.
[0139] 100 Information Processing Unit 110 Communication Unit 120 Input Unit 130 Display Unit 135 Timer 140 Storage Unit 141 Past Post Data 142 Context Graph Data 143 Profile Data 150 Control Unit 151 Client Application Processing Unit 152 Profile Extraction Unit 153 Generation Unit 154 Summarization Unit 155 Response Unit
Claims
1. An information processing device having a control unit that performs the following processes: extracting multiple topics of interest to a first user and the first user's thinking tendencies based on posts made by the first user in a community on a network; extracting topics from posts made by the first user and multiple second users in the community, generating a context graph containing multiple posts related to the same topic; updating the context graph by summarizing the multiple posts included in the context graph based on the thinking tendencies; and, when a question is received from the first user, generating an answer to the question based on the context graph corresponding to the topic of the question.
2. The information processing apparatus according to claim 1, characterized in that the process for generating the answer generates the answer based on a summary whose similarity to the question text is equal to or greater than a threshold.
3. The information processing apparatus according to claim 1, characterized in that the extraction process obtains the content of posts made by the first user at predetermined intervals and extracts the plurality of topics and the thinking tendencies.
4. The information processing device according to claim 1, wherein the context graph is a graph including a root node and a plurality of nodes corresponding to the posted content or the summary, and the summarizing process summarizes the posted content of nodes in the context graph that are connected within one hop from the root node.
5. The information processing device according to claim 4, characterized in that the summarizing process prioritizes summarizing older posts when the total number of characters in the posts of nodes connected within one hop from the root node exceeds a threshold.
6. An information processing method characterized in that a computer performs the following processes: extracting multiple topics of interest to a first user and the first user's thinking tendencies based on posts made by the first user in a community on a network; extracting topics from posts made by the first user and multiple second users in the community, and generating a context graph containing multiple posts related to the same topic; updating the context graph by summarizing the multiple posts included in the context graph based on the thinking tendencies; and, when a question is received from the first user, generating an answer to the question based on the context graph corresponding to the topic of the question.
7. The information processing method according to claim 6, characterized in that the process for generating the answer generates the answer based on a summary whose similarity to the question text is equal to or greater than a threshold.
8. The information processing method according to claim 6, characterized in that the extraction process obtains the content of posts made by the first user at predetermined intervals and extracts the multiple topics and the thought patterns.
9. The information processing method according to 6, wherein the context graph is a graph including a root node and a plurality of nodes corresponding to the posted content or the summary, and the summarizing process is characterized in that it summarizes the posted content of nodes in the context graph that are connected within one hop from the root node.
10. The information processing method according to claim 9, characterized in that the summarizing process prioritizes summarizing older posts when the total number of characters in the posts of nodes connected within one hop from the root node exceeds a threshold.
11. An information processing program characterized by causing a computer to perform the following processes: extract multiple topics of interest to a first user and the first user's thinking tendencies based on posts made by the first user in a community on a network; extract topics from posts made by the first user and multiple second users in the community, generate a context graph containing multiple posts related to the same topic; update the context graph by summarizing the multiple posts included in the context graph based on the thinking tendencies; and, when a question is received from the first user, generate an answer to the question based on the context graph corresponding to the topic of the question.
12. The information processing program according to claim 11, characterized in that the process for generating the answer generates the answer based on a summary whose similarity to the question text is equal to or greater than a threshold.
13. The information processing program according to claim 11, characterized in that the extraction process obtains the content of posts made by the first user at predetermined intervals and extracts the plurality of topics and the thinking tendencies.
14. The information processing program according to claim 11, wherein the context graph is a graph including a root node and a plurality of nodes corresponding to the posted content or the summary, and the summarizing process summarizes the posted content of nodes in the context graph that are connected within one hop from the root node.
15. The information processing program according to claim 14, characterized in that the summarizing process prioritizes summarizing older posts when the total number of characters in the posts of nodes connected within one hop from the root node exceeds a threshold.