Why is a Chatbot so important?
A chatbot is a concept that is of interest to almost any organization. Chatbots provide a customer friendly answering service, so it fits in many strategies. The challenge, however, is to implement a chatbot in the correct way (added to all kinds of applications, like websites and web shops) so they really deliver benefits to customers. A chatbot is an Artificial Intelligence (AI) solution, so it’s complex on the inside and it’s simple on the outside.
The concept description and visualization, on this page, is intended to make it more easy to make the chatbot concept and its principle part of the Enterprise Architecture.
Enterprise Architecture Diagram (Concepts Overview), showing the Chatbot concept.
Chatbot Definition
What is a chatbot? A chatbot is an applicative solution, like a computer program, designed to simulate the conversation with human users, especially over the internet.
Types of Chatbots
There is not one type of chatbot. In practice we see the following types occur often, each with their own specialization:
- Generative Chatbots – generate their answer
- Retrieval-Based Chatbots – retrieve their answer
- Pattern-Heuristics Based Chatbots – use sophisticated pattern search techniques to find their answer (very hard
- Machine Learning Chatbots – create new patterns and templates themselves in order to be able to return answers that were not preprogrammed. Chatbots make use of language analytics technologies. These technologies are called:
- 1) NLP – Natural Language Processing. It is the ability of an application to digest and break down an incoming question message from a user as language, so an application can process it. And also the ability to analyze the input and construct an answering message in the natural language and post it back to the user.
- 2) NLU – Natural Language Understanding. It is a subset of NLP and focuses on how to most effectively structure and model the input for optimal processing by an application.
- 3) NLG – Natural Language Generation. It is the ability to generate a message in the form of natural language.
Chatbot Principle
How does a chatbot work? What is the principle of the chatbot concept?
Architecture is a coherent set of concepts of a system or a structure. The way a concept works is the principle of the concept. A principle is a working mechanism, not a general rule or guideline. In order to be able to implement a chatbot successfully, an architect must know and understand the principle of the chatbot concept.
To describe the first principle of a generic chatbot, a statement that catches the whole working mechanisms in one sentence, that everyone will agree on, is hard to do.
A principle statement agreed by many is: “By having an intelligent (self-learning) answering mechanism that make use of selection and decision techniques, it is ensured that an application is capable of always answering questions with a certain context, without the exact answer or question being programmed and with that can give ever better and more answers than humans and can replace humans for this task, without it even being noticed by the users of the chatbot.”
Chatbot Requirements
Chatbot is a concept that can be made part of enterprise architecture, and then the principle of the chatbot concept becomes an architecture principle.
Depending on the strategy and other requirements coming key stakeholders, based on their issues, needs and concerns, an architect can propose that the chatbot concept is needed or required for the company.
The architect bases this on personal experience and knowledge on the principles and results of the concept.
Common requirements that make architects to propose the chatbot concept:
- We need to increase the number of shoppers on our site we can instantly help and answer personally
- We need to increase the capacity of our service desk
- We need to be able to automatically learn from the answers we provided to clients
- We need to be less dependent on certain vendors and services providers
Chatbot Model
A chatbot is almost like a normal software application, but in the case of a chatbot, the user interface is replaced with a chat interface.
Chatbots are easy to use for users, but inside they can be very complex.
Below is a simple reference architecture diagram that shows how a chatbot can be modeled and which key elements make sure a chatbot is capable of answering a question as provided above.
A chatbot can only work, if all of these key elements are available. With this, solution designs can be checked for presence of these key elements.