The Zurich release has arrived! Interested in new features and functionalities? Click here for more

Slot Filling

Yasmin
Kilo Guru
Looking for examples on how to utilize slot filling in order to implement it for my own topics.
Slot filling is where upon triggering a conversation VA identifies or captures keywords that were typed by the user in order to skip the subtopic validation step and go straight to the step that executes the action.
A demonstration of how it works was shown in the community youtube channel for email address updates. However, I see a use for it when customizing the Pay Discrepancy OOTB topic.
For example: If the pay discrepancy topic was triggered by the user typing an utterance that contained the word "deduction", the next step is for VA to ask the user to confirm from a list of subtopics (which contain deductions as one of the options). This could be redundant if the user already entered a keyword. So we would like for VA to automatically skip to the search KB step and display any KBs related to "deductions".
 
Is slot filling done by adding some script at the beginning of each topic, if so what does that script look like?
OR
Is this done in the NLU model?
 
Thank you.
1 ACCEPTED SOLUTION

Chris D
Mega Sage
Mega Sage

These are called "Entities" in ServiceNow parlance and are created in the NLU model but utilized in VA Designer:

Entity extraction

With NLU models, Virtual Agent can determine when user statements in a conversation contain important information to fulfill a task or goal. Entities identify the information that Virtual Agent can extract from the conversation, such as an object or a person's name. To extract the appropriate values, Virtual Agent uses the entity information associated with an intent defined in the NLU model. The input controls that you add to your conversation also have associated NLU entity properties that you can set. Virtual Agent matches the extracted entity with the input control variable that fulfills or completes the action, and skips the prompts asking the user for additional information.

Here's the rest of that documentation: https://docs.servicenow.com/bundle/orlando-performance-analytics-and-reporting/page/administer/virtu... 

Here's how to create an Entity in a model and here's how to implement Entities in user inputs in VA Designer:

Natural Language Understanding (NLU) entity properties

If NLU is enabled, the following properties display in the property sheet for the Text, Static Choice, Reference Choice, Boolean, Date Time, and Carousel input controls:

  • Associated entity: The entity that corresponds to the input variable for the control. You select the entity from the list of entities associated with the topic intent, as defined in the NLU model you are using for the topic. When Virtual Agent recognizes the entity value in user utterances and the value meets the entity prediction confidence threshold, Virtual Agent extracts the value. It stores the value in the input variable for the node (slot filling).
  • Enable NLU at Input Node: You can enable or disable NLU processing for a control. Selecting an Associated entity automatically activates the Enable NLU at Input Node switch. Users can enter text to select items or switch topics from this node when this switch is enabled.
  • Skip confirmation for recognized entity: You can enable or disable prompts that ask users to confirm the extracted entity.

 

View solution in original post

3 REPLIES 3

Chris D
Mega Sage
Mega Sage

These are called "Entities" in ServiceNow parlance and are created in the NLU model but utilized in VA Designer:

Entity extraction

With NLU models, Virtual Agent can determine when user statements in a conversation contain important information to fulfill a task or goal. Entities identify the information that Virtual Agent can extract from the conversation, such as an object or a person's name. To extract the appropriate values, Virtual Agent uses the entity information associated with an intent defined in the NLU model. The input controls that you add to your conversation also have associated NLU entity properties that you can set. Virtual Agent matches the extracted entity with the input control variable that fulfills or completes the action, and skips the prompts asking the user for additional information.

Here's the rest of that documentation: https://docs.servicenow.com/bundle/orlando-performance-analytics-and-reporting/page/administer/virtu... 

Here's how to create an Entity in a model and here's how to implement Entities in user inputs in VA Designer:

Natural Language Understanding (NLU) entity properties

If NLU is enabled, the following properties display in the property sheet for the Text, Static Choice, Reference Choice, Boolean, Date Time, and Carousel input controls:

  • Associated entity: The entity that corresponds to the input variable for the control. You select the entity from the list of entities associated with the topic intent, as defined in the NLU model you are using for the topic. When Virtual Agent recognizes the entity value in user utterances and the value meets the entity prediction confidence threshold, Virtual Agent extracts the value. It stores the value in the input variable for the node (slot filling).
  • Enable NLU at Input Node: You can enable or disable NLU processing for a control. Selecting an Associated entity automatically activates the Enable NLU at Input Node switch. Users can enter text to select items or switch topics from this node when this switch is enabled.
  • Skip confirmation for recognized entity: You can enable or disable prompts that ask users to confirm the extracted entity.

 

Thanks a lot. All these articles are very useful. Once I reviewed them I realized I had to make sure I set the "Associated Entity" within the user input control. It is working now!

I can summarize that the steps to make it work are:

1. Create NLU model (Add utterances and entities)
2. Within the topic conversation flow, set the user input control to associate the entity by selecting the entity.


find_real_file.png

Does anyone have the REGEX code for handling capitalization in an entity? Thank you!