The intent is something that your chatbot user wants to achieve. It can be as simple as a greeting or as complex as making a flight reservation for a specific date, time, and destination.
Intents are usually expressed as utterances. For example, if your chatbot user types something like “What is the weather in London now?”, the utterance will be the message itself, and the intent will be “to learn the weather in the specific city”. For “Get me Pepperoni pizza with extra cheese” utterance the intent would be “order pizza”, etc. Please note that there can be dozens or even hundreds of different utterances for the same intent. For example, for “order pizza” intent the utterances can be:
- May I have a pizza, please?
- Get me pizza
- I want pizza
- Can I order pizza delivery?
- I want to order a pizza
- … etc
When you have your conversation designed, it’s important to define the set of intents that your chatbot should handle. Actually, it comes down to specifying what kind of value can customers get from the chatbot. This is always a work in progress – as your chatbot starts having actual conversations with users, there will be new intents popping out almost every day. It’s up to you (as a chatbot developer) to decide, which of these intents should be handled by the bot, and what should happen if the user’s intent is not recognized.
Intents are tied tightly to chatbot skills in Activechat. Actually, each intent should have a dedicated skill that will be triggered by that intent and which should deliver specific value to your chatbot user. We advise keeping intent names structured and develop some sort of a naming convention to avoid messing it up when the number of intents starts growing.
The logic is pretty simple here – when you introduce natural language understanding into your chatbot, you treat every user message as an utterance, using AI to understand what is the intent of that message, and which skill in your chatbot should be used to help your user to achieve the desired value.
The power of Activechat is in the combination of advanced AI provided by technology leaders like Google or Facebook with the simplicity of the visual chatbot builder.
So, the process of building a smart natural language chatbot should look like this:
- Define which intents your chatbot should handle.
- Come up with possible utterances for that intents.
- Build skills that will be triggered by intents to help users get some value.
- Get actual conversations and make corrections – both to intents and utterances.
Why do we call it a work in progress? Two simple reasons:
- You will never know what kind of intents your users will have when talking to the bot
- You never know which words (utterances) the customers will use to express these intents
Proper preparation and homework before your bot goes live can definitely help, but you should be monitoring conversations constantly to get insights on how the bot can be improved.