Get the latest live chat benchmark data broken down by team size & industry
Read moreChapter 5
You want to learn how to create an intelligent chatbot – great! But before you start with the nitty-gritty of programming your chatbot, it’s important you answer some basic questions about your bot’s purpose, features and more. Deciding on answers to questions that affect the setting that your bot operates within will only help you to create programming that’s both clear in aim and fit for purpose. Here are the first steps to making your own AI chatbot.
Set a Goal for your Chatbot
It has to be clear what customers and your company can expect from your Chatbot. Is the Chatbot supposed to help customers easily access answers in your knowledge base? Is it supposed to further your company’s marketing outreach by providing customers with a useful service, such as health tips, recipes, or investment recommendations? Or is it a “level two” Chatbot designed to perform more advanced functions, such as help customers change their passwords, or even place orders. How about all of the above?
Knowing where your Chatbot will interact with customers will also help you decide what you can expect of it. Chatbots that interact with customers through your company’s app, Facebook Messenger, and SMS can send customers notifications and even daily content, whereas Chatbots that assist customers on your website will likely have a stronger support function.
By being clear on what your Chatbot can and must accomplish – and on what platform – you will be able to start to program with that in mind.
Make sure your organization has a common understanding of what your Chatbot should be doing (as well as being familiar with common language). Kick-off planning meetings should gather the thoughts and ideas of all stakeholders.
Make a List of Must-Have Features
Once you know what to expect from your Chatbot, you can begin to establish some must-haves.
What information do users need to get out of your Chatbot for it to be useful? What queries must your Chatbot be able to answer? What kind of content does it need to push – i.e. product photos, article links, product reviews, etc.? What information does your Chatbot need to have access to so that it is always up to date – i.e. updated product database, current exchange rates, daily weather forecasts, etc.? Which other business systems does it need to connect to in order to execute effectively?
When reflecting on must-have features for your website’s Chatbot, go through your chat database and identify any frequently asked questions that a Chatbot could be able to help with. Asking front line agents for their ideas can be really useful here – agents will know well the types of queries they answer repetitively that a bot could answer!
Choose a Personality
Some Chatbots are quirky and fun, raining emojis and GIFs on their presumably millennial audience. Others convey a more professional image, keeping interactions simple and to the point.
When deciding on your Chatbot’s personality, ask yourself the following:
Source: Quartz
Asking yourself these questions will help you decide how your Chatbot will talk and act in every situation.
Creating a persona for your Chatbot is an important part of designing it. However, don’t draw so much attention to the character that it overshadows the service – you don’t want to go overboard and annoy your customers. Always put functionality and the customer experience first. Stay alert for future customer feedback and tweak your Chatbot’s personality accordingly.
Design the Chatbot Flow
Designing the Chatbot flow is all about taking your customers through the process of using your Chatbot. How will you get your customers from Point A (their initial inquiry) to Point B (resolution, engagement, or any other endpoint, such as subscribing to your company’s service)?
There are many ways to guide the user’s journey. Some Chatbots begin by offering users a list of what the Chatbot can help them with, or giving them an example of what kinds of questions to ask. Not only does this let users know what the Chatbot can deliver, it also gives them ideas on how to further engage with the Chatbot.
Once you decide how to instruct your customers on interacting with your Chatbot, you need to choose how exactly they will take that journey. Will they type out text to your Chatbot? Or will they click on pre-set options that will advance them through the conversation? What 19 CHATBOT SUCCESS about a combination of both – with options as suggestions but including the option of typed text as well? (For example, the mental health Chatbot, Woebot, uses both text and buttons interchangeably to help users look for patterns in their mood, and come up with strategies to improve it over time.)
Source: Woebot
Another thing to consider is how you will present customers with information. Chatbots of brands like Fandango and Whole Foods use carousels to give customers a list of scrollable options with interest-peaking photos. These carousels offer customers additional selections that are easily available – making for focused, but effective conversational flows.
Source: Fandango
Ask yourself how you wish to display your content. Will you link users to relevant articles or videos, or post answers and content directly in the chat window? What widgets are available to deliver content in a more inspiring, less cluttered way?
Once you have planned out your Chatbot, it’s time to start to identify the intents your customers have.
There are generally three types of visitor intents: small talk like greetings, business requests, and random messages. Out of the three types, business requests are the most important part, which is why this guide is mainly focused on building business question intents.
This is not to say that small talk intents are not helpful – they can lend your bot the right dose of personality to make communication more genuine and less ‘robotic’. We’ll explore how to program these later.
For the simplest and most intuitive approach to identifying intents, we recommend a process that is focused around intent discovery from existing customer interactions. This way, there is no secret to Chatbot journey mapping. You already have most of the content you need to work with – you just have to put it in place using the following steps.
Consult Your Existing Knowledge Base or FAQ Resources
Self-service has been growing in popularity, which means that chances are, if you have a website, then you have a customer-facing knowledge base or an FAQ section.
Knowledge bases are used to help customers find the answers to their own questions. They are generally compiled from frequently asked questions – the very questions that customers who don’t feel like searching through your knowledge base may write to a live chat agent about.
Knowledge bases aren’t the only resources that companies have. Often contact centers will have their own internal, agent-facing knowledge base. This kind of knowledge base helps agents respond quickly and accurately to customer queries. Agent-facing knowledge bases might be compiled as documents and shared with all support agents.
Another resource – and perhaps the most valuable resource that you can consult – is your agents’ list of canned scripts and messages. Like agent-facing knowledge bases, canned messages are usually available as a shared document, or within the messaging system. Up-todate canned messages can give you insight into the intents underlying your most common support questions, and exactly what the responses to those questions are.
By consulting your knowledge bases, FAQ resources, and canned messages, you can begin to compile a list of what intents lie under easily answered questions you can assign to your Chatbot.
Use Existing Chat Logs for Information Discovery and Refinement
For ultimate insight into the questions that your customers are asking your live chat agents, go directly to the source: your existing chat logs. This will help you discover the most recent common questions, and any questions that you might have missed out on when examining your knowledge bases.
There are many ways in which a customer may express their intent. For example, a travel company may define an intent as “Book Flight”. Then “Book me a ticket to Paris” and “I want to fly to Paris” will be two questions associated with this intent.
Combine Similar Questions
Similar questions should be combined under one intent. This will help expedite the bot learning process and simplify ongoing bot maintenance.
For example, if there are 10 reports, you might need 10 intents to introduce each one of them. But if visitors ask, “how to download report #1” or “where to download report #2”, they can be simply put under one intent “Download Report”.
Check Intent Coverage
The intent structure needs to be as comprehensive as possible and cover all the scenarios that you want your bot to handle.
For example, software billing related intents should include: free trial end, subscribe, payment method, payment error, next billing date, account inactive, refund, billing info, etc. By doing this, your bot will be more capable of handling billing questions.
Another example would be those random chitchat requests or spam messages, which are common for companies that provide online help. You can create an intent specifically for this scenario so as to reduce the number of spam chats routed to live agents.
For a highly effective bot, the next question you need to ask yourself is – how do I develop the AI chatbot? To help your chatbot understand each intent better, questions in that intent need to undergo regular review and maintenance. The ideal number of questions per intent is between 18 and 36. This is a vital part of creating a Chatbot that’s effective from the start, as it gives your Chatbot more data on which it can make decisions.
In the intent structure you have created, there should be at least one question in each intent, and each question should be made into a pair (see details below).
Question Pairing
Every question has a key part. If the key part changes, the meaning of the question changes.
For example,
Here the key part (intent) is “Change password”
In this question the key part (intent) is “Hide button when no agent is online”.
The question and its key part make a pair. The question is usually long, which contains different clauses and modifying phrases while the key part is short and clear.
You need to have both the question and its key part, as a pair, under each intent. Each pair needs to be grammatically correct, which is crucial to the accuracy of intent identification.
Rephrase a Question in Different Ways
Choose one question which you think is the most frequently asked in an intent, and try rephrasing it in different ways, changing between active/passive voice, word variations, etc.
For example,
Make sure you include the key parts for the newly written questions under the intent, so that they appear in pairs.
In most cases, you should be able to expand one frequently asked question into six.
Make sure the meaning of the question stays the same and the question is grammatically correct.
Next, you need to label synonyms for these questions.
The main purpose of labeling synonyms is to tell the Chatbot that the keywords used in this intent can be replaced with its synonyms.
Here is an example. Note that the colors are used for easier comparison – you don’t have to use this color coding in practice.
Question A | (Hi Terry, ) (to provide better experience | would you please let me know how) (how to | I want to | how can I) (hide | not show | not display) (comm100 live chat |live chat | chat) (icon | widget | button) (when | while | if) (no agent is online | agents are offline | agents are off work). |
Question A Key Parts |
(hide | not show | not display) (icon | widget | button) (when | while | if) (no agent is online | agents are offline | agents are off work) |
Rephrased Question A-1 |
(can the | is it possible for the) (comm100 | live chat | chat) (icon | button) (on website) is (hidden from | not seen by | not displayed to) visitors, (when | while | if) (outside of office hours | our customer service reps are all offline | none of agent logs into agent console). |
Rephrased Question A-1 Key Parts |
(icon | button) is (hidden from | not seen by | not displayed to) visitors, (when | while | if) (outside of office hours | our customer service reps are all offline | none of agent logs into agent console) |
Rephrased Question A-2 |
(Can I have | I want) (a hidden | an invisible) (comm100 | chat) (widget | button) (when | while | if) (agents are off work | outside of office hours | all agents are offline) |
Rephrased Question A-2 Key Parts |
(hidden | invisible) (widget | button) (when | while | if) (agents are off work | outside of office hours | all agents are offline) |
Once you have your intents set up with all associated questions and synonyms defined, you can set your Chatbot to return the correct responses. Your Chatbot should be able to handle different kinds of responses, such as rich format messages, transactions, interactive responses, and process authentications before responses.
After your Chatbot has been set up with a good intent structure and equipped with comprehensive questions and responses, the Chatbot should be able to handle most of the scenarios you have built it for.
That said, the complexity of communication lies in the diversity of wording, which means your Chatbot still has the challenge of speaking almost everyone’s language.
To help your Chatbot understand visitors questions no matter how they are worded, you can train your Chatbot based on real visitor questions that were misunderstood or not recognized from previous chat conversations.
Good Chatbot applications should be able to identify and let you add those questions to existing intents, or create new intents to enrich your bot’s natural language processing ability. This process allows you to train your Chatbot to respond better and more accurately to questions your customers ask.
A well-planned bot should not have too many questions picked out in the Learning section and usually tend to have fewer and fewer such questions as it gets trained. It would be good to go through questions in this section regularly to keep it empty.
Not all content has to be entirely related to solving the user’s question. Part of the reason that customers enjoy Chatbots is that they are fun to mess with. If engagement is one of your Chatbot’s goals, it doesn’t hurt to drop in a few treats for your users that will inevitably troll – or try and get closer to – your Chatbot.
Many Chatbot providers have built-in small talk modules to help you get a head start on the types of questions users like to ask to test out a Chatbot’s limits. However, you may want to come up with further playful, human-like, or creative answers to comments to keep your users entertained after they have resolved their issue. Map out possible responses to questions like:
You can also offer creative content to your users as a part of your business intent process mapping. Check out how Woebot does this:
Who can resist that face? Even if your user didn’t get what they were looking for out of the bot, this creative, sharable content is bound to make them smile.
You want your bot to do everything and know everything, but there will inevitably be some things that it just can’t do, or that it doesn’t understand. Miscommunications happen, and it’s important to be prepared for them.
“I’m sorry, I didn’t quite get that?” or, “I don’t know what you mean,” are good ways to let your user know that they need to repeat themselves, or try asking a question a different way.
To take attention away from what the Chatbot doesn’t know, emphasize what it does know. You can offer a list of suggestions to users. Here’s an example of what this might look like:
Another way to respond to something that your bot can’t do is to remind your user: your bot is just a Chatbot. Here’s an example of how you can use that to your advantage:
Eighty-six percent of customers believe that they should always have the option to transfer to a live chat agent when dealing with a Chatbot. While chatting on your website, be sure that one of your Chatbot’s responses for what it doesn’t know gives customers the option to speak to a live chat agent. This might look something like this:
Giving users a way to disconnect with the Chatbot when it is unable to help them and get support from a live agent makes sure that your Chatbot remains a tool for your customers, not an obstacle.
By clicking "Subscribe", you agree to our Privacy Policy.