Learn how to train your bot to handle Small Talk and Frequently Asked Questions.
The question answering feature of NativeChat is helpful for solving two use cases:
- handling small talk
- answering frequently asked questions
When the bot detects that the user is asking about a question that it has been trained with, it can answer directly without aborting the current conversation (or starting a new one).
Here is quick (3:43 min) video demo of question answering is configured and works.
When people speak to each other (and to bots) they often say things that don’t have important meaning but are there to avoid silence, polite or just keep the conversation going.
The most frequent example is that many times after a person’s conversation with the bot ends (they’ve booked a doctor appointment, and the bot confirmed), that person thanks the bot or says good bye as they would normally do with another human being. It would be inappropriate for the bot to reply with the “I don’t understand” or the default welcome message as if the conversation is starting all over again.
The expected reaction from the bot is to respond appropriately and then wait silently until the user makes a new request. For example, if the user says “goodbye”, the bot should reply “goodbye” or “see you” and stop the conversation.
Frequently Asked Questions
There is a real value in training your bot to answer frequently asked questions that would otherwise require a human to respond to.
Like for example, users might ask “What are your working hours?”, or “What is your phone number?”. The answers for these are pretty straightforward and do not require collecting additional information.
When you’ve trained your bot with questions and answers, each time during a conversation when the bot detects that the user is asking about a question it will display the answer and then continue with the conversation flow.
To train your bot to answer questions go to the bot’s Training section and click on the Question answering.
You will see all the categories of questions that the bot is trained with.
By default there is the built-in Small Talk category, but you can add as many categories as you need. The categories help you organize your question and answers sets if they become a large number, or if they cover different topics (e.g. Pricing, Shipping, Support.)
Import / Export
You can import multiple questions at once from an Excel .csv (comma separated value) or .json file. See exporting CSV from Excel article.
Your CSV file needs to have 3 columns:
- group name
The group name is used to match the multiple variations of the questions and their answers.
For every question that you train the bot there are several properties that need to be configured:
(See marker A) Provide one or more examples of how your users can ask the same thing. For example, we could train the bot to respond to all of the following questions “What documents are required to apply for this job?”, “What are the necessary documents?”, “What application documents do I have to provide?” with “You need to send us your CV in English and a short motivational letter (also in English).”.
(See marker B) A short name for the question. Used to match the multiple variations of the questions and their answers when importing. One question can have both multiple question expressions and multiple answer variations. This is why the group name is used to label these pairs.
In the example above, an appropriate group name for these questions is “application-documents” since it’s short but descriptive.
(See marker C) At least one answer is required. If you add multiple answers, the bot will randomly choose one of them. In the abovementioned example, the bot will randomly choose “You need to send us your CV in English and a short motivational letter (also in English).” or “CV and motivational letter (both in English).” as an answer to the questions.
You can use formatting (bold, italic, images, links) in the text. Check the formatting instructions.
Voice answer (optional)
For voice channels (like Alexa) you can provide a separate answer that sounds better when spoken out vs. how it looks on screen. You can use SSML (Speech Synthesis Markup Language) to add voice specific formatting like pauses, different tone and pitch levels, etc.. Check the Amazon SSML documentation for supported features.
Example SSML marked message:
I already told you I <emphasis level="strong">really like</emphasis> that person.
Once you are ready with the configuration, make sure to test your questions’ training quality.