Entities help you to train your bot to understand specific phrases from the queries. When you create entity and map it to intents, this helps bot to detect phrase whenever the bot encounters similar query.
Entities also lets you add synonyms to specific terms.
Note: Adding synonyms is not mandatory.
How to Create Entity?
Add entity by +CREATE ENTITY option from the right of the dashboard.
While creating entities, you need to give name of the entity and add reference values in the form of rows.
Reference values are specific terms or important terms which you expect from the user. Hereby mentioning reference values you are training the chatbot to understand important terms from the users.
These reference values are used to map the user response in “Intents” section, which is explained below.
Along with the reference values, you can specify its synonyms to the right of values.
Note: Separate synonyms by pressing enter.
If you don't want to mention synonyms then you can uncheck its option.
Below the entities, there is a list of learned entities or entities detected by bot. Once the entities are detected it starts displaying in this section.
Here in the below example, entity named Rooms is created and its synonyms are added.
How to Map Entities?
After creating entity, now you have to map user queries with the entities.
To map the queries, Go to intent which you created earlier, select the important terms of the queries which you want your chatbot to understand. When you select the terms, a popup box of predefined entities will appear.
In the predefined list of entities, you will see your created entity, select the appropriate entity from the list. This can be seen in below image for hotel chatbot.
Here we created an entity called Rooms which we want our chatbot to understand. All the selected terms in the queries will appear green.
When you map entity, it shows details about the entity such as:
Parameter(Variable): Whenever the bot encounters a particular intent or the phrase which you selected. It detects the entity and its value will be saved in Parameter.
By default it will take the same name as the entity. But you can change it to any other name according to your preferences. You can use this parameter in your chatbot flow whenever required.
Entity: Name of the entity selected.
Resolved Value: Value of the term selected by the entity.
Delete: From here you can delete the entity (this will clear the term selected in query).
Below the user says, there is action, which is the name of the intent which will trigger when a particular user query related to the intent will be detected by the bot.
When you select the entity for the first time, It maps it with a particular parameter. Then after for all other selections you need to select @parameter.@entity.
If you will select only @entity for all your queries then each time by default it will take a different parameter to save.
Ideally you should use only one parameter for one entity.
Check below example to use it in a best way.
Here entity is selected once, and therefore while selecting it for the next time it shows @Room Type.@Room Type [@parameter.@entity].
You need to select @parameter.@entity for all queries where the same entity to be used.
As shown in below image, if you will select @entity for all your selection then it will create a new parameter everytime.
After the action, all the details about the entities, parameters, values and action are displayed. You can delete parameters from here which are not required.
To sum it up the process of Advance AI
You define user queries.
Specify the important terms of the queries with entities.
Map the terms inside the queries by assigning entities to it.