Adopting an AI-enabled chatbot is a bit like adopting a pet. If you don’t know how to train a chatbot and take care of it properly, you might want to consult an expert.
Like pets, the behaviour of poorly trained AI chatbots can create a mess to clean up. If you remember the case of Tay the Twitter Bot, you know exactly what we mean.
The information in this article is fairly technical, so in case you aren’t, we’ve included explanations and examples to give you a good basis of understanding of how AI-enabled chatbots should be trained.
Before getting started: key phrases to know.
Before we dive into how to train a chatbot, there are some key phrases you'll need to know.
Even if you're just getting started with chatbots, you've likely run into utterances, intents, and entities. You'll need to know these terms when training AI.
- An utterance is basically something that a user might say to your bot
- An intent represents what the user's utterance means, or what they intend to get from the AI chatbot. For example, if someone says "show me today's sports news”, the user’s intent is to see a list of sports headlines. Intents are often named with a verb and a noun, such as “showNews”
- An entity is a keyword that makes the user's intent more clear. Using our example, if a user writes “show me today's sports news”, the entities are “today's” and “sports”. Entities are given a name, such as “dateTime” and “newsType”
How to train a chatbot
Now that we've got that out of the way, let's talk about training your chatbot. Training AI is all about predicting what users will say and hope to get from your chatbot. By now, you should already have defined your use cases (specific purposes for your chatbot).
Next, we have to train the AI chatbot to understand the many ways that customers will ask (or utter) their questions. Here are a few tips to follow when training AI.
Define your chatbot's specific use cases
It's important to begin the process with defining which specific problems you want your AI-enabled chatbot to solve. It's common to begin with a wish list of what you would like your bot to do. However, it's important instead to begin with an exact business problem that your bot will be built to solve. This makes sure your bot is built to benefit the business efficiently.
If you want to build a chatbot that allows customers to track order status, but then realise that this specific issue makes up for less than 3% of your query volume, you might want to consider another use case. Starting with the problem you'd like to solve will help avoid these situations.
Make sure your intents are distinct
If your AI-enabled chatbot cannot understand exactly what people want, it will create a frustrating user experience. To avoid that, create very specific intents that serve one defined purpose.
For example, you might want your chatbot to help your customers make a purchase. If so, you can add a #buy_something intent. (The # before the intent name helps to clearly identify it as an intent).
Make sure each intent contains many utterances.
The usability of your AI chatbot directly depends on how well the sample utterances represent real-world language use. During development and testing, use many different expressions to invoke each intent.
To do this process correctly, you'll need many iterations. Continually update the custom values and sample utterances to make sure you've covered all potential phrasings.
To use the previous example, if the intent is #buy_something, you should include utterances like "I want to make a purchase" or "Buy now."
Create a diverse team to handle the training process
The goal is to train your bot for all potential possibilities, so the more diverse your training team, the better. You don't want your chatbot to only be tested by a team that is too close to the project. A diverse team will be more likely to ask questions in different ways.
Make sure your entities are purposeful
Once you have written several utterances, note the words or phrases that represent key variable information. These will become the entities. The point of entities is to extract relevant information, so you don't need to tag every word in an utterance. Avoid using one-word utterances as entities like "Barcelona" - these can confuse your chatbot.
Don’t forget to add personality
Your chatbot is an opportunity to connect with customers in a way that aligns with your brand. Finding the right tone of voice and personality for your AI-enabled bot matters. Even if your brand usually uses a professional tone of voice in communications, you can still build a chatbot that is fun and engaging.
Don’t rely only on text
To be engaging, you’ll also want your chatbot to use media elements. Cards, webviews, buttons, and other interactive components make for more compelling experiences. Our clients, especially in online retail, find that these features drive sales. Product suggestions and calls-to-action make it easy for customers to find and buy relevant products.
Don’t stop training!
Your job isn’t done after your chatbot has been deployed. Continuous improvement is important for a successful chatbot. Identifying situations where your AI-enabled chatbot needs more training will give you important insights about your chatbot and your business. You might be surprised to see how people are interacting with your bot; Remember that new intents represent new opportunities to improve.
A final tip on how to train a chatbot
There’s a common misconception that a chatbot is synonymous with AI. That’s not always the case. A good chatbot will use AI or be AI-enabled. For example, they will use NLP (Natural Language Processing). But not every chatbot requires extensive AI capabilities.
The purpose of a chatbot should be to provide the user with relevant information in response to a query. The more you can plan for, the less you will have to rely on Artificial Intelligence to do the heavy lifting.
Mapping out the user flow will allow you to create a powerful chatbot that is decision tree-based. The user is driven down a specific path defined by your development team. Understanding the end goal or action will make it easier and faster to train your bot.