System and procedure for a dialogue with a user
Patent Information
- Application Number
- DE102020100638
- Authority / Receiving Office
- DE · DE
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2020-01-14
- Publication Date
- 2025-08-21
- Estimated Expiration
- 2040-01-14
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
[0001] The present disclosure relates to a system and method for engaging in dialogue with a user. In particular, the present disclosure relates to a bot or digital assistant capable of engaging in a free, informed, and goal-oriented dialogue with a user. State of the art
[0002] Users can engage in dialogue with intelligent personal assistants, for example, about a vehicle in general, vehicle functions, digital services, etc. In particular, users may tend to ask questions about everything. Furthermore, users often want to conduct a conversation and complete tasks simultaneously. However, the capabilities of existing conversational systems are limited and rely either on hybrid approaches or neural multitasking approaches. Existing conversational systems generally cannot simultaneously conduct a free ("chatty") and informed or goal-oriented dialogue. They are either freely generated (and often meaningless and goalless) or very rigid and manually created.
[0003] US 2016 / 0055240 A1 describes a virtual personal assistant with a goal-oriented understanding component, an interaction manager and a response generator.
[0004] DE 11 2016 003 459 T5 shows in the Fig. 7B a digital assistant with a dialogue processing module, a task flow processing module and a speech synthesis module. Disclosure of the invention
[0005] It is an object of the present disclosure to provide a system and a method for a dialogue with a user that enables a free, informed and goal-oriented dialogue with a user.
[0006] This object is achieved by the subject matter of the independent claims. Advantageous embodiments are specified in the subclaims.
[0007] According to an independent aspect of the present disclosure, a system for dialogue with a user is provided. The system comprises an interface for receiving utterances and outputting responses to conduct a dialogue with the user; a goal-oriented subsystem for performing a task and / or determining information; and a conversation subsystem for generating a dialogue output (e.g., a "neural conversation subsystem" and a "neural dialogue subsystem," respectively), wherein the goal-oriented subsystem and the conversation subsystem are configured such that the goal-oriented subsystem controls the generation of the dialogue output of the conversation subsystem to enable a fluid dialogue with the user to perform a task and / or answer a question.
[0008] A Neural Conversation System can be trained as a neural network using historical conversation data, particularly historical dialogue sequences. The trained model generates a response / dialogue output for the current utterance based on current utterances and, if necessary, in combination with immediately preceding utterances.
[0009] In the context of the present disclosure, determining information refers to an informative dialogue / question-answering dialogue (e.g., through knowledge retrieval). In particular, a superset of the actual answer can be determined, such as one or more documents that explicitly or implicitly contain the answer(s) or references to the answers that match or are similar to a question in one or more sections. This can be incorporated into the dialogue generation of the conversation subsystem or added dynamically.
[0010] According to the invention, a goal-oriented subsystem and a conversation subsystem are used in combination to enable a free, yet simultaneously informed / fact-based and goal-oriented dialogue for performing a task and / or answering a question. In particular, the goal-oriented subsystem controls the dialogue output or response generation of the conversation subsystem. This enables a free, goal-oriented, and fact-based dialogue with a user.
[0011] The goal-oriented subsystem can, for example, recognize a user's intent or question and extract certain aspects from an utterance. If, for example, a question is present, an answer can be provided by the goal-oriented subsystem and dynamically added to the dialog output generation by the conversation subsystem. In another example, the answer can also be provided as a superset by the goal-oriented subsystem and dynamically added to the dialog generation by the conversation subsystem. If execution of a task is intended, the task can be completed by the goal-oriented subsystem. If necessary, queries are asked to obtain further information and fill in gaps. The queries, task results, or their language model representations are dynamically added to the dialog output generation of the conversation subsystem.
[0012] The basis of dynamic addition is to use all control information or context information, such as relevant documents for answering a question, relevant queries for a task such as the user's utterances themselves as text and to add them in addition to the user's utterances (conversation history) for the answer generation of the conversation subsystem.
[0013] As an alternative to the pure, direct one-to-one addition of the text, in some embodiments a semantic representation of the respective control information or context information based on a language model, e.g. a transformer-based model such as BERT, can also be added (“Latent Semantic Space Embedding”).
[0014] Alternatively, control information or context information can also be provided as a knowledge graph. This can then be converted into text and added, or alternatively, in a semantic representation based on a language model, e.g., a transformer-based model such as BERT.
[0015] This enables a fluid, goal-oriented and fact-based dialogue with a user.
[0016] The goal-oriented subsystem and the conversation subsystem are implemented by software, and in particular by neural networks.
[0017] The goal-oriented subsystem can be configured to achieve a specific goal, and in particular, to complete a task. For example, the goal-oriented subsystem can answer questions and / or complete tasks such as booking a hotel, a workshop appointment, etc. In this case, the goal-oriented subsystem can be referred to as a "task-oriented subsystem."
[0018] In some embodiments, the goal-oriented subsystem can retrieve rudimentary ("rough," "more than necessary") information, e.g., documents about parking in general, and add this as context to the (overall) conversation history. In other words, no pre-formulated answers ("golden / white answers") are provided by the goal-oriented subsystem. The generation of fully formulated answers is handled by the conversation subsystem.
[0019] Preferably, the goal-oriented subsystem is configured to execute a single-step or multi-step task. A single-step task can be, for example, answering a question, making a call, etc. A multi-step task can be completing a travel booking, booking a workshop appointment, etc.
[0020] Preferably, the conversation subsystem is configured for chitchat. For example, a "Generative Transformer Model" or another data-driven end-to-end neural conversation model can be used. In particular, the conversation subsystem is capable of conducting a dialogue or conversation while avoiding repetition, ensuring fluidity, and allowing the dialogue to be meaningful. Other characteristics can also be present, such as engaging, listening, curious, and emotional.
[0021] Preferably, the goal-oriented subsystem and the conversation subsystem operate in parallel or in series. A check by the goal-oriented subsystem always occurs before the final output of the conversation subsystem. This means that these terms refer to parallelism or sequentiality within a turn / dialog step.
[0022] Preferably, the conversation subsystem is configured to initiate a dialogue with the user based on the utterance received at the interface. For example, the system is further configured to integrate initial context knowledge into the dialogue generation. The initial context knowledge can be selected appropriately for the current situation. The initial context knowledge can, for example, concern personal information regarding the user, vehicle specifics, the task / service / question, etc.
[0023] The initial context knowledge serves as a permanent preconfiguration, a "quasi-basic knowledge" that is always available during the ongoing conversation and can be used to generate responses. A distinction can be made between the following aspects: a) The initial context knowledge is added to the conversation only once, namely initially, i.e. as a one-time initial input to the neural response generator (conversation subsystem); or b) The initial context knowledge is constantly provided in addition to the dynamic context (control information or context information); or c) The initial context knowledge is (repeatedly) added periodically or aperiodically in order to “repeatedly refresh” the initial context knowledge, ie to repeatedly direct the attention of the response generation to this context knowledge.
[0024] For example, the dialogue generation by the conversation subsystem can be initialized with static general factual knowledge regarding the goal or task. This general factual knowledge can, for example, concern general facts about cars for an automotive expert, general facts about financial services for a financial expert, general IT facts for an IT hotline expert, etc. The knowledge is static, i.e., it is available in advance; the dialogue flow and the utterances generated by the user or the system (conversation flow or retrospective conversation history) are then dynamic.
[0025] Preferably, the system is further configured to perform a fact check on the dialog output. For this purpose, a fact or service policy layer can be used, for example, to fact-check the response generated by the conversation subsystem. This can prevent the user from receiving answers that are incorrect in content.
[0026] According to a further independent aspect of the present disclosure, a system for dialogue with a user is provided. The system comprises an interface for receiving utterances and outputting responses; one or more processors in communication with the interface; a memory in communication with the one or more processors, the memory comprising code that, when executed, causes the one or more processors to control the system to receive an utterance at the interface and output responses for conducting a dialogue with the user; and a goal-oriented subsystem and a conversation subsystem to operate such that the goal-oriented subsystem controls generation of a conversational output of the conversational subsystem to enable a fluid dialogue with the user to perform a task and / or answer a question.
[0027] According to a further independent aspect of the present disclosure, a vehicle, in particular a motor vehicle, is specified. The vehicle comprises the system for a dialogue with a user according to the embodiments of the present disclosure.
[0028] The term "vehicle" includes cars, trucks, buses, mobile homes, motorcycles, etc., used to transport people, goods, etc. In particular, the term includes motor vehicles used to transport people.
[0029] According to a further independent aspect, a software (SW) program is described. The SW program can be configured to run on one or more processors and thereby perform the method described in this document.
[0030] According to a further independent aspect, a storage medium is provided. The storage medium can comprise a software program configured to be executed on one or more processors and thereby to carry out the method described in this document. Short description of the drawings
[0031] Embodiments of the disclosure are illustrated in the figures and are described in more detail below. They show: Fig. 1 a system for a dialogue with a user according to embodiments of the present disclosure, Fig. 2 an initialization of a generated dialogue with a user using context knowledge, and Fig. 3 is a flowchart of a method for engaging with a user in accordance with embodiments of the present disclosure. Embodiments of the disclosure
[0032] In the following, unless otherwise stated, the same reference symbols are used for identical and equivalent elements.
[0033] Fig. 1 shows a system for dialogue with a user according to embodiments of the present disclosure. Fig. 2 shows an initialization of a dialogue with a user using context knowledge.
[0034] The system 100 includes an interface (not shown) for receiving utterances and outputting responses to conduct a dialogue with the user; a goal-oriented subsystem 110 for performing a task (e.g., task fulfillment) or obtaining information (e.g., question answering); and a conversation subsystem 120 for generating a dialogue output, wherein the goal-oriented subsystem 110 and the conversation subsystem 120 are configured such that the goal-oriented subsystem 110 controls the generation of the dialogue output of the conversation subsystem 120 to enable a fluid dialogue with the user to perform a task. This enables a free, goal-oriented, and fact-based dialogue with a user.
[0035] The goal-oriented subsystem 110 can, for example, recognize a user's intent and extract certain aspects from an utterance. For example, if there is a question ("?" on the left side in Fig. 1), a response can be requested and dynamically added to the dialog output generation of the conversation subsystem. If a task is intended to be executed (“!” on the left side in Fig. 1), the task can be completed by the goal-oriented subsystem 110. If necessary, queries are asked to obtain further information and close any gaps. The queries, task results, etc., are dynamically added to the dialog output generation of the conversation subsystem 120.
[0036] The goal-oriented subsystem 110 can be configured to achieve a specific goal, and in particular to complete a task and / or answer a question. For example, the goal-oriented subsystem 110 can answer questions and / or complete tasks such as booking a hotel, a workshop appointment, etc.
[0037] In some embodiments, the goal-oriented subsystem 110 can retrieve rudimentary ("rough," "more than necessary") information, e.g., documents about parking in general, and add it as context from a database 10 to the (entire) conversation history. In other words, no pre-formulated answers ("golden / white answers") are provided by the goal-oriented subsystem 110. The generation of fully formulated answers can be performed by the conversation subsystem 120.
[0038] In some embodiments, goal-oriented subsystem 110 is configured to perform a single-turn or multi-turn task. A single-turn task may, for example, be answering a question, making a call, etc. A multi-turn task may be completing a travel booking, booking a workshop appointment, etc.
[0039] In some embodiments, the conversation subsystem 120 is configured to initiate a dialogue with the user based on the utterance received at the interface. The dialogue may, for example, be initiated based on static general factual knowledge (e.g., context from a database 10) regarding the goal or task ( Fig. 2). General factual knowledge can, for example, concern general facts about cars for an automotive expert, general facts about financial services for a finance expert, general IT facts for an IT hotline expert, etc. The knowledge is static, i.e., it is available in advance; the discussion is then dynamic.
[0040] In the example of Fig. Figure 2 shows three different types of context that can be used to initiate a dialogue. A first context concerns a person, such as the driver. Context A provides information specifically about the person. A second context B concerns a vehicle. Context B provides information specifically about the vehicle, such as technical information. A third context C concerns so-called "world knowledge," i.e., general knowledge.
[0041] The initial context can be, for example, plain text (“T” in Fig. 2) and / or as structured knowledge (“Knowledge Graph”; “sW” in Fig. 2) and / or as semantic representation (LSE = “Latent Space Embedding” in Fig. 2) are provided.
[0042] Fig. 3 shows a flowchart of a method 300 for a dialogue with a user according to embodiments of the present disclosure.
[0043] The method 300 includes, in block 310, receiving utterances from a user; in block 320, controlling generation of a dialog output of a conversational subsystem by a goal-oriented subsystem to enable a fluid dialog with the user to perform a task and / or answer a question; and, in block 330, outputting responses based on the controlled generation of the dialog output.
[0044] In the following, an exemplary sequence of the method according to the invention is explained in detail. • The system includes a goal-oriented (e.g. Task Fulfillment or Question Answering) and conversation subsystem (e.g. ChitChat): ◯ The goal-oriented AI subsystem is capable of performing a task, e.g., retrieving an answer in response to a question intent or performing a service (including slot filling) in response to a service request intent; ◯ The conversation subsystem is able to generate free (e.g. chat-like) dialogue utterances that are freely generated, but at the same time avoid repetitions, make sense, and are fluent, interesting, listening, inquisitive, inquisitive and / or emotional. • The conversation subsystem can be initiated with static general factual knowledge, i.e., static general factual knowledge related to the generic task of the conversation subsystem is added. ◯ For example, generic facts about cars can be added for an automotive expert, generic facts about financial services for a finance expert, generic IT facts for an IT hotline expert, etc. ◯ In another example, the addition can be in the form of plaintext to the plaintext conversation history or in the form of knowledge encodings in a Latent Semantic Space (added to the knowledge encoding of the conversation history), in particular using biLSTM or transformer-based encodings. • Optionally, personal knowledge about the user related to a specific conversation can be added. This can be done, for example, as plaintext, e.g., as a personal description or personality encoding, added to the initial textual context or to its encoding in hidden states when using encoding architectures (e.g., biLSTMs or Transformers). • The goal-oriented AI subsystem and the conversation subsystem are executed in parallel or sequentially. A check is always performed before the final output of the conversation subsystem. This means that this affects parallelism or sequentiality within a turn / dialogue step. • The goal-oriented AI subsystem controls the response generation of the conversation subsystem: ◯ It recognizes the intent and extracts aspects in a given utterance and dynamically adds specific factual knowledge (e.g., answers) related to the current task (e.g., question). ◯ If the intent is a question, the answer can be retrieved and added to the conversation subsystem dynamically or as a language model. ▪ The factual knowledge can be a pure text document, a paragraph, a sentence or an embedding of the text document. ▪ For example, if the topic "parking" is identified, documents about parking can be added as context to the (entire) conversation history. A transformer-based model can then generate the answer instead of retrieving a pre-formulated, golden / white answer (knowledge retrieval). ▪ The goal-oriented AI subsystem only needs to retrieve “rough” and “more than necessary” information, e.g. document(s) about parking in general as context. ◯ If the intent is to perform a task, the task is performed. If necessary, further information is requested to fill slots, with results or slot-filling questions or their language model representations being dynamically added to the conversation subsystem. • Optionally, the response generated by the conversation subsystem can be verified using a fact or service checking policy layer. • Optionally, knowledge about the user related to a specific task can be added. For example, if the user asks "Hey, what's going on with my traffic information service?", the user's knowledge of the traffic information service can be added for response generation to obtain a personalized response for that individual user. • Vehicle and / or environmental context can be added optionally. • Optionally, a new classification (“ranking”) of an answer that is causally related to other answers generated from the same factual knowledge can be carried out. ◯ For example, step 4 in a set of instructions follows step 3, even though step 3 is not part of the current conversation history. ◯ Another example is checking the correct order of instruction steps.
[0045] According to the invention, a goal-oriented subsystem and a conversation subsystem are used in combination to enable a free, yet simultaneously informed / fact-based and goal-oriented dialogue for performing a task and / or answering a question. In particular, the goal-oriented subsystem controls the dialogue output or response generation of the conversation subsystem. This enables a free, goal-oriented, and fact-based dialogue with a user.
[0046] Although the invention has been illustrated and explained in detail by means of preferred embodiments, the invention is not limited by the disclosed examples, and other variations may be derived therefrom by those skilled in the art without departing from the scope of the invention. It is therefore clear that a multitude of possible variations exist. It is also clear that the embodiments mentioned by way of example are truly only examples and should not be construed as limiting the scope, possible applications, or configuration of the invention in any way.Rather, the preceding description and the description of the figures enable the person skilled in the art to implement the exemplary embodiments in concrete terms, whereby the person skilled in the art, with knowledge of the disclosed inventive concept, can make various changes, for example with regard to the function or the arrangement of individual elements mentioned in an exemplary embodiment, without departing from the scope of protection defined by the claims and their legal equivalents, such as further explanations in the description.
Claims
[1] System (100) for a dialogue with a user, comprising: an interface for receiving utterances and outputting responses to conduct a dialogue with the user; a goal-oriented subsystem (110) for performing a task and / or determining information; and a conversation subsystem (120) for generating a dialogue output, wherein the conversation subsystem (120) is a neural conversation system, wherein the goal-oriented subsystem (110) and the conversation subsystem (120) are configured such that the goal-oriented subsystem (110) controls the generation of the dialogue output of the conversation subsystem (120) to enable a flowing dialogue with the user to perform a task and / or answer a question. [2] The system (100) of claim 1, wherein the goal-oriented subsystem (110) is configured to perform a single-stage or multi-stage task. [3] The system (100) of claim 1 or 2, wherein the conversation subsystem (120) is configured for chitchat. [4] The system (100) of any one of claims 1 to 3, wherein the target-oriented subsystem (110) and the conversation subsystem (120) operate in parallel or in series. [5] The system (100) according to any one of claims 1 to 4, wherein the conversation subsystem (120) is configured to initiate a dialogue with the user based on the utterance received at the interface, in particular based on static general factual knowledge. [6] The system (100) according to any one of claims 1 to 5, wherein the system (100) is further configured to perform a fact check of the dialogue output. [7] The system (100) of any one of claims 1 to 6, wherein the system is further configured to integrate initial context into the generation of the dialog output. [8] System for dialogue with a user, comprising: an interface for receiving utterances and outputting responses; one or more processors in connection with the interface; a memory in communication with the one or more processors, the memory comprising code that, when executed, causes the one or more processors to control the system to: to receive an utterance at the interface and output responses to conduct a dialogue with the user; and to operate a goal-oriented subsystem and a conversational subsystem such that the goal-oriented subsystem controls generation of a dialog output of the conversational subsystem to enable a fluid dialog with the user to perform a task and / or answer a question, wherein the conversational subsystem is a neural conversational system. [9] Vehicle, in particular motor vehicle, comprising the system (100) according to one of claims 1 to 8. [10] A method (300) for dialogue with a user, comprising: Receiving (310) statements from a user; controlling (320) a generation of a dialog output of a conversation subsystem by a goal-oriented subsystem to enable a flowing dialog with the user to perform a task and / or answer a question, wherein the conversation subsystem is a neural conversation system; and Output (330) of answers based on the controlled generation of the dialog output.
Citation Information
Patent Citations
speaker recognition
DE112016003459T5
Orphaned utterance detection system and method
US20160055240A1
Multi-modal dialogue agent
WO2019011824A1