Thank you for your feedback.
Form temporarily unavailable. Please try again or contact docfeedback@servicenow.com to submit your comments.

Natural Language Understanding in Virtual Agent

Log in to subscribe to topics and get notified when content changes.

Natural Language Understanding in Virtual Agent

Apply Natural Language Understanding (NLU) models that enable your virtual agent to understand user statements in automated conversations. An NLU model provides information that your virtual agent uses to determine what users want to do and to extract relevant values from their input. With NLU, your virtual agent can offer a more natural and engaging conversational experience.

How NLU models work in Virtual Agent

NLU models are trained to understand statements a user might make during a conversation, and to relate them to a task that a user wants to perform. Virtual Agent uses the following information in an NLU model to understand and process user requests:

  • Intents: What a user wants to do, for example perform an action such as submitting a service ticket or getting an update on an order.
  • Utterances: The different ways that a user expresses an intent.
  • Entities: The object or context for an action, such as a laptop, case number, or an employee's name.
Figure 1. Example intent definition in NLU model
NLU example intent (Check IT Ticket Status) and corresponding utterances and entity values

For details on intents, utterances, and entities defined in NLU models and how they work in machine learning, see ServiceNow Natural Language Understanding.

When you create or update topics in Virtual Agent Designer, you identify the NLU model and intent that Virtual Agent uses to find the appropriate conversation topic for fulfilling the intent.

Virtual Agent supports models from the ServiceNow Natural Language Understanding service or the IBM Watson Assistant service. You can use:
  • ServiceNow NLU models that you create using ServiceNow Studio.

    ServiceNow provides prebuilt (read-only) NLU models for the Customer Service Management, HR Service Delivery, and ITSM applications, along with predefined topics. You can use the intents defined in these prebuilt models and reuse them when you create your own models.

  • NLU intents and entities created in IBM Watson Assistant, only if you're using IBM Watson Assistant as your NLU service provider.
Note: Virtual Agent supports only one NLU service provider per instance.

With NLU models, your virtual agent can

  • Perform topic discovery
  • Extract entity values
  • Handle conversation switching in a conversation session

Topic discovery

Virtual Agent processes user utterances (statements associated with a specific intent) to launch the appropriate conversation topic. Each topic has a single intent that you specify in Virtual Agent Designer.

During the topic discovery process (matching intents to topics), Virtual Agent returns the most relevant topics for a user's request. The topic discovery process returns these results to a user:
  • Single match: When a user utterance directly matches an intent (topic), the topic runs automatically.
    Diagram that maps utterances and entities for an NLU intent to a Virtual Agent topic for checking IT Ticket Status
  • Multiple matches: When a user utterance matches more than one intent, Virtual Agent returns a choice list of the relevant matches so that the user can choose the appropriate topic.
    Example of multiple intent matches
  • No matches: When the virtual agent does not understand a user utterance, it automatically displays a fallback message. The user can select a topic or enter a different request.
    Figure 2. Example fallback message
    Example fallback topic displayed when the virtual agent did not understand a user entry or request.
    The fallback response runs automatically in the conversation when the virtual agent cannot match a topic to the intent. For details on how the fallback response (called the fallback setup topic) works, see Select Virtual Agent setup topics.

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.

Conversation switching

Users engaged in a virtual agent conversation can switch topics anytime during the conversation. For example, a user could be updating an item in their employee profile, but before completing the update, that user might ask to order an item instead. Your virtual agent can find and run the appropriate topic based on the user's request. You can enable users who switched topics to resume the original conversation.

Or a user can ask a casual question (called small talk) that might be unrelated to the original request. By reviewing the intents defined in the NLU model, Virtual Agent can match and launch the appropriate conversation for the switched topic.

Get started with NLU in Virtual Agent

After you activate the plugins for Glide Virtual Agent and the predefined topics for the CSM, HR Service Delivery, and ITSM business applications, prepare your NLU models and enable NLU for your instance.

Figure 3. Implementing NLU in Virtual Agent
Diagram of the steps for implementing Natural Language Understanding in Virtual Agent
Implementing NLU involves these steps:
  1. Prepare your NLU models.
    • If you're using ServiceNow NLU, review the prebuilt NLU models (provided with the Customer Service Management, HR Service Delivery, and ITSM applications) in ServiceNow Studio. Consider whether you want to reuse intents from these models when creating your own NLU models.

      Use ServiceNow Studio to create, train, and publish your NLU models.

    • If you're using IBM Watson Assistant as an NLU service provider, configure the IBM Watson Assistant Intent and Entity integration.
  2. In Virtual Agent NLU Settings, enable NLU and select your NLU service provider.
  3. Before you create or update topics, preview the predefined ServiceNow topics in Virtual Agent Designer. Determine whether you want to use any of the topics, then duplicate and publish them as needed.
  4. As you create or update topics in Virtual Agent Designer, follow the steps for creating a topic. Note these details:
    • Verify that you are in the appropriate application scope before you create or update a topic. For example, if you are creating ITSM topics, verify that you are in the ITSM Virtual Agent Conversations scope (and not the scope for the ITSM NLU Model for Virtual Agent Conversations).
    • Select the NLU Model and Associated Intent for the topic in the Topic Properties page. And if topic switching is allowed in the conversation session, enable Resume topic flow.
      Note: A topic can have only one intent. Once you select an intent for a topic, the intent is no longer available for use in other topics.
    • Set the NLU entity properties in the property sheet for each input control that you add to the conversation flow. The entity properties identify the entity associated with the node, a switch for allowing text input for the control (prompt), and another switch for confirming the slot-filled entity value that Virtual Agent extracts.
    • Test the topic.
    When you are ready to deploy a topic, change the state to Active and publish the topic.
Feedback