Chatbot Overview
Conversational Bots
Intents & Entities
Intelligent Bots
Kore.ai's Approach
Kore.ai Conversational Platform
Bot Concepts and Terminology
Natural Language Processing (NLP)
Bot Types
Bot Tasks
Starting with Kore.ai Platform
How to Access Bot Builder
Working with Kore.ai Bot Builder
Building your first Bot
Getting Started with Building Bots
Using the Dialog Builder Tool
Creating a Simple Bot
Release Notes
Latest Updates
Older Releases
Deprecations
Bot Builder
Creating a Bot
Design
Develop
Storyboard
Dialog Task
User Intent Node
Dialog Node
Entity Node
Supported Entity Types
Composite Entities
Supported Time Zones
Supported Colors
Supported Company Names
Form Node
Logic Node
Message Nodes
Confirmation Nodes
Service Node
Custom Authentication
2-way SSL for Service nodes
Script Node
Agent Transfer Node
WebHook Node
Grouping Nodes
Connections & Transitions
Managing Dialogs
User Prompts
Alert Tasks
Alert Tasks
Ignore Words and Field Memory
Digital Forms
Digital Views
Knowledge Graph
Terminology
Building
Generation
Importing and Exporting
Analysis
Knowledge Extraction
Small Talk
Action & Information Task
Action Tasks
Information Tasks
Establishing Flows
Natural Language
Overview
Machine Learning
ML Model
Fundamental Meaning
NLP Settings and Guidelines
Knowledge Graph Training
Traits
Ranking and Resolver
NLP Detection
Advanced NLP Configurations
Bot Intelligence
Overview
Context Management
Session and Context Variables
Context Object
Dialog Management
Sub-Intents
Amend Entity
Multi-Intent Detection
Sentiment Management
Tone Analysis
Sentiment Management
Default Conversations
Default Standard Responses
Channel Enablement
Test & Debug
Talk to Bot
Utterance Testing
Batch Testing
Record Conversations
Publishing your Bot
Analyzing your Bot
Overview
Dashboard
Custom Dashboard
Conversation Flows
Bot Metrics
Advanced Topics
Bot Authorization
Language Management
Collaborative Development
IVR Integration
Data Table
Universal Bots
Defining
Creating
Training
Customizing
Enabling Languages
Smart Bots
Defining
Sample Bots
Github
Asana
Travel Planning
Flight Search
Event Based Bot Actions
koreUtil Libraries
Bot Settings
Bot Functions
General Settings
PII Settings
Customizing Error Messages
Manage Sessions
Bot Management
Bot Versioning
Using Bot Variables
API Guide
API Overview
API List
API Collection
SDKs
SDK Overview
SDK Security
SDK App Registration
Web SDK Tutorial
Message Formatting and Templates
Mobile SDK Push Notification
Widget SDK Tutorial
Widget SDK – Message Formatting and Templates
Web Socket Connect & RTM
Using the BotKit SDK
Installing
Configuring
Events
Functions
BotKit SDK Tutorial – Agent Transfer
BotKit SDK Tutorial – Flight Search Sample Bot
Using an External NLP Engine
Bot Administration
Bots Admin Console
Dashboard
User Management
Managing Users
Managing Groups
Managing Role
Bots Management
Enrollment
Inviting Users
Bulk Invites
Importing Users
Synchronizing Users from AD
Security & Compliance
Using Single Sign-On
Security Settings
Cloud Connector
Analytics
Billing
How Tos
Creating a Simple Bot
Creating a Banking Bot
Transfer Funds Task
Update Balance Task
Context Switching
Using Traits
Schedule a Smart Alert
Configure Digital Forms
Add Form Data into Data Tables
Configuring Digital Views
Add Data to Data Tables
Update Data in Data Tables
Custom Dashboard
Custom Tags to filter Bot Metrics
Patterns for Intents & Entities
Build Knowledge Graph
Global Variables
Content Variables
Using Bot Functions
Configure Agent Transfer
  1. Home
  2. Docs
  3. Bots
  4. Intelligence
  5. Amend Entity

Amend Entity

Time and again, we come across situations wherein the users change their preferences during task execution.

For example, while booking a flight, the user might change the date of travel and at times even the destination.

Amend Entity is a feature for such scenarios. Using this feature, you can allow the users to amend entity values and also control the post-amendment dialog behavior.

The entity amendment process can be divided into three stages:

  • Amend Identification: Identifying that the end user wants to amend is driven by bot’s built-in NLP capabilities.
  • Amending Entities: On identifying the intention to amend, the current task is put on hold and the amend flow is triggered. Three kinds of amend flows are possible based upon the user utterance:
    • when the user refers to the entity name (or entity synonyms), then they will be prompted for the entity value. For example, user utterance “I want to change the destination” triggers the prompt for destination entity. If the same entity node is present multiple times in the dialog, then the latest entity node for which the user has already provided input will be amended.
    • when the user gives the entity value then the entity will be updated accordingly. For example, user utterance “I want to fly to JFK” changes the destination entity value. If the value is compatible with two or more entities in the dialog, then the user will be prompted to select an entity to amend.
    • when the user refers to both the entity and its value, then the entity is updated. For example, user utterance “change my destination to JFK” will change the destination entity value.
  • Post Amendment Behavior: After an entity is successfully amended, there are three possible dialog execution flows that your bot can be configured for:
    • The dialog can be re-executed from the node that is amended by evaluating that entity’s connections.
    • The dialog can resume from the node where amend was identified or made.
    • The dialog can be resumed from a specified node present in the dialog.

