Dialogue system
A dialogue system, or conversational agent, is a computer system intended to converse with a human. Dialogue systems employed one or more of text, speech, graphics, haptics, gestures, and other modes for communication on both the input and output channel.
The elements of a dialogue system are not defined, however they are different from chatbot.. The typical GUI wizard engages in a sort of dialog, but it includes very few of the common dialogue system components, and dialog state is trivial.
Background
After dialogue systems based only on written text processing starting from the early Sixties, the first speaking dialogue system was issued by the DARPA Project in the USA in 1977. After the end of this 5-year project, some European projects issued the first dialogue system able to speak many languages. Those first systems were used in the telecom industry to provide phone various services in specific domains, e.g. automated agenda and train tables service.Components
What sets of components are included in a dialogue system, and how those components divide up responsibilities differs from system to system. Principal to any dialogue system is the dialog manager, which is a component that manages the state of the dialog, and dialog strategy. A typical activity cycle in a dialogue system contains the following phases:- The user speaks, and the input is converted to plain text by the system's input recognizer/decoder, which may include:
- * automatic speech recognizer
- * gesture recognizer
- * handwriting recognizer
- The text is analyzed by a Natural language understanding unit, which may include:
- *Proper Name identification
- * part of speech tagging
- * Syntactic/semantic parser
- The semantic information is analyzed by the dialog manager, that keeps the history and state of the dialog and manages the general flow of the conversation.
- Usually, the dialog manager contacts one or more task managers, that have knowledge of the specific task domain.
- The dialog manager produces output using an output generator, which may include:
- * natural language generator
- * gesture generator
- * layout manager
- Finally, the output is rendered using an output renderer, which may include:
- * text-to-speech engine
- * talking head
- * robot or avatar
Types of systems
Dialogue systems fall into the following categories, which are listed here along a few dimensions. Many of the categories overlap and the distinctions may not be well established.- by modality
- * text-based
- * spoken dialogue system
- * graphical user interface
- * multi-modal
- by device
- * telephone-based systems
- * PDA systems
- * in-car systems
- * robot systems
- * desktop/laptop systems
- ** native
- ** in-browser systems
- ** in-virtual machine
- * in-virtual environment
- * robots
- by style
- * command-based
- * menu-driven
- * natural language
- * speech graffiti
- by initiative
- * system initiative
- * user initiative
- * mixed initiative
Natural dialogue systems
- Adaptivity of the system
- Support of implicit confirmation
- Usage of verification questions
- Possibilities to correct information that have already been given
- Over-informativeness
- Support negations
- Understand references by analyzing discourse and anaphora
- Natural language generation to prevent monotonous and recurring prompts
- Adaptive and situation-aware formulation
- Social behavior
- Quality of speech recognition and synthesis
Performance
Some authors measure the dialogue system's performance in term of percentage of sentences completely right, by comparing model of sentences.Applications
Dialogue systems can support a broad range of applications in business enterprises, education, government, healthcare, and entertainment. For example:- Responding to customers' questions about products and services via a company's website or intranet portal
- Customer service agent knowledge base: Allows agents to type in a customer's question and guide them with a response
- Guided selling: Facilitating transactions by providing answers and guidance in the sales process, particularly for complex products being sold to novice customers
- Help desk: Responding to internal employee questions, e.g., responding to HR questions
- Website navigation: Guiding customers to relevant portions of complex websites—a Website concierge
- Technical support: Responding to technical problems, such as diagnosing a problem with a product or device
- Personalized service: Conversational agents can leverage internal and external databases to personalize interactions, such as answering questions about account balances, providing portfolio information, delivering frequent flier or membership information, for example
- Training or education: They can provide problem-solving advice while the user learns
- Simple dialogue systems are widely used to decrease human workload in call centres. In this and other industrial telephony applications, the functionality provided by dialogue systems is known as interactive voice response or IVR.
Toolkits and architectures
A survey of current frameworks, languages and technologies for defining dialogue systems.Name & Links | System Type | Description | Affiliation | Environment | Comments |
AIML | Chatterbot language | XML dialect for creating natural language software agents | Richard Wallace, Pandorabots, Inc. | ||
ChatScript | Chatterbot language | Language/Engine for creating natural language software agents | Bruce Wilcox | ||
CSLU Toolkit | a state-based speech interface prototyping environment | OGI School of Science and Engineering M. McTear Ron Cole | are from 1999. | ||
Domain-independent toolkit | complete multilingual framework for building natural language user interface systems | LinguaSys | out-of-box support of mixed-initiative dialogs | ||
Olympus | complete framework for implementing spoken dialogue systems | Carnegie Mellon University | |||
Multimodal Platform | Platform for developing multimodal software applications. Based on State Chart XML | Ponvia Technology, Inc. | |||
VXML Voice XML | Spoken dialog | multimodal dialog markup language | developed initially by AT&T then administered by an industry consortium and finally a W3C specification | Example | primarily for telephony. |
SALT | markup language | multimodal dialog markup language | Microsoft | "has not reached the level of maturity of VoiceXML in the standards process". | |
Quack.com - QXML | Development Environment | company bought by AOL | |||
Domain-independent toolkit | hybrid symbolic/statistical framework for spoken dialogue systems, implemented in Java | University of Oslo | |||
dialog engine and dialog modeling | Creating natural dialogs / dialogue systems. Supports dialogue acts, mixed initiative, NLG. Implemented in Java. | Markus M. Berg | create XML-based dialog files, no need to specify grammars, publications are from 2014 |