Chatbot and Its Model

Published Date: 2017-07-06 23:03:54
Category: Technology Trends
Hits: 875

Chatbot is a computer program developed and intended to simulate conversation with people using artificial intelligence over different channels. These programs are designed to simulate how a human would behave as a chatty partner. Chatbot responses to user messages are smart enough for user to continue the conversation.  

In most situation, chatbots do use Natural Language Processing Systems while others do use simple system that can scan keywords within the input and pull a reply with the most matching keywords or based on a pattern.

Chatbots for business are regularly transactional, and they have a precise purpose. Conversation is naturally focused on user’s needs. For example, Traffic Chatbot provides information about the traffic and the best route to use, travel chatbot is providing an information about flights, hotels, and tours and helps to find the best package per user’s conditions. Unevenly we can split chatbot and its usage into two categories; narrow (customer service, weather forecast, marketing, diverse business issues and questions) and general purpose (entertainment, science).

Whether the chatbot you are using has an extremely custom-made task or it’s keen to sustaining whatever destination conversation flow takes – it’s vital to know and appreciate the approaches that was used during the development of the chatbot. There are two main models in building chatbots: retrieval-based and generative-based.


Retrieval-based Model

Retrieval-based is based on retrieving responses from the database depending on the keyword or phrase used by people as input. Based on this, it’s obvious that the chatbot is measured by the responses that are stored in the database or file system. The limitation with these model is that the number of keywords are limited and when conversation goes beyond the topic or keywords, conversation cannot proceed further. Although this model is useful when people don’t expect too much human-like conversation and expects it to have narrow topics.

Irrespective of these limitation, most people still develop chatbot using this model because it’s easy to apply and it also saves time. This can be partly categorized as narrow.


Generative-based Model

Generative-based model is the one that empowers chatbot to create responses in real time. These chatbots are referred to as the Smart Ones. To build using generative model and make it work flawlessly can be challenging as it requires using machine translation to translate content and context to the machine rather than relying on the predefined keywords or phrases. It generates text on its own based on the understanding of a giving question or comment from people. 

The purposes of the chatbots based on the generative model are extensive and don’t typically point toward any task and the conversation could go in whatsoever direction the person communicating picks.

Generative models are hard to understand and setup they do not rely on the predefined class and generate text of their own per the understandings of a giving question or statement. Generative models work with Machine Translation and translate the content and context to the machine. They generate brand new responses from the scratch and put them in front of the user.


In summary, chatbot is vital and most organizations are looking at implementing a chatty system that can communicate with customer or users. As an organization decides on the chatbot they want to implement, it’s important to know that both models have some pros and cons, Retrieval-based models don’t usually make grammatical errors because there is a predefined keywords or phrases and everything is corrected. Also, retrieval-based models are good if the bot is just executing small tasks while generative models are smarter; their replies are further human like.