$entities
The $entities variable contains the list of all NLU entities recognized in the user request.
Object format
The value of this variable is an array of objects having the following structure:
[
{
"pattern": "fruit",
"startPos": 1,
"length": 1,
"value": "{\n \"name\": \"banana\",\n \"type\": \"fruit\"\n}"
}
]
-
pattern— the entity name. -
startPos— the position of the word from which the entity starts. The numbering starts from zero. -
length— the number of tokens that make up the entity. -
value— the entity reference data (DATA).cautionThevaluealways has a string type, even if you have specified JSON in DATA. Use theJSON.parsemethod in the script to convert a string into an object and access its properties.
If the user request matches an intent with slot filling,
the objects in the $entities array will have an additional slot property — the name of the slot matched by the entity.
How to use
state: DebugEntities
q!: *
if: $entities.length
a: Your request has the following entities: {{_.pluck($entities, "pattern").join(", ")}}.
else:
a: There are no entities in the request.