What is a chatbot?
A chatbot is an artificial intelligence (AI) software that can imitate a voice communication (or a chat) with a user in natural language through messaging applications, websites, mobile apps or through the telephone.
A well designed & built chatbot will:
- Use existing conversation data (if available) to understand the type of questions people ask.
- Examine right answers to those questions through a ‘training’ period.
- Use machine learning & NLP to learn context, and continually get improved at answering those questions in the future.
Why are chatbots important?
A chatbot is often described as one of the most advanced and promising expressions of interaction between humans and machines. However, from a technological point of view, a chatbot only represents the natural development of a Question Answering system leveraging Natural Language Processing (NLP). Formulating outcome to questions in natural language is one of the most typical Examples of Natural Language Processing applied in several enterprises’ end-use applications.
There are two different tasks at the core of a chatbot:
1) User request analysis: This is the first task that a chatbot executes. It analyzes the user’s request to identify the user intent and to extract relevant entities. The quality to identify the user’s intent and extract data and relevant entities contained in the user’s request is the first condition and the most relevant step at the core of a chatbot: If you are not able to correctly interpret the user’s request, you won’t be able to provide the correct answer.
2) Returning the response: Once the user’s purpose has been identified, the chatbot must render the most suitable response for the user’s request. The answer may be:
• a generic and predefined text
• a text retrieved from a knowledge base that contains various answers
• a contextualized piece of information based on data the user has provided
• data stored in enterprise systems
• the result of an action that the chatbot performed by interacting with one or more backend application
Types of Chatbots
Chatbots have a wide variety of uses. From 24/7 customer support responses to sales information and marketing, you’ll likely be able to find a way chatbots can work for you.
There are various kinds of chatbots to consider as well, including:
- Menu and button-based. This is the most fundamental chatbot option. It can be simple yet effective in handling commonly-asked questions.
- Contextual. This is by far the most sophisticated chatbot of the three types. Contextual chatbots often use a combination of Machine Learning (ML) and AI. They will listen and understand what users tell them, and use that experience to learn and grow over time.
- Keyword recognition-based. These types of chatbots are more like a conversational search engine embedded into a chat window. They use select keywords to return an answer you might be looking for.
There are also chatbots that combine a few of these technologies. You might see a keyword chatbot implement some menu button choices, for example, to help overcome any keyword redundancy issues.
Some examples of chatbots which we use in our day to day life
- Alexa: Amazon’s Alexa is by far the most successful chatbot. It is adequate to voice interaction, play music, creating to-do lists, setting alarms, welling out podcasts, playing audiobooks, and providing weather, traffic, sports, and other real-time information, such as news. Alexa can also control various smart devices using itself as a home automation system.
- Google Assistant: An artificial intelligence based chatbot is Google Assistant. It is a virtual assistant developed by Google that is works on mobile and smart home devices. Users mainly interact with the Google Assistant through natural voice, although users can also use keyboard to give commands to google assistant.