Introduction
Communication has been the essence of life from the beginning of time. Traditionally, conversations were restricted to verbal and textual interaction between humans. These interactions were usually guided by emotions, context, and awareness of previous conversations.
With the advent of computers, interactions have expanded to include machines i.e. human-machine interactions. The transitions from a command-based interface to a Graphical User Interface (GUI) to a Conversational User Interface (CUI) became natural and need-based, making communication easier.
Further enhancements facilitated the emergence of Artificial Intelligence (AI) that can process natural language (NLP). In turn, AI has contributed to Conversational Virtual Assistants that understand human communication, derive a task from this understanding and extract the information they require in order to execute this task.
AI-driven, NLP-based chat, and voice Conversational Virtual Assistants are the latest in technology and a must for contemporary enterprises.
What are Conversational Assistants?
A Conversational Virtual Assistant (VA) acts as an intelligent intermediary between people, digital systems, and internet-enabled things. It replaces the traditional Graphical User Interfaces (GUIs) of an application or website with a Conversational User Interface (CUI). It is a paradigm shift from the earlier communications achieved either by entering syntax-specific commands or clicking icons.
These Virtual Assistants are designed to converse with users through a combination of natural language-based conversations. Responses can come in the form of text, links, buttons, calendars, or other widgets that accelerate the speed with which a user can respond.
AI-powered messaging solutions or Conversational Virtual Assistants serve as the stepping stone to the future. They communicate with intelligent virtual agents, organization apps, websites, social media platforms, and messenger platforms. Users can interact with such assistants using voice or text to access information, complete tasks, and execute transactions.
Why Add a Conversational Virtual Assistant to Your Business?
In a nutshell, such an assistant can significantly reduce the amount of time and labor required to maintain specific business processes. Here is what a Conversational VA can achieve:
- Talk to people, systems and internet-enabled things,
- Perform omnichannel communication through voice and text, using natural language,
- Understand natural language, including domain-specific,
- Learn from its interactions and apply this learning in future conversations,
- Handle multi-turn conversations,
- Apply context to improve communication,
- Handle task interruptions and accomplish what users want.
How Do Conversational Virtual Assistants Work?
A Conversational Virtual Assistant works by analyzing what users say, to detect their goals and extract the information required in order to achieve that goal.
Let’s take a look at the key components and the core process that enable a Virtual Assistant to fulfill its functions.
The Key Components
Whatever the user says is considered an Utterance. The main task of the Conversational VA is to analyze the utterance and extract the intent, and entities essential to carry a conversation.
An Intent is the user’s intention and usually comes in the form of a verb or noun within the user utterance.
Entities are a collection of data or information that the VA requires to complete the task which is identified in the user intent. They can be fields, data or words that the developer designates as necessary for the VA to complete a task. Entities can either be part of a user utterance, but the VA might also need to prompt the user to provide them. An Entity can be of any type; for instance: name, location, date, time, etc.
For example, let us consider the following message that a user sends to the Virtual Assistant:
I want to fly to London this weekend.
- The entire sentence represents the Utterance;
- “I want to fly” is the Intent;
- “London” and “this weekend” form the values for the Entities representing “Destination” and “Travel Date” respectively. As you can notice, the “Source” entity value is missing and in such a case, the VA needs to ask the user where they want to fly from.
The Core Process
In order for a Conversational Virtual Assistant to work as intended, it has to simultaneously perform the following three processes:
- Detect the user’s Intent: Understand what the user wants
- Extract Entities: Obtain specific information from the user, in order to accomplish what the user wants;
- Execute the Dialog Task: Participate in the conversation process in order to accomplish what the user wants.
Building Intelligent Conversational Virtual Assistants
Virtual Assistants are not smart by default. They are designed to show some level of artificial intelligence by leveraging technologies such as machine learning, big data, natural language processing, etc. However, a Virtual Assistant is only intelligent when it can understand user needs, perspectives or context, and responds according to the user’s mood or emotion. This is only achievable through training and interaction with users, over a period of time. Here are a few suggestions that may help you increase your VA’s level of intelligence:
Build a Rich Collection of Intents and Entities
The key for a Conversational Virtual Assistant to understand humans is its ability to identify human intentions (Intents), extract relevant information IEntities) from utterances and map the relevant action/task against those utterances (Dialog Task execution). This is achievable using Natural Language Processing (NLP), which you can train according to your organization’s needs.
Develop Conversations
Managing dialogs to keep track of multiple conversation threads, remember the context, and respond to the user tone or sentiment provides the much-needed humane touch to the conversation. At the same time, this serves the user with accurate and appropriate responses, ensuring a positive experience.
Build a Knowledge Graph
In addition, having a Knowledge Graph gives the VA the ability to respond to frequently asked questions that return static responses. Building such knowledge collections is an attempt to represent entities, ideas, and events with all their interdependent properties and relations according to a system of categories. This structured categorization of data helps the VA to answer user queries effectively and with ease.
Virtual Assistant Types
The following are the different types of Conversational Virtual Assistants supported by the Kore.ai XO Platform:
Standard Assistants
Standard VAs are the most common type of Virtual Assistants. They allow you to create dialog, alert, action and information tasks, as well as knowledge graphs, as well as flows that map one task to another. Please refer to Defining a Standard VA for details.
Universal Assistants
Universal bots facilitate a scalable, modular approach to Virtual Assistant building by helping you link several of them into one. The universal bot executes all the tasks and functions of the linked VAs by routing the relevant utterances to them. Once you publish a universal bot, changes made in the linked VAs automatically reflect in the universal bot. As a creator or developer of a universal bot, you can add multiple VAs (published and configured) to the universal bot and access their underlying tasks and functions. When you publish a universal bot, the end users can only access the tasks that are published in the linked VAs. For more information, refer to Defining Universal Bots.
Smart Bots
Smart Bots allow enterprises to build Virtual Assistants centrally and allow various teams within the enterprise to reuse and extend the VA configurations to suit their requirements. Smart Bots expedite the Virtual Assistant building process by allowing new bots to inherit the configuration and tasks of pre-defined virtual assistants. For more information, refer to Defining Smart Bots.
VA Templates
You can install one or more fully functional, end-to-end Kore.ai template-based VAs from the Bot Template Store, then customize and publish to understand how to configure Virtual Assistants. For more information, refer to Store.