Bots are literally everywhere. There is an incredible amount of information available, and it is impossible to keep up to date with all the reading and to be aware of every improvement that comes up. After spending some time doing research, we as NLP experts can say that there are 4 key features that a bot should have.
-Personality: some time ago we published an article called “can chat bots really be empathetic?” Where we talked about the personality a healthcare chatbot should have so users will accept to be treated by it. We see that personality is key not only for the healthcare sector but for any field.
It is not necessary to recreate human behavior while creating a bot, but it is necessary to give the chatbot a personality that adapts to what really matters to the user. This way, users will be more willing to engage with the bot.
As an example, the famous Facebook Messenger weather bot Poncho, besides providing you with the weather forecast, has a funny personality. Poncho manages to keep its users thanks to its personality, even if it is not always able to understand the requests.
To create the personality of a bot it is key to know how users talk to each other, the typical expressions they use, the slang, and to adjust to the vocabulary used. Human language changes over time and a bot should be able to adapt.
Providing your chatbot with multilingual morphological dictionaries can solve this challenge.
-Vocabulary/ Lexicon: as we said above, wide vocabulary is vital for a bot. Why? Because it should be ready to interact with hundreds of users with different profiles that may not use the same register to talk. Formal and informal settings must be taken into consideration.
For example, an American undergraduate that wants to order a pizza may say: “I am down for an XXL pizza”, while a middle-aged Londoner may say: “May I order a pepperoni pizza? thank you”. In the previous examples, users are ordering a pizza, but the way they expressed their intent is completely different.
We may not use all those registers, but we can understand them, and that is exactly what the bot should do to be functional.
One of the solutions available in the market is to include those synonyms manually while creating the bot. However, this takes time and resources since you would need different native speakers to provide all the possible variants of one term, and then train the bot with examples. The other solution would be to use the same morphological dictionaries we proposed for the previous feature.
-Keywords approach: Another aspect to include in this section is what happens when you order a predefined item like a "pizza” and you want to remove an ingredient like let's say "olives". If you say "I don’t want olives" will the bot be able to understand the adjustment in the original order, or is it trained to understand only the keyword?
Another example: “I’d like something else with my pizza order”. Looking for keywords in this case the bot would omit the customer’s request. It may understand “else” + “pizza” and force the customer to start the process again.
Here we can see a real example also:
Keywords are important, but it is more important to focus on how people speak, in the whole content of the phrases, to really understand the customer.
-Correcting mistakes: One of the issues we found that should be handled before launching a bot is what will happen when the user makes a mistake. Should the entire bot interaction process start all over? This is not currently an issue when navigating on a website where users can go to the previous page, however, bots need to incorporate a solution to allow users to adjust or change their previous decisions.
A personal example to illustrate this issue: I tried Poncho, and it misunderstood me and decided that I wanted to hear the weather forecast at 4 am. I tried to fix it by saying "no, better at 8.30 am" but it did not work, and now I am getting a message from Poncho every day at 4 am. Should I start the process all over again?
Most bots are designed based on decision trees, with the idea to make the conversation flow easier for the customer. However, they do not take into consideration changes in user preferences.
If you are new to bots download our white paper to get to know all the basics in less than 5 minutes!