Device and method
The apparatus infers user interests and concerns in real time from past and current dialogues by generating relational information and detecting topics, facilitating expanded and relevant conversations.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- NTT DOCOMO INC
- Filing Date
- 2024-11-08
- Publication Date
- 2026-05-15
AI Technical Summary
Existing technologies face challenges in inferring a user's interests and concerns in real time from past and current dialogues, making it difficult to expand conversations effectively.
An apparatus and method that utilize a graph calculation unit to generate relational information based on general knowledge and user utterances, a topic detection unit to identify current topics, an extraction unit to acquire related topic words, and a response generation unit to output responses based on these words, enabling real-time inference of user interests and concerns.
Enables real-time inference of user interests and concerns from past and present dialogues, allowing for expanded and relevant conversations.
Smart Images

Figure JP2024039848_15052026_PF_FP_ABST
Abstract
Description
Apparatus and Method
[0001] The present invention relates to an apparatus and a method.
[0002] Techniques for extracting a user's preferences using the user's speech are known. For example, Patent Document 1 discloses a technique for extracting preference information in the process of advancing a dialogue with a user. The technique described in Patent Document 1 determines valid attribute nodes corresponding to the preference information in a pre-constructed knowledge graph after extracting the preference information.
[0003] Patent Document 2 discloses a technique for identifying an entity mentioned in a dialogue between a user and an automatic assistant and identifying a fact of that entity or another entity. The technique described in Patent Document 2 determines a criterion of the user's interest regarding the fact after identifying the fact.
[0004] Japanese Patent Application Publication No. 2024 - 508502, Japanese Unexamined Patent Application Publication No. 2024 - 038294
[0005] Conventionally, it has been difficult to infer a user's interests and concerns in real time from past and current dialogues and expand the conversation.
[0006] An object of the present disclosure is to provide a technique for inferring a user's interests and concerns in real time from past and current dialogues and expanding the conversation.
[0007] An apparatus according to one aspect of the present disclosure includes: a graph calculation unit that generates relationship information indicating relationships between a plurality of words based on general knowledge and connects a user to the relationship information based on information regarding the user's past speech; a topic detection unit that detects information regarding a topic based on information regarding the user's current speech; an extraction unit that acquires information regarding related topic words indicating related topics based on the information regarding the topic and the relationship information; and a response generation unit that generates a response based on the information regarding the related topic words and outputs the response.
[0008] In one aspect of this disclosure, the device connects the user to relational information generated based on general knowledge, based on information about the user's past utterances. This allows for the acquisition of user-specific relational information. Furthermore, information about the topic is detected based on information about the user's current utterances. In addition, information about related topic words is acquired based on the topic information and relational information. Then, a response based on the related topic words is generated and output. That is, information about related topic words is extracted from the current topic and user-specific relational information, and a response based on the information about related topic words is output. This makes it possible to infer the user's interests and concerns in real time from past and present dialogue and expand the conversation.
[0009] According to this disclosure, it is possible to infer the user's interests in real time from past and present conversations and expand the conversation accordingly.
[0010] Figure 1 is a block diagram showing an example of the functional configuration of the device according to the first embodiment. Figure 2 is a diagram showing an example of a knowledge graph. Figure 3 is a diagram showing an example of extracting information related to a topic. Figure 4 is a diagram showing an example of a subgraph. Figure 5 is a diagram showing an example of information related to topic words. Figure 6 is a diagram showing an example of a prompt. Figure 7 is a flowchart showing an example of the operation of the device according to the first embodiment. Figure 8 is a block diagram showing an example of the functional configuration of the device according to the second embodiment. Figure 9 is a diagram showing an example of information related to advertisements. Figure 10 is a flowchart showing an example of the operation of the device according to the second embodiment. Figure 11 is a diagram showing an example of the hardware configuration of the device.
[0011] Embodiments of this disclosure will be described with reference to the attached drawings. Where possible, the same parts will be denoted by the same reference numerals, and redundant descriptions will be omitted.
[0012] Figure 1 is a block diagram showing an example of the functional configuration of the device 10 according to the first embodiment. The device 10 comprises, as functional elements, an input unit 11, a speech history storage unit 12, a graph calculation unit 13, a topic detection unit 14, an extraction unit 15, and a response generation unit 16.
[0013] The input unit 11 acquires information about user utterances. For example, the input unit 11 acquires information about utterances in real space or virtual space. The utterances may be utterances included in conversations between users. The utterances may be utterances included in conversations between NPCs (Non-Player Characters) and users in virtual space. The utterances may be the user's monologues. The input unit 11 stores the information about the utterances in the utterance history storage unit 12. The input unit 11 outputs the information about the utterances to the topic detection unit 14.
[0014] The speech history storage unit 12 is a non-temporary storage medium or storage device that stores information about utterances. For example, the speech history storage unit 12 stores information about utterances in chronological order as a conversation history. The speech history storage unit 12 may be constructed using at least one database. The speech history storage unit 12 may be a component of the device 10, or it may be located in a computer system separate from the device 10.
[0015] The graph calculation unit 13 generates relational information showing the relationships between multiple words based on general knowledge. The graph calculation unit 13 may acquire text published on a website as general knowledge. For example, the graph calculation unit 13 may acquire text published on Wikipedia, an internet encyclopedia site, as general knowledge.
[0016] Relationship information may also be a knowledge graph that includes multiple entities and relationships that show the relationships between those entities. A knowledge graph is,<subject, predicate, object> The relationships between entities are represented by a set of three.
[0017] The graph calculation unit 13 extracts entities from general knowledge. For example, the graph calculation unit 13 creates structured graph data from general knowledge text. In one example, the graph calculation unit 13 obtains a knowledge graph by graphing general knowledge using the Llama knowledge graph index. In the knowledge graph, entities are represented as nodes, and relationships are represented as edges.
[0018] The graph calculation unit 13 connects the user to relational information based on information about the user's past utterances. For example, the graph calculation unit 13 obtains information about the user's past utterances from the utterance history storage unit 12. The graph calculation unit 13 extracts past topics from the information about past utterances. The graph calculation unit 13 identifies general knowledge nodes corresponding to past topics. The graph calculation unit 13 connects the user's node and the specific general knowledge node with an edge representing the past topic.
[0019] The graph calculation unit 13 vectorizes relational information. For example, the graph calculation unit 13 obtains vector information from a knowledge graph using a GNN (Graph Neural Network). The graph calculation unit 13 may also generate relational information through batch processing and then vectorize it.
[0020] The topic detection unit 14 detects topic-related information based on information about the user's current utterance. Topic-related information may be a word (topic word) that indicates the current topic. In other words, the topic detection unit 14 detects the topic in real time from the content of the utterance. The topic detection unit 14 may also detect topic-related information based on information about recent past and current utterances. The topic detection unit 14 outputs topic-related information to the extraction unit 15.
[0021] For example, the topic detection unit 14 may detect information related to a topic using NER (Named Entity Recognition), a topic model, or a Large Language Model (LLM). NER is a method for identifying named entities such as names of people or places in a text and classifying them into predefined categories. A topic model is a statistical method for analyzing word patterns and automatically identifying hidden topics. The LLM may be built into the device 10 or provided by an external device.
[0022] The extraction unit 15 acquires information about related topic terms that indicate related topics, based on topic information and relational information. For example, the extraction unit 15 acquires information about the current topic and related topic terms that are close to the user.
[0023] The extraction unit 15 may identify nodes in the knowledge graph that are close to the current topic. For example, the extraction unit 15 may obtain a subgraph by narrowing down the knowledge graph based on information about the topic. The subgraph can be said to be a knowledge graph of the range related to the current topic.
[0024] The extraction unit 15 may narrow down the knowledge graph using, for example, Personalized PageRank. PageRank is an algorithm for evaluating the importance of a web page based on the number of backlinks. The extraction unit 15 may also narrow down the knowledge graph based on the transition probability between nodes. Transition probability is the probability that indicates which node is important from the perspective of a given node. The extraction unit 15 may also narrow down the knowledge graph using the node's order or hop count, etc.
[0025] The extraction unit 15 may identify nodes in the knowledge graph that are close to the user. For example, the extraction unit 15 may calculate the degree of relevance between the user's node and other nodes (each node of general knowledge) based on the vector distance in the knowledge graph. The extraction unit 15 may determine that the closer the vector distance, the higher the degree of relevance.
[0026] The extraction unit 15 may obtain information about related topic words based on their relevance. The extraction unit 15 may identify N nodes with a high degree of relevance (N ≥ 1). The extraction unit 15 obtains information about related topic words for the N nodes with a high degree of relevance. The information about related topic words may be node names (entity names). The information about related topic words may also be structural information including nodes and edges.
[0027] The extraction unit 15 outputs information about related topic words. For example, the extraction unit 15 may transmit information about related topic words to another computer device. The extraction unit 15 may display information about related topic words on a display device. The extraction unit 15 may output information about related topic words by voice. The extraction unit 15 may output information about related topic words to the response generation unit 16.
[0028] The response generation unit 16 generates a response based on information about related topic words. For example, the response generation unit 16 generates a prompt based on information about related topic words and inputs the prompt to the LLM. The prompt includes instructions for the LLM. For example, the prompt includes instructions to generate a topic using information about related topic words. The response generation unit 16 generates a response by obtaining a decision result from the LLM corresponding to the prompt.
[0029] The response generation unit 16 outputs a response. The response generation unit 16 may transmit the response to another computer device. The response generation unit 16 may display the response on a display device. The response generation unit 16 may output the response by voice.
[0030] Figure 2 shows an example of knowledge graph G1. Knowledge graph G1 is a knowledge graph that includes general knowledge nodes N1 to N10 and is connected to user A's node U1. For example, information posted on a website as general knowledge may be "Kawasaki Frontale is a club team whose home town is Kawasaki City..." Information about user A's past utterances may be "I live in Kawasaki City."
[0031] In one example, User A's node U1 is connected to node N1, which represents Kawasaki City, via edge E1, which represents "past topics." This relationship represents, for example, that "User A talked about Kawasaki City as a past topic."
[0032] In another example, node N1, which represents Kawasaki City, is connected to node N2, which represents Kawasaki Frontale, via edge E2, which represents "hometown." This relationship expresses, for example, that "Kawasaki City is the hometown of Kawasaki Frontale."
[0033] Figure 3 shows an example of extracting information related to a topic. Figure 3 shows that information related to a topic W is extracted from the conversation history H (information related to utterances). The conversation history H is the history of conversations between user A and an agent (for example, an NPC in a virtual space, or a voice assistant on the user's terminal).
[0034] Conversation history H includes recent past and present utterances. Conversation history H includes the first, second, and third utterances in chronological order. The first utterance is User A's utterance, "I live in Kawasaki City." The second utterance is the agent's utterance, "Oh really? Speaking of Kawasaki City, Kawasaki Frontale is in the running for the championship, so it's exciting!" The third utterance is User A's utterance, "That's right, I went to see a match last week!"
[0035] The topic detection unit 14 detects topic-related information W based on the conversation history H. The topic detection unit 14 may also detect topic-related information W by considering the flow of the first utterance, the second utterance, and the third utterance. Topic-related information W may include, for example, "soccer," "match," and "weekend."
[0036] Figure 4 shows an example of subgraph G2. Figure 4 shows subgraph G2, which is a knowledge graph G1 shown in Figure 2, but with the information related to the topic narrowed down to "soccer." In other words, subgraph G2 can be said to be a knowledge graph covering the scope related to the current topic, soccer.
[0037] Subgraph G2 may be determined based on the transition probability from node N4, which represents soccer. Subgraph G2 includes general knowledge nodes N1-N4, N7, and N9. General knowledge nodes N5, N6, N8, and N10 are excluded from subgraph G2.
[0038] Figure 5 shows an example of information regarding related topic terms. The extraction unit 15 calculates the degree of relevance based on the vector distance between user A's node U1 and each node. In one example, the extraction unit 15 identifies node N2, which represents Kawasaki Frontale, as a node with a high degree of relevance. The extraction unit 15 may also obtain the node name "Kawasaki Frontale" of node N2 as information regarding related topic terms.
[0039] Figure 6 shows an example of prompt P. Figure 6 shows prompt P generated by the response generation unit 16. Prompt P includes user input P1, related topic P2, character settings, behavior, and output format as instructions to the LLM. The information contained in prompt P is not limited to these.
[0040] User input P1 is information related to speech. For example, the user input P1 may be information related to a speech indicating "I want to go to Hokkaido. Are there any recommended tourist destinations?"
[0041] Related topic P2 is information related to related topic words. For example, the related topic P2 may be information related to a related topic word indicating "XX Brewery".
[0042] The LLM outputs the generated response result based on the prompt P. For example, the output may be "If you like Japanese sake, it is recommended to go to XX Brewery in Hokkaido! There, not only delicious Japanese sake is made, but the sake brewing process can also be observed. It would be nice to go with friends and have a great time!"
[0043] An example of the method of operation by the apparatus 10 will be described while referring to FIG. 7. FIG. 7 is a flowchart showing an example of the operation of the apparatus 10 as a flow M1.
[0044] In step S1, the input unit 11 acquires information related to the user's speech. For example, the input unit 11 acquires information related to speech in at least one of the real space and the virtual space. The speech may be a speech included in a conversation between users. The speech may be a speech included in a conversation between an NPC and a user in the virtual space. The speech may be the user's monologue. The input unit 11 stores the information related to the speech in the speech history storage unit 12. The input unit 11 outputs the information related to the speech to the topic detection unit 14.
[0045] In step S2, the graph calculation unit 13 generates relationship information indicating the relationship between a plurality of words based on general knowledge. The graph calculation unit 13 may acquire the text published on the website as general knowledge. In one example, the graph calculation unit 13 may acquire the text published on Wikipedia, which is an Internet encyclopedia website, as general knowledge.
[0046] The relationship information may be a knowledge graph including a plurality of entities and a relation indicating the relationship between the plurality of entities.
[0047] The graph calculation unit 13 extracts entities from general knowledge. For example, the graph calculation unit 13 creates structured graph data from the text of general knowledge. In one example, the graph calculation unit 13 obtains a knowledge graph by graphing general knowledge using Llama knowledge graph index.
[0048] The graph calculation unit 13 links the user to the relationship information based on information about the user's past utterances. For example, the graph calculation unit 13 obtains information about the user's past utterances from the utterance history storage unit 12. The graph calculation unit 13 extracts past topics from the information about past utterances. The graph calculation unit 13 links the user's node and a specific node of general knowledge with an edge called the past topic.
[0049] The graph calculation unit 13 vectorizes the relationship information. For example, the graph calculation unit 13 obtains vector information using GNN for the knowledge graph. The graph calculation unit 13 may generate relationship information by batch processing and vectorize it.
[0050] In step S3, the topic detection unit 14 detects information related to the topic based on information about the user's current utterance. The information related to the topic may be a word (topic word) indicating the current topic. That is, the topic detection unit 14 detects the topic from the utterance content in real time. The topic detection unit 14 may detect information related to the topic based on information about the most recent past and current utterances. The topic detection unit 14 outputs the information related to the topic to the extraction unit 15.
[0051] For example, the topic detection unit 14 may detect information related to the topic using NER, a topic model, or an LLM.
[0052] In step S4, the extraction unit 15 obtains information about related topic words indicating related topics based on the information related to the topic and the relationship information. For example, the extraction unit 15 obtains information about the current topic and related topic words close to the user.
[0053] The extraction unit 15 may identify nodes in the knowledge graph that are close to the current topic. For example, the extraction unit 15 may obtain a subgraph by narrowing down the knowledge graph based on information about the topic. The subgraph can be said to be a knowledge graph of the range related to the current topic.
[0054] The extraction unit 15 may narrow down the knowledge graph using, for example, Personalized PageRank. The extraction unit 15 may narrow down the knowledge graph based on the transition probability between nodes. The extraction unit 15 may narrow down the knowledge graph using the node order or hop count, etc.
[0055] The extraction unit 15 may identify nodes in the knowledge graph that are close to the user. For example, the extraction unit 15 may calculate the degree of relevance between the user's node and other nodes (each node of general knowledge) based on the vector distance in the knowledge graph. The extraction unit 15 may determine that the closer the vector distance, the higher the degree of relevance.
[0056] The extraction unit 15 may obtain information about related topic words based on their relevance. The extraction unit 15 may identify N nodes with a high degree of relevance (N ≥ 1). The extraction unit 15 obtains information about related topic words for the N nodes with a high degree of relevance. The information about related topic words may be node names (entity names). The information about related topic words may also be structural information including nodes and edges.
[0057] The extraction unit 15 outputs information about related topic words. For example, the extraction unit 15 may transmit information about related topic words to another computer device. The extraction unit 15 may display information about related topic words on a display device. The extraction unit 15 may output information about related topic words by voice. The extraction unit 15 may output information about related topic words to the response generation unit 16.
[0058] In step S5, the response generation unit 16 generates a response based on information about related topic words. For example, the response generation unit 16 generates a prompt based on information about related topic words and inputs the prompt to the LLM. The prompt includes instructions for the LLM. For example, the prompt includes instructions to generate a topic using information about related topic words. The response generation unit 16 generates a response by obtaining a decision result from the LLM corresponding to the prompt.
[0059] The response generation unit 16 outputs a response. The response generation unit 16 may transmit the response to another computer device. The response generation unit 16 may display the response on a display device. The response generation unit 16 may output the response by voice.
[0060] The processes in steps S1 and S2 may be performed in advance by independent processes. If the relevant information is generated in advance, the process in step S2 may be omitted.
[0061] Figure 8 is a block diagram showing an example of the functional configuration of the device 10A according to the second embodiment. Hereinafter, the differences between the device 10A and the device 10 according to the first embodiment will be mainly described. The device 10A is communicably connected to the advertising information storage unit 20. The device 10A further comprises an advertising acquisition unit 17 and a strategy generation unit 18 as functional elements.
[0062] The advertising information storage unit 20 is a non-temporary storage medium or storage device that stores information related to advertisements. This information may include, but is not limited to, products, categories, keywords, and descriptions. The advertising information is obtained in advance from the advertiser (company, etc.). The advertising information storage unit 20 may be constructed using at least one database. The advertising information storage unit 20 may be a component of the device 10A, or it may be located in a separate computer system.
[0063] The ad retrieval unit 17 retrieves information about advertisements from the ad information storage unit 20 based on information about related topic terms. For example, the ad retrieval unit 17 searches the ad information storage unit 20 using information about related topic terms. In one example, the ad retrieval unit 17 searches by matching keywords or descriptions of the advertisement information with information about related topic terms. The ad retrieval unit 17 outputs the retrieved information about advertisements to the strategy generation unit 18.
[0064] The strategy generation unit 18 generates a dialogue scenario based on information about relevant topics and information about advertisements. The dialogue scenario is a prompt that includes intermediate reasoning and planning steps to reach the goal of the dialogue. The dialogue scenario can also be described as a guideline that shows the thought process of the generating AI. For example, the strategy generation unit 18 may use ProCoT (Proactive Chain-of-Thought) to reason about the dialogue process toward achieving the goal (presenting an advertisement) and generate a dialogue scenario. The strategy generation unit 18 outputs the dialogue scenario to the response generation unit 16.
[0065] In one example, the strategy generation unit 18 generates the following dialogue scenario: Goal setting: Present advertisements based on relevant topics that the user is likely to be interested in. Thought process: - Understand the user's needs in detail (e.g., budget, necessary functions, etc.). - Determine if the advertisement information matches the user's needs. - Place the advertisement. Prompting: Provide a prompt to the response generation unit 16: "Elicit the user's needs in detail and present advertisements based on that information."
[0066] The response generation unit 16 may generate a response based on information about related topic words and information about advertisements. For example, the response generation unit 16 may generate a prompt based on information about related topic words and information about advertisements and input the prompt to the LLM. For example, the prompt may include instructions to present an advertisement using information about related topic words and information about advertisements.
[0067] The response generation unit 16 may generate a response based on the dialogue scenario. For example, the response generation unit 16 inputs a dialogue scenario to the LLM. For example, the dialogue scenario includes intermediate reasoning and planning steps to reach the dialogue goal, as well as instructions to present an advertisement using information about relevant topic words and information about the advertisement.
[0068] Figure 9 shows an example of information related to an advertisement. The advertisement information storage unit 20 may store the advertisement information shown in Figure 9. The advertisement information is associated with the product, category, keywords, and a description of the product.
[0069] In one example, the product "Kawasaki Frontale tickets," category "tickets," keywords "Kawasaki Frontale, tickets," and product description are associated. In another example, the product "S player's uniform," category "baseball," keywords "S player, uniform," and product description are associated.
[0070] An example of how the device 10A operates will be explained with reference to Figure 10. Figure 10 is a flowchart showing an example of the operation of the device 10A as flow M2.
[0071] The processing in steps S11 to S14 is the same as the processing in steps S1 to S4 in flow M1.
[0072] In step S15, the ad acquisition unit 17 acquires information about advertisements from the ad information storage unit 20 based on the information about related topic words. For example, the ad acquisition unit 17 searches the ad information storage unit 20 using the information about related topic words. In one example, the ad acquisition unit 17 searches by matching keywords or descriptions of the advertisement information with the information about related topic words. The ad acquisition unit 17 outputs the acquired information about advertisements to the strategy generation unit 18.
[0073] In step S16, the strategy generation unit 18 generates a dialogue scenario based on information about relevant topics and information about advertisements. For example, the strategy generation unit 18 may use ProCoT to infer a dialogue process toward achieving the goal (presenting an advertisement) and generate a dialogue scenario. The strategy generation unit 18 outputs the dialogue scenario to the response generation unit 16.
[0074] In one example, the strategy generation unit 18 generates the following dialogue scenario: Goal setting: Present advertisements based on relevant topics that the user is likely to be interested in. Thought process: - Understand the user's needs in detail (e.g., budget, necessary functions, etc.). - Determine if the advertisement information matches the user's needs. - Place the advertisement. Prompting: Provide a prompt to the response generation unit 16: "Elicit the user's needs in detail and present advertisements based on that information."
[0075] In step S17, the response generation unit 16 generates a response based on information about related topic words. For example, the response generation unit 16 generates a prompt based on information about related topic words and inputs the prompt to the LLM. The prompt includes instructions for the LLM. For example, the prompt includes instructions to generate a topic using information about related topic words. The response generation unit 16 generates a response by obtaining a decision result from the LLM corresponding to the prompt.
[0076] The response generation unit 16 may generate a response based on information about related topic words and information about advertisements. For example, the response generation unit 16 may generate a prompt based on information about related topic words and information about advertisements and input the prompt to the LLM. For example, the prompt may include instructions to present an advertisement using information about related topic words and information about advertisements.
[0077] The response generation unit 16 may generate a response based on the dialogue scenario. For example, the response generation unit 16 inputs a dialogue scenario to the LLM. For example, the dialogue scenario includes intermediate reasoning and planning steps to reach the dialogue goal, as well as instructions to present an advertisement using information about relevant topic words and information about the advertisement.
[0078] The response generation unit 16 outputs a response. The response generation unit 16 may transmit the response to another computer device. The response generation unit 16 may display the response on a display device. The response generation unit 16 may output the response by voice.
[0079] As described above, the devices 10 and 10A relating to one aspect of this disclosure include: a graph calculation unit 13 that generates relational information showing the relationships between multiple words based on general knowledge and links the user to relational information based on information about the user's past utterances; a topic detection unit 14 that detects topical information based on information about the user's current utterances; an extraction unit 15 that acquires related topical words indicating related topics based on topical information and relational information; and a response generation unit 16 that generates a response and outputs a response based on information about related topical words.
[0080] A method relating to one aspect of this disclosure includes the steps of: generating relational information indicating the relationships between several words based on general knowledge; linking the user to the relational information based on information about the user's past utterances; detecting topical information based on information about the user's current utterances; obtaining related topical words indicating related topics based on the topical information and vectorized relational information; and generating and outputting a response based on the related topical words.
[0081] In the apparatus 10, 10A and method relating to one aspect of this disclosure, the user is linked to relational information generated based on general knowledge, based on information about the user's past utterances. This allows for the acquisition of relational information specific to the user. Furthermore, information about the topic is detected based on information about the user's current utterances. In addition, information about related topic words is acquired based on the topic information and relational information. Then, a response based on the related topic words is generated and output. That is, information about related topic words is extracted from the current topic and user-specific relational information, and a response based on the information about related topic words is output. This makes it possible to infer the user's interests and concerns in real time from past and present dialogue and expand the conversation.
[0082] The response generation unit 16 generates a prompt that includes an instruction to generate a topic using information about related topic words, and generates a response by inputting the prompt into a large-scale language model. In this case, topics can be provided naturally according to the user's interests.
[0083] Relational information is a knowledge graph containing multiple entities and relationships between those entities. Information about related topics is structural information including nodes and edges. In this case, information about related topics is obtained based on a knowledge graph capable of representing connections between various pieces of knowledge. Furthermore, user-specific structural information is reflected in the response. This allows for a more multifaceted inference of the user's interests.
[0084] The device 10A further includes an advertisement acquisition unit 17 that acquires advertisement information based on information related to topic words. The response generation unit 16 generates a response based on the information related to topic words and the advertisement information. In this case, advertisements that match the user's interests are reflected in the response. This makes it possible to provide a response that is valuable to the user.
[0085] The response generation unit 16 generates a prompt that includes an instruction to present an advertisement using information related to relevant topics and information related to the advertisement, and generates a response by inputting the prompt into a large-scale language model. In this case, advertisements can be provided naturally according to the user's interests. Furthermore, the effectiveness of the advertisement can be maximized without the user feeling bothered by it.
[0086] The device 10A further includes an advertising acquisition unit 17 that acquires advertising information based on information about related topic words, and a strategy generation unit 18 that generates a dialogue scenario based on the information about related topic words and the advertising information. The response generation unit 16 generates a response based on the dialogue scenario. In this case, advertisements that match the user's interests are reflected in the response based on the dialogue scenario. This makes it possible to provide a response that is valuable to the user.
[0087] The dialogue scenario includes intermediate reasoning and planning steps to reach the dialogue goal, as well as instructions to present advertisements using information about relevant topics and information about advertisements. The response generation unit 16 generates a response by inputting the dialogue scenario into a large-scale language model. In this case, advertisements can be naturally presented according to the user's interests through a thought process for achieving the goal. Furthermore, the effectiveness of advertisements can be maximized without the user feeling bothered by them.
[0088] The apparatus and method of the present disclosure may have the following configurations: [1] An apparatus comprising: a graph calculation unit that generates relational information showing the relationships between a plurality of words based on general knowledge and links the user to the relational information based on information about the user's past utterances; a topic detection unit that detects information about a topic based on information about the user's current utterances; an extraction unit that acquires information about related topic words indicating related topics based on the topic information and the relational information; and a response generation unit that generates a response based on the information about related topic words and outputs the response. [2] The apparatus according to [1], wherein the response generation unit generates a prompt that includes an instruction to generate a topic using information about related topic words, and generates the response by inputting the prompt to a large-scale language model. [3] The apparatus according to [2], wherein the relational information is a knowledge graph including a plurality of entities and relations showing the relationships between the plurality of entities, and the information about related topic words is structural information including nodes and edges. [4] The apparatus according to any one of [1] to [3], further comprising an advertisement acquisition unit that acquires information about advertisements based on the information about related topic words, wherein the response generation unit generates the response based on the information about related topic words and the information about advertisements. [5] The apparatus according to [4], wherein the response generation unit generates a prompt that includes an instruction to present an advertisement using the information about related topic words and the information about advertisements, and generates the response by inputting the prompt into a large-scale language model. [6] The apparatus according to [1], further comprising an advertisement acquisition unit that acquires information about advertisements based on the information about related topic words, and a strategy generation unit that generates a dialogue scenario based on the information about related topic words and the information about advertisements, wherein the response generation unit generates the response based on the dialogue scenario. [7] The apparatus according to [6], wherein the dialogue scenario includes intermediate reasoning and planning steps to reach a dialogue goal, and an instruction to present an advertisement using the information about related topic words and the information about advertisements, and the response generation unit generates the response by inputting the dialogue scenario into a large-scale language model.[8] A method comprising: generating relational information indicating the relationships between several words based on general knowledge, and linking the user to the relational information based on information about the user's past utterances; detecting information about a topic based on information about the user's current utterances; obtaining information about related topic words indicating related topics based on the information about the topic and the vectorized relational information; and generating a response based on the information about related topic words and outputting the response.
[0089] The block diagrams used in the description of the above embodiments show functional units. These functional blocks (components) are realized by any combination of at least one of hardware and software. Furthermore, the method of realizing each functional block is not particularly limited. That is, each functional block may be realized using one device that is physically or logically coupled, or it may be realized using two or more physically or logically separated devices that are directly or indirectly connected (for example, using wired or wireless connections). A functional block may also be realized by combining software with the one or more of the above devices.
[0090] Functions include, but are not limited to, judgment, decision, determination, calculation, calculation, processing, derivation, investigation, exploration, confirmation, reception, transmission, output, access, resolution, selection, selection, establishment, comparison, assumption, expectation, assumption, broadcasting, notifying, communicating, forwarding, configuring, reconfiguring, allocating (mapping), and assigning. For example, a functional block (configuration part) that enables transmission is called a transmitting unit or transmitter. In all cases, as mentioned above, the method of implementation is not particularly limited.
[0091] For example, the devices 10 and 10A in one embodiment of the present disclosure may function as computers that perform information processing according to the present disclosure. Figure 11 is a diagram showing an example of the hardware configuration of the devices 10 and 10A according to one embodiment of the present disclosure. The above-described devices 10 and 10A may be physically configured as computer devices including a processor 1001, memory 1002, storage 1003, communication device 1004, input device 1005, output device 1006, bus 1007, etc.
[0092] In the following explanation, the term "device" can be replaced with "circuit," "device," "unit," etc. The hardware configuration of devices 10 and 10A may include one or more of the devices shown in the figure, or it may be configured to omit some of the devices.
[0093] Each function in devices 10 and 10A is realized by loading predetermined software (programs) onto hardware such as the processor 1001 and memory 1002, which allows the processor 1001 to perform calculations, control communication by the communication device 1004, and control at least one of data reading and writing in the memory 1002 and storage 1003.
[0094] The processor 1001 controls the entire computer, for example, by running an operating system. The processor 1001 may be composed of a central processing unit (CPU) that includes interfaces with peripheral devices, control devices, arithmetic units, registers, etc. For example, each of the functions in the above-described devices 10 and 10A may be implemented by the processor 1001.
[0095] Furthermore, the processor 1001 reads programs (program code), software modules, data, etc., from at least one of the storage 1003 and the communication device 1004 into the memory 1002 and executes various processes accordingly. The program used is one that causes the computer to execute at least a part of the operations described in the above embodiment. For example, each function in devices 10 and 10A may be realized by a control program stored in the memory 1002 and operated on the processor 1001. Although the above-described processes have been executed by one processor 1001, they may be executed simultaneously or sequentially by two or more processors 1001. The processor 1001 may be implemented by one or more chips. The program may also be transmitted from a network via a telecommunications line.
[0096] The memory 1002 is a computer-readable recording medium and may consist of at least one of the following: ROM (Read Only Memory), EPROM (Erasable Programmable ROM), EEPROM (Electrically Erasable Programmable ROM), RAM (Random Access Memory), etc. The memory 1002 may also be called a register, cache, main memory, etc. The memory 1002 can store executable programs (program code), software modules, etc., for carrying out information processing according to one embodiment of the present disclosure.
[0097] The storage 1003 is a computer-readable recording medium and may consist of at least one of the following: an optical disc such as a CD-ROM (Compact Disc ROM), a hard disk drive, a flexible disk, a magneto-optical disk (e.g., a compact disc, a digital multipurpose disc, a Blu-ray® disc), a smart card, flash memory (e.g., a card, a stick, a key drive), a floppy® disk, a magnetic strip, etc. The storage 1003 may also be called an auxiliary storage device. The storage medium provided by devices 10 and 10A may be, for example, a database, server, or other suitable medium including at least one of the memory 1002 and the storage 1003.
[0098] The communication device 1004 is hardware (transceiver / receiver device) for communicating between computers via at least one of a wired network and a wireless network, and is also referred to as a network device, network controller, network card, communication module, etc.
[0099] The input device 1005 is an input device that accepts input from an external source (e.g., a keyboard, mouse, microphone, switch, button, sensor, etc.). The output device 1006 is an output device that outputs to an external source (e.g., a display, speaker, LED lamp, etc.). The input device 1005 and the output device 1006 may be configured as an integrated unit (e.g., a touch panel).
[0100] Furthermore, each device, such as the processor 1001 and memory 1002, is connected by a bus 1007 for communicating information. The bus 1007 may be configured using a single bus, or different buses may be configured for each device.
[0101] Furthermore, devices 10 and 10A may be configured to include hardware such as a microprocessor, a digital signal processor (DSP), an ASIC (Application Specific Integrated Circuit), a PLD (Programmable Logic Device), and an FPGA (Field Programmable Gate Array), and some or all of each functional block may be realized by such hardware. For example, the processor 1001 may be implemented using at least one of these hardware components.
[0102] The processing procedures, sequences, flowcharts, etc., of each aspect / embodiment described in this disclosure may be reordered, provided they do not contradict each other. For example, the methods described in this disclosure present various step elements using exemplary order and are not limited to the specific order presented.
[0103] Input and output information may be stored in a specific location (e.g., memory) or managed using a management table. Input and output information may be overwritten, updated, or appended to. Output information may be deleted. Input information may be transmitted to other devices.
[0104] The determination may be made by a value represented by one bit (0 or 1), by a boolean value (true or false), or by a numerical comparison (for example, a comparison with a predetermined value).
[0105] Each aspect / embodiment described in this disclosure may be used individually, in combination, or switched between as needed during implementation. Furthermore, notification of specific information (e.g., notification that "X is") is not limited to explicit notification, but may also be implicit (e.g., by not providing such notification).
[0106] Although the present disclosure has been described in detail above, it will be clear to those skilled in the art that the present disclosure is not limited to the embodiments described herein. The present disclosure can be implemented in modified and altered forms without departing from the intent and scope of the present disclosure as defined by the claims. Therefore, the descriptions in the present disclosure are illustrative and not intended to be restrictive in any way.
[0107] Software should be broadly interpreted to mean instructions, instruction sets, code, code segments, program code, programs, subprograms, software modules, applications, software applications, software packages, routines, subroutines, objects, executable files, execution threads, procedures, functions, and so on, whether they are called software, firmware, middleware, microcode, hardware description languages, or by any other name.
[0108] Furthermore, software, instructions, information, etc., may be transmitted and received via a transmission medium. For example, if software is transmitted from a website, server, or other remote source using at least one of wired technology (such as coaxial cable, fiber optic cable, twisted pair, or digital subscriber line (DSL)) and wireless technology (such as infrared or microwave), then at least one of these wired and wireless technologies is included in the definition of a transmission medium.
[0109] The terms “system” and “network” as used in this disclosure are interchangeable.
[0110] Furthermore, the information, parameters, etc., described in this disclosure may be expressed using absolute values, relative values from a predetermined value, or corresponding other information.
[0111] As used in this disclosure, the terms “determining” and “determining” may encompass a wide variety of actions. “Determining” may include, for example, judging, calculating, computing, processing, deriving, investigating, looking up, searching, or inquiring (e.g., searching in a table, database, or other data structure), or ascertaining. “Determining” may also include receiving (e.g., receiving information), transmitting (e.g., sending information), inputting, outputting, or accessing (e.g., accessing data in memory). Furthermore, "judgment" and "decision" can include considering something as having been "judged" or "decided" after resolving, selecting, choosing, establishing, comparing, etc. In other words, "judgment" and "decision" can include considering something as having been "judged" or "decided" after some action. Also, "judgment (decision)" can be reinterpreted as "assuming," "expecting," or "considering."
[0112] The terms “connected,” “coupled,” or any variation thereof, mean any direct or indirect connection or coupling between two or more elements, and may include the presence of one or more intermediate elements between two elements that are “connected” or “coupled” with each other. The coupling or connection between elements may be physical, logical, or a combination thereof. For example, “connection” may be reinterpreted as “access.” As used in this disclosure, two elements may be considered to be “connected” or “coupled” with each other using at least one of one or more wires, cables, and printed electrical connections, and, in some non-limiting and non-exclusive examples, electromagnetic energy having wavelengths in the radio frequency domain, microwave domain, and optical (both visible and invisible) domain.
[0113] In this disclosure, the phrase "based on" does not mean "based solely on" unless otherwise specified. In other words, the phrase "based on" means both "based solely on" and "based at least on."
[0114] Any reference to elements using the designations “first,” “second,” etc., as used in this disclosure does not generally limit the quantity or order of those elements. These designations may be used in this disclosure as a convenient way to distinguish between two or more elements. Accordingly, references to the first and second elements do not imply that only two elements may be employed, or that the first element must precede the second element in any way.
[0115] Where the terms “include,” “including,” and variations thereof are used in this disclosure, these terms are intended to be inclusive, as is the term “comprising.” Furthermore, the term “or” as used in this disclosure is not intended to mean exclusive OR.
[0116] In this disclosure, if articles are added through translation, such as a, an, and the in English, this disclosure may include the fact that the noun following these articles is plural.
[0117] In this disclosure, the term "A and B are different" may mean "A and B are different from each other." The term may also mean "A and B are each different from C." Terms such as "separate" and "combine" may be interpreted similarly to "different."
[0118] 10, 10A...Device, 11...Input unit, 12...Speech history storage unit, 13...Graph calculation unit, 14...Topic detection unit, 15...Extraction unit, 16...Response generation unit, 17...Advertisement acquisition unit, 18...Strategy generation unit, 20...Advertisement information storage unit.
Claims
1. A device comprising: a graph calculation unit that generates relational information showing the relationships between multiple words based on general knowledge and links the user to the relational information based on information about the user's past utterances; a topic detection unit that detects information about a topic based on information about the user's current utterances; an extraction unit that acquires information about related topic words indicating related topics based on the topic information and the relational information; and a response generation unit that generates a response based on the information about related topic words and outputs the response.
2. The apparatus according to claim 1, wherein the response generation unit generates a prompt that includes an instruction to generate a topic using information about related topic words, and generates the response by inputting the prompt into a large-scale language model.
3. The apparatus according to claim 2, wherein the relational information is a knowledge graph including a plurality of entities and relations indicating the relationships between the plurality of entities, and the information relating to the related topic words is structural information including nodes and edges.
4. The apparatus according to claim 1, further comprising an advertisement acquisition unit that acquires information about advertisements based on the information about related topic words, wherein the response generation unit generates the response based on the information about related topic words and the information about advertisements.
5. The apparatus according to claim 4, wherein the response generation unit generates a prompt that includes an instruction to present an advertisement using information related to relevant topic words and information related to advertisements, and generates the response by inputting the prompt into a large-scale language model.
6. The apparatus according to claim 1, further comprising: an advertising acquisition unit that acquires information about an advertisement based on the information about the related topic words; and a strategy generation unit that generates a dialogue scenario based on the information about the related topic words and the information about the advertisement, wherein the response generation unit generates the response based on the dialogue scenario.
7. The apparatus according to claim 6, wherein the dialogue scenario includes intermediate reasoning and planning steps to reach the goal of the dialogue, and instructions to present an advertisement using information on relevant topic words and information on the advertisement, and the response generation unit generates the response by inputting the dialogue scenario into a large-scale language model.
8. A method comprising: generating relational information indicating the relationships between multiple words based on general knowledge, and linking the user to the relational information based on information about the user's past utterances; detecting topical information based on information about the user's current utterances; obtaining related topical words indicating related topics based on the topical information and the vectorized relational information; and generating a response based on the related topical words and outputting the response.