Intents

Last updated: 25.10.2019

Overview

An intent represents a mapping between what a user says and what action should be taken by an assistant. By recognizing the intent expressed in a user's input, the Hala Assistant can choose the right skill and dialog node for responding or take action.

Plan the intents for your Assistant

Consider what your users might want to do or to say. Also, you can consider what processes should be automated with the Assistant and ask users to provide utterances.

For example, you want your assistant to help the users reset a password in the backend software. If so, you can add an intent.reset_password. (The intent. is a prefix that adding automatically to the intent name and helps to identify it as intent clearly.)

Train Hala with your intents

After you identified the utterances that you want your assistant to handle for your users, you need to train Hala about them.

For each intent (such as intent.reset_password), you must provide at least 5 examples of utterances that your users typically use to indicate their goal. For example:

  • Reset my password

  • I forgot my password, could you please help me

  • I need to reset the password

  • Can you help renew my password for SAP

  • Renew the password

You can find the real-world user utterance examples by analyzing the business processes that you want to automate. You can analyze historical data and find examples of the utterances from the users or you can ask your users to provide examples of how they can ask about the resetting the password. Then aggregate all the answers and train Hala.

The examples that you provide are used by your assistant to build a machine learning model that can recognize the same and similar types of utterances and map them to the appropriate intent.

How it works

For example, you have created the intent intent.reset_password, and then if the user will write something like this "reset my password," the system will analyze the text and determine the intent with the highest confidence. We have two skills: Reset password and Get Weather. In this scenario, the skill "Reset Password' has condition intent.reset_password, that is why after the text analysis Hala will execute the skill "Reset the password" and not "Get Weather."

Annotation with entities

When you create entities, you can annotate mentions of the entity directly from existing intent examples. When you add the mention to the entity, it is adding to that entity as a new value. This relationship establishes a reference between intent and an entity.

Intent Confidence

Hala scores each intent’s confidence independently, without any relation to other intents. This method adds the opportunity to identify multiple intents in single user input. Keep in mind that the Hala might not return an intent at all. If the intent with the highest confidence is less then 0.2 than the system will not proceed with any dialog nodes.

Adding the intents

  • Go to the Section Intents on the Hala Platform and press New Utterance

  • Change the default name of the intent and provide the utterances (at least five examples)

Train the intents

When you will add the utterances you would need to save the changes and then train Hala with your intents.

  • Click Save

  • Click Train Model

Modify the utterances of intents

  • Select the intent.

  • Select the utterance.

  • Modify or delete the utterance.

Delete the intents

  • Select the intent.

  • Click the delete icon.

  • Confirm the deletion.