Notes:

  • This feature has been introduced in v6.4 release
  • This feature is not supported in all languages, see here for details.

Implementation

On the Kore.ai platform, Amend Entity behavior can be defined at two levels:

  • Bot level, and
  • Task level.

Bot Level

To Set Bot Level Amend Entity Behavior

  1. From Natural Language -> Intelligence option select Amend Entity. By default amend entities is disabled.
  2. Once you Allow amend entities, various Dialog Resumption options are available:
    • Re-execute dialog from amended entity – use this option to resume the dialog by evaluating the amended entity’s connections. You can further choose to:
      • Clear entity values captured downstream – to clear all entities captured between the identified entity and the amend
      • Skip display of previously displayed messages – messages from Message nodes alone.
    • Resume dialog from amend identification node – use this option to resume the dialog from the node where the amend was identified.

  3. Post rel 8.0 of the platform, the amend process can be extended to entities marked as Do not ask the user for input using the Amend Entities set as Do not ask the user for input option.

Task Level

To set Task Level Amend Entity Behavior

Amend entity behavior can be set at the Task level also. The configurations defined at the task level will override the bot level configurations.

  1. From the Dialog Task page, click the Ellipses  icon and select the Manage Amend Behaviour.
  2. This opens the Manage Amend Behaviour dialog.
  3. By default, Use bot level settings is selected and the Bot level setting is displayed
  4. Select Customize for this task to override the Bot level settings
      • Do not allow amend entities will not allow the user to amend entity values for this task,
      • Allow amend entities will further give you three Dialog Resumption options:
          • Re-execute dialog from amended entity – Amend entity behavior can be set at the Task level also. The configurations defined at the task level will override the bot level configurations.
            • Clear entity values captured downstream – to clear all entities captured between the identified entity and the amend
            • Skip display of previously displayed messages – messages from Message nodes alone.
          • Resume dialog from amend identification node – use this option to resume the dialog from the node where the amend was identified.
          • Jump to a specific node in the dialog – use this option to select a node from the current dialog where the task flow needs to jump. You can use this option to add custom behavior before resuming with the dialog. Context object will contain the details of the entities amended, along with the previous and current values. You may use this information to customize the dialog
      • Post rel 8.0 of the platform, the amend process can be extended to entities marked as Do not ask the user for input using the Amend Entities set as Do not ask the user for input option.

Triggers

The following are patterns supporting the Amend Entity behavior. User utterance around these patterns would trigger Amend Entity.

  • ~amend_synonyms <entity_name> from <old_value> to <new_value>
    For example, “change the departure date from today to tomorrow“.
  • ~amend_synonyms <entity_name> [to as from with] <new_value> [instead_of rather_than not] <old_value>
    For example, “modify departure date to tomorrow instead of today“.
  • ~amend_synonyms <entity_name> <old_value> [to as with] <new_value>
    For example, “replace departure date with tomorrow“.
  • ~amend_synonyms <entity_name> from <old_value>
    For example “alter departure date from today“.
  • ~amend_synonyms <entity_name> [to as from with] <new_value>
    For example, “modify departure date to tomorrow“.
  • ~amend_synonyms {from} <old_value> [to as with] <new_value>
    For example, “change from today to tomorrow“.
  • ~amend_synonyms [to as from] <new_value> [instead_of rather_than not] <old_value>
    For example, “change to tomorrow instead of today“.
  • ~amend_synonyms [to as from] <new_value> instead
    For example, “change to tomorrow instead“.
  • ~amend_synonyms [([it that this] {to}) it that this to] <new_value>
    For example, “change it from today to tomorrow“.
  • ~amend_synonyms <entity_name>
    For example, “amend departure date“.
  • ~amend_synonyms <old_value>
    For example, “change today
  • [to as from] <new_value> [instead_of rather_than not] <old_value>
    For example, “to tomorrow instead of today
  • [to as from] <new_value> instead
    For example, “to tomorrow instead

In the above-mentioned patterns the concept ~amend_synonyms includes "amend", "change","modify","alter","update", "replace", "make", "move", "upgrade", "want".

Note that the user can use these patterns to change multiple entity values. For example, “Change the departure date from today to tomorrow and departure city to Chicago” would result in the changes to both departure date and city.

Additional Notes

  • Amend functionality is not applicable for universal bot’s default language. However, when a linked bot is in progress, amend settings of the linked bot will be honored.
  • Identification of the amend requests is driven by the platform’s in-built training data and it is currently supported only for the Dialog task conversations in English.
  • The scope of this feature currently includes only the replacement of previously populated entities. It does not include other scenarios like partial modifications, deletions, additions to entity values.
Menu