Before putting your chatbot into production, there are some essential steps to follow in its design to ensure its proper functioning and future success. Here are 10 steps to make a successful chatbot:

 

Restricting fields of expertise

Just like humans, chatbots are not encyclopedias. They don’t know everything and can’t do everything. It is therefore necessary to choose a “specialty” and define your chatbot’s field of action, i.e. his areas of expertise and knowledge. For example, a chatbot specialized in insurance contracts will not be trained in taking orders for pizzas.

Nowadays, the most successful chatbots manage about 50 different scenarios or manage a hundred of them in a moderate way. If the chatbot’s areas of expertise are too varied, the bot’s performance decreases and cases of confusion increase.

Varying vocabulary

Each individual has their own vocabulary. Not everyone formulates the same idea in the same way, and the same goes for asking questions: thus, there are several variants for the same question. These are called “alternative” questions.

It is therefore encouraged to use diverse and varied formulations and a technical and “popularized” vocabulary, in other words understandable by all. If only banking jargon is used in the design of a chatbot for a bank, the bot may not understand questions formulated in simpler vocabulary. Customers, on the other hand, may not understand the answers given by the chatbot.

Varying the vocabulary in the chatbot’s training data (questions) and in the chatbot’s answers will capture the attention of all users.

Identifying the questions that will be asked the most

When designing a chatbot, the knowledge and training data is built within the company. Sometimes it is business experts who provide the knowledge. However, limiting oneself to this “expert” approach will only answer the “simplest” user questions. The purpose of the chatbot is to provide answers to both expert and novice users.

Example: a user has been using a software for several years but can’t remember how to make a query. This “expert” user knows what a query is. A new user will not necessarily know what a query is when he starts using the software. Therefore, he will have to answer the question “How to make a query?” as well as “What is a query?”.

Writing short and effective answers

Long answers have no place in a chatbot. Users want answers to their questions without having to read a novel to each one. The ideal is therefore to write concise and precise answers.

In case more detailed explanations are required, it is wise to propose one that will allow the user, if he wishes, to learn more about the subject by redirecting him to a document or a website (example of button title: “Learn more”). The bot can also restart the conversation with an open question or suggest other knowledge to the user.

Managing cases of failure

« Sorry, I did not understand » is a response that generates frustration for the user. It is better to express the misunderstanding in a positive way. The bot may answer “Unfortunately, I don’t have enough knowledge on this subject” or “I don’t have infused science, after all I’m onlya chatbot!”. This will give your chatbot a personality and the user will be more tolerant.

In the event that the chatbot has no answer to a user’s question, the chatbot may also offer the user one or more solutions that will allow him to find an answer to his question. For example, the bot can propose to the user to reformulate his question or propose actions in the form of buttons (“Help”, “Menu”, “Back”, “Contact us”, etc.).

Managing off-topic messages and questions

It’s best to make sure a bot knows how to answer “serious” questions before you know how to tell jokes or respond courteously to insults. Users are sometimes curious, and it is almost inevitable to avoid certain scenarios such as insults, jokes or weather. Be aware that users who ask for the weather, song lyrics, a recipe or the day’s TV program are rare.

Faced with these off-topic messages, insults or jokes, responses may vary depending on your chatbot’s area of expertise or your users’ profile, as responding to these types of scenarios could fuel this type of behavior. Responding to a joke with humor or friendliness will give your chatbot a personality of its own. However, depending on your chatbot’s area of expertise, a simplistic professional response such as “I’m sorry, I’m a professional chatbot. How about we go back to a more serious conversation?” might be more appropriate. You can, however, create variations to answer each topic that is outside the bot’s area of expertise.

Integrating the chatbot in the company’s information system

If your chatbot is a FAQ, there is no need to integrate it into your company’s computer system (IS). However, in case your chatbot needs to access some information, it will be necessary to connect it to the company’s IS through a software interface (API) or through robotic process automation (RPA) tools.

Providing transfer to a human and/or user feedback

In certain cases of use, it is essential to provide for a transfer to a human agent. For example, a chatbot can help to relieve the after-sales service, but a chatbot alone cannot meet all the needs of the users. A misunderstanding of the bot could degrade the satisfaction of the customer who would not get an answer to his needs. A transfer to a human operator is sometimes necessary.

User feedback allows you to receive feedback on the use of the chatbot, its knowledge, performance, and user satisfaction. They allow you to make statistics and make continuous improvements to your chatbot.

Testing the chatbot

The test phases are the most important: they allow you to check the proper functioning of your chatbot’s NLP/NLU engine, its comprehension, to verify the relevance of the content of the answers and to evaluate the content according to a client approach.

Internal tests allow to improve the operation of the bot, tests with business experts allow to evaluate the content of the chatbot’s knowledge (if they did not participate in the realization of the bot’s knowledge). You can also carry out test phases on demonstration environments in real conditions in order to obtain feedback from outside the company.

Designating one or more “bot masters”

The “bots masters”, “coaches”, “bot sitters” or “chatbot scriptwriters” are the people designated within the company to continuously improve the chatbot. In addition to the teams that improve the chatbot engine, it is also necessary to improve and update chatbot knowledge, manage user feedback, and, if necessary, diversify its areas of expertise. The bots masters thus make it possible to bring new knowledge to the bot.

What about Hubi?

Hubi has been designed and tested by Hubi.ai teams and Hub Collab business experts. The Hubi.ai teams are continuously improving the engine and the bot knowledge in order to best satisfy customers’ requests. The contextualization of Hubi modules allows to silo the bot’s skills and then deploy them where it will need them the most!

Camille is a computational linguist by training. Following two experiences in Parisian start-ups on named entity recognition and callbots, she recently joined the Hubi.ai team at Hub Collab as a chatbot scriptwriter.