Virtual Assistants Overview
Natural Language Processing (NLP)
Concepts and Terminology
Quick Start Guide
Accessing the Platform
Navigating the XO Platform
Building a Virtual Assistant
Help & Learning Resources
Release Notes
Current Version
Recent Updates
Previous Versions
Request a Feature
Conversation Designer
Dialog Tasks
Mock Scenes
Dialog Tasks
Navigate Dialog Tasks
Build Dialog Tasks
Node Types
Intent Node
Dialog Node
AI-Assisted Dialog Node
Entity Node
Form Node
Confirmation Node
Message Nodes
Logic Node
Bot Action Node
Service Node
Webhook Node
Script Node
Process Node
Agent Transfer
Node Connections
Node Connections Setup
Sub-Intent Scoping
Entity Types
Entity Rules
User Prompts or Messages
Voice Call Properties
Knowledge AI
Knowledge Graph
Build a Knowledge Graph
Manage FAQs
Knowledge Extraction
Import or Export Knowledge Graph
Prepare Data for Import
Importing Knowledge Graph
Exporting Knowledge Graph
Auto-Generate Knowledge Graph
Knowledge Graph Analysis
Answer from Documents
Alert Tasks
Small Talk
Digital Skills
Digital Forms
Digital Views
Session and Context Variables
Context Object
Intent Discovery
NLP Optimization
ML Engine
Model Validation
FM Engine
KG Engine
Traits Engine
Ranking and Resolver
Training Validations
NLP Configurations
NLP Guidelines
LLM and Generative AI
Event Handlers
Contextual Memory
Contextual Intents
Interruption Management
Multi-intent Detection
Amending Entities
Default Conversations
Conversation Driven Dialog Builder
Sentinment Management
Tone Analysis
Default Standard Responses
Ignore Words & Field Memory
Test & Debug
Talk to Bot
Utterance Testing
Batch Testing
Conversation Testing
Conversation Testing Overview
Create a Test Suite
Test Editor
Test Case Assertion
Test Case Execution Summary
Health and Monitoring
NLP Health
Flow Health
Actions Overview
Azure OpenAI
Google Maps
Microsoft Graph
Open AI
Agent Transfer Overview
Custom (BotKit)
NiceInContact(User Hub)
External NLU Adapters
Dialogflow Engine
Test and Debug
Dashboard Filters
Overview Dashboard
Conversations Dashboard
Users Dashboard
Performance Dashboard
Custom Dashboards
Custom Meta Tags
Create Custom Dashboard
Create Custom Dashboard Filters
NLP Insights
Conversations History
Conversation Flows
Conversation Insights
Feedback Analytics
Usage Metrics
Containment Metrics
Universal Bots
Universal Bot Definition
Universal Bot Creation
Training a Universal Bot
Universal Bot Customizations
Enabling Languages
Manage Assistant
Plan & Usage
Usage Plans
Support Plans
Conversation Sessions
Multilingual Virtual Assistants
Get Started
Supported Components & Features
Manage Languages
Manage Translation Services
Multiingual Virtual Assistant Behavior
Feedback Survey
Masking PII Details
IVR Settings
General Settings
Assistant Management
Manage Namespace
Data Table
Table Views
App Definitions
Data as Service
Build a Travel Planning Assistant
Travel Assistant Overview
Create a Travel Virtual Assistant
Design Conversation Skills
Create an ‘Update Booking’ Task
Create a Change Flight Task
Build a Knowledge Graph
Schedule a Smart Alert
Design Digital Skills
Configure Digital Forms
Configure Digital Views
Train the Assistant
Use Traits
Use Patterns
Manage Context Switching
Deploy the Assistant
Use Bot Functions
Use Content Variables
Use Global Variables
Use Web SDK
Build a Banking Assistant
Design Conversation Skills
Create a Sample Banking Assistant
Create a Transfer Funds Task
Create a Update Balance Task
Create a Knowledge Graph
Set Up a Smart Alert
Design Digital Skills
Configure Digital Forms
Configure Digital Views
Add Data to Data Tables
Update Data in Data Tables
Add Data from Digital Forms
Train the Assistant
Composite Entities
Use Traits
Use Patterns for Intents & Entities
Manage Context Switching
Deploy the Assistant
Configure an Agent Transfer
Use Assistant Functions
Use Content Variables
Use Global Variables
Intent Scoping using Group Node
Analyze the Assistant
Create a Custom Dashboard
Use Custom Meta Tags in Filters
Migrate External Bots
Google Dialogflow Bot
API Reference
API Introduction
API List
API Collection
koreUtil Libraries
SDK Reference
SDK Introduction
SDK Security
SDK Registration
Web Socket Connect and RTM
Installing the BotKit SDK
Using the BotKit SDK
SDK Events
BotKit - Blue Prism
BotKit - Flight Search Sample VA
BotKit - Agent Transfer
Widget SDK Tutorial
Web SDK Tutorial
Introduction to Admin Console
Administration Dashboard
User Management
Add Users
Manage Groups
Manage Roles
Data Tables and Views
Assistant Management
Invite Users
Send Bulk Invites
Import User Data
Synchronize Users from AD
Security & Control
Using Single-Sign On (SSO)
Two-Factor Authentication (2FA)
Security Settings
Cloud Connector
  1. Home
  2. Docs
  3. Virtual Assistants
  4. Natural Language
  5. LLM and Generative AI

LLM and Generative AI

The XO Platform helps enhance your bot development process and enrich end-user conversational experiences by integrating pre-trained OpenAI or Azure OpenAI language models in the backend. With the advancement of LLM and Generative AI technologies, this integration with OpenAI adds new capabilities to your Virtual Assistant through auto-generated suggestions. This capability can automate dialog flows creation, user utterance testing and validation, and conversation design based on context-specific and human-like interactions.

You can find LLM and Generative AI features by going to Build > Natural Language > Advanced NLU Settings.

Key Features

The Integration of LLM and Generative AI enables the following features: 

  • Automatic Dialog Generation: This feature helps build production-ready dialog tasks automatically by briefly describing the task. A preview of the generated dialog is available and lets you modify the intent description and create multiple iterations of the dialog.
  • Training Data Suggestions: The platform suggests high-quality training utterances, including NER annotations for each intent. You can review and add suggestions to create an efficient training set.
  • NLP Batch Test Cases Suggestion: The Platform generates NLP test cases for every intent, including entity checks. You only need to create test suites in the Builder using the generated testing utterances.
  • Conversation Test Cases Suggestion: The Platform suggests simulated user inputs covering various scenarios from an end-user perspective at every test step. You can use these suggestions to create test suites. 
  • Dynamic Prompt and Message Rephrasing: Enhance end-user experience with empathetic and contextual bot responses. This feature uses Generative AI to rephrase bot responses based on user emotions and conversation context.
  • AI-Assisted Dialog: Collect Entities from end-users in a free-flowing conversation using LLM and Generative AI in the background. You can define entities to be collected as well as rules & scenarios.


All these features benefit VA developers, NLP developers, and testers as follows:

  • Mundane tasks like generating dialog tasks or training utterances are automated to help developers be more productive and focus on other important tasks like enhancing conversation design, creating complex test cases, and more.
  • Testers can ensure that their intent descriptions are meaningful in the right context to generate the right content.
  • Developers can create dialog tasks on-the-fly through the prebuilt Dialog Tasks Flow.
  • The Platform provides suggestions and nudges developers in the right direction for the better design and development of Virtual Assistants. For example, it offers curated use case suggestions while creating the VA, including probable user inputs (simulating end-user behavior) in Conversation Testing. This way, the VA can simulate the end user’s behavior at every conversation step and respond more realistically by considering error scenarios, digressions, and contextual changes.

Important Considerations

This feature is only available if the VA’s NLU language is English and requires sharing data with third parties: OpenAI (when using the OpenAI integration) or OpenAI and Microsoft (when using the Azure integration).

Configure LLM and Generative AI

The following steps are necessary to configure LLM and Generative AI:

  1. Prerequisites
  2. Integration Setup
  3. Enable LLM Features


To enable the LLM & Generative AI features, you must meet the following prerequisites:

  1. Upgrade to NLP Version – v3 (click Upgrade when prompted within the Advanced NLU Settings section).
  2. Select English as the NLP Language under Configurations > Languages.

Integration Setup

LLM and Generative AI features are available by integrating with OpenAI directly or via Microsoft Azure.

To set up an integration, follow these steps:

  1. Click OpenAI or Azure under Advanced NLU Settings > LLM & Generative AI > Integration Setup.
  2. Configure the OpenAI connector or the Azure OpenAI connector.
  3. Once configured the status of your chosen integration changes from Configure Now to Configured.

We recommend the Azure integration because the Azure OpenAI Service is more reliable and provides REST API access to OpenAI’s language models.

Enable LLM Features

The list of available LLM features is disabled by default within the Advanced NLU section. Once you configure an integration, you can enable this list. Set the toggle under Feature List to the Enabled state to do so.

Next, please read and agree to the Terms and Conditions. Select the checkbox – I agree to the above terms and conditions, then click Enable.

Once the features list is enabled, you can select or deselect desired features.

LLM and Generative AI Features Specifications

Automatic Dialog Task Generation

This feature auto-generates conversations and dialog flows using the VA’s purpose and intent description provided during the creation process. The Platform uses LLM and generative AI to create suitable Dialog Tasks for Conversation Design, Logic Building & Training by including the required nodes in the flow. 

You must provide an intent description, and the Platform handles the Conversation Generation for the Dialog Flow.

You can preview the conversation flow, view the Bot Action taken, improvise the intent description, and regenerate the conversation to make it more human-like.

The nodes and the flow for the Business Logic are automatically built for your conversation, and you only need to configure the flow transition.

The Platform auto-defines the Entities, Prompts, Error Prompts, Bot Action nodes, Service Tasks, Request Definition, Connection Rules, and other parameters.


Once you enable this feature:

  1. The Platform triggers the flow when you launch a task for the first time.
  2. The Platform presents the intent description and an option to generate conversation.
  3. You can preview the generated conversation, edit the description, and regenerate it.
  4. The Platform sends the updated description to Generative AI in the background to get the new conversation.
  5. Once you’re satisfied with the conversation, generate a dialog task.

If this feature is disabled, you will not have the option to auto-generate a dialog flow when first launching a Dialog Task.

Note: The Platform uses the configured API Key to authorize and generate the suggestions from OpenAI.

Learn more.

Training Data Suggestions

This feature generates a list of suggested training utterances and NER annotations for each intent description and Dialog Flow, eliminating the need for manual creation.


The Platform can generate utterances that can be used to train your VA.

Once you request to generate utterances for a given intent, the Platform provides utterance suggestions based on the following information: 

  1. Intent,
  2. Entities and Entity Types,
  3. Probable entity values,
  4. Different scenarios for training utterances based on entities, a combination of entities, structurally different utterances, etc.

You can add/delete the suggested training utterances from the list or generate more suggestions.

If this feature is disabled, you won’t see the Suggestions tab on the training page.

Learn more.

NLP Batch Test Cases Suggestion

This feature lets you generate test cases and add them to the test suite with minimum or no errors.


  1. When creating a New Test Suite, select Add Manually or Upload Test Cases File to add test cases. 
  2. Add Manually creates an empty test suite where you can generate test cases and do the following:
    1. Select a Dialog Task.
    2. Based on the intent context, the Generative AI generates test cases you can review and add to or remove from the Test Suite.
  3. When you click Generate Test Cases, the Platform sends Generative AI the following information to generate test cases:
    1. Intent,
    2. Entities,
    3. Probable entity value,
    4. Different scenarios to simulate end-user utterances,
    5. Random training utterances and test cases that are generated to avoid duplicate test cases from Generative AI.

If this feature is disabled, you will not have the option to generate test cases during batch testing.

Learn more.

Conversation Test Cases Suggestion

This feature provides a regression tool or a Playbook that creates a conversation test suite for each intent (new and old) to evaluate the impact of the change on the conversation execution.

You can view input/utterance suggestions at every conversation step simulating the various input types and scenarios. This feature helps check if the task/intent is robust enough to handle random user utterances.

This feature also helps you predict and simulate the end user’s behavior and check if the VA can execute all the defined flows by generating user responses and presenting any digressions from the specified intent.


  1. You can create a test suite by recording a live conversation with a VA by initiating the interaction or letting the VA initiate it.
  2. An icon displays to indicate the user input suggestions from Generative AI.
  3. The Platform triggers OpenAI to generate suggestions whenever user input is expected.
  4. The Platform shares the following information with OpenAI to generate suggestions
    1. Randomly picked intents from the VA (Dialog, FAQ),
    2. Conversation flow,
    3. Current Intent, if any,
    4. Current node type:
      • For an entity node, the system sends the following:
        • Entity name,
        • Entity type,
        • Sample entity values. 
      • Types of user input scenarios:
        • Entities,
        • Without entities,
        • Different entity combinations in the user input,
        • Digression to another intent,
        • Trigger error scenarios.
    5. You can regenerate suggestions if required.
    6. You can accept the suggestions shown or type custom input at every step.
    7. Create a Test Suite after stopping the recording and validating the model.

If the feature is disabled, the Platform doesn’t display the Generative AI suggestions icon and the suggestions themselves.

Learn more.

Dynamic Prompt and Message Rephrasing

This feature sends all User Prompts, Error Prompts, and Bot Responses to the Generative AI along with the conversation context, which depends on the configured number of user inputs. Responses are rephrased based on this context and user emotion, providing a more empathetic, natural, and contextual conversation experience to the end-user. 


When configuring a Message, Entity, or Confirmation node, you can enable the Rephrase Response feature (disabled by default). This lets you set the number of user inputs sent to OpenAI as context for rephrasing the response sent through the node. You can choose between 0 and 5, where 0 means that no previous input is considered, while 5 means that the previous. 5 responses are sent as context.

When this feature is disabled, the Rephrase Response section is not visible within your node’s Component Properties.

AI-Assisted Dialog

When enabled, this feature lets you add an AI-Assisted Dialog Node to Dialog Tasks. This node allows you to collect Entities from end-users in a free-flowing conversation using LLM and Generative AI in the background. You can define the entities to be collected as well as rules & scenarios. You can configure node properties just like any other node. You can also use the AI-Assisted Dialog Node across Dialog Tasks.


When creating or editing a Dialog Task that’s created manually or auto-generated, you can find a node called AI-Assisted Dialog within your nodes list.
When this feature is disabled, the node is unavailable within the Dialog Builder. Learn more.

Note on Auto Training for Machine Learning and Negative Patterns Settings

The Auto Training for Machine Learning and the Negative Patterns settings on the Advanced NLU Settings module help you manage the Machine Learning and Fundamental Meaning Engines, respectively. For more information, see: Auto Training For Machine Learning and Negative Patterns.