Natural language automation

To get familiar with some concepts mentioned in this article, please check our guide to intents and entities.

Intents are at the heart of any AI-based conversational automation.

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 or phrases. For example, if your customer types something like “What is the weather in London now?”, the intent will be “check the weather in the specific city”. For the “Get me Pepperoni pizza with extra cheese” phrase the intent would be “order pizza”, etc. Please note that there can be dozens or even hundreds of different phrases (utterances) for the same intent. For example, for “order pizza” intent the phrases 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 your virtual assistant. 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.

Anatomy of the intent

To add and edit intents for your automated agent, go to the “Automation – Intents” menu. On the left, you will see a hierarchical “tree of intents”. It contains some pre-defined categories (like “System”, “Small talk”, or “Uncategorized”), and you can add your own intents and group them into categories and subcategories.

A typical intent definition contains two parts – “Event” (phrases that your customers may use to express that intent) and “Action” (what your bot should do once it detects that intent).

In the example above, we’ve defined the “Store locations” intent that will be triggered when your customers ask something like “Where are you located?”. You can add multiple phrase variations to each intent. The more phrases you add, the easier it will be for the AI to detect that intent when your customers use similar phrases. We advise you to add 6-10 phrases to start with and add new phrases from Insights once your bot is live.

The “Action” part on the right tells your virtual agent what to do when this intent is detected. The options are:

  • Respond with a simple single phrase

  • Launch a specific skill in the bot

  • Escalate the conversations to a live chat agent

If you choose “Simple response”, the bot will respond with one of the phrases that you define. This is good for simple intents like answering a frequently asked question. Choosing one of the pre-defined responses randomly makes the conversations less boring and more human-like.

If you choose “Run skill” and select one of the bot skills in the drop-down list, this skill will be launched in response to the customer’s intent (you have to create the skill first in the visual builder). These complex automations allow your bot to do all kinds of stuff – ask additional questions, process and send data to CRMs, trigger notifications, branch scenarios based on the values of user’s attributes, etc.

To escalate the conversation to a human agent, choose “Run skill” as action and select the “_start_live_chat” skill in the drop-down list. Then, once the intent is detected, your customer will be connected to the most appropriate human agent to continue the conversation.

Last updated