Chatbot Overview
Conversational Bots
Intents & Entities
Intelligent Bots's Approach Conversational Platform
Bot Concepts and Terminology
Natural Language Processing (NLP)
Bot Types
Bot Tasks
Starting with Platform
How to Access Bot Builder
Working with 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
Bot Builder
Creating a Bot
Dialog Task
Working with User Intent Node
Working with the Dialog Node
Working with Entity Node
Supported Entity Types
Working with Composite Entities
Supported Time Zones
Supported Colors
Supported Company Names
Working with Message Nodes
Working with the Confirmation Nodes
Working with Service Node
Implementing Custom Authentication
Enabling 2-way SSL for Service nodes
Working with Script Node
Working with Agent Transfer Node
Working with WebHook Node
Defining Connections & Transitions
Managing Dialogs
Prompt Editor
Action & Information Task
Working with Action Tasks
Working with Information Tasks
Establishing Flows
Alert Tasks
Working with Alert Tasks
Managing Ignore Words and Field Memory
Knowledge Tasks
Knowledge Ontology
Building Knowledge Graph
Importing and Exporting Bot Ontology
Knowledge Extraction
Natural Language
Machine Learning
ML Model
Fundamental Meaning
Knowledge Graph Training
Ranking and Resolver
NLP Detection
NLP Settings and Guidelines
Bot Intelligence
Context Management
Session and Context Variables
Context Object
Dialog Management
Amend Entity
Multi-Intent Detection
Sentiment Management
Tone Analysis
Sentiment Management
Default Conversations
Default Standard Responses
Channel Enablement
Test & Debug
Talking to Bot
Utterance Testing
Batch Testing
Recording Conversations
Publishing your Bot
Analyzing your Bot
Conversation Flows
Bot Metrics
Advanced Topics
Bot Authorization
Language Management
Collaborative Development
IVR Integration
Universal Bots
Enabling Languages
Smart Bots
Sample Bots
Travel Planning
Flight Search
Event Based Bot Actions
Bot Settings
Bot Functions
General Settings
PII Settings
Customizing Error Messages
Bot Management
Using Bot Variables
API Guide
API Overview
API List
API Collection
SDK Overview
SDK Security
SDK App Registration Web SDK Tutorial
Message Formatting and Templates
Mobile SDK Push Notification
Web Socket Connect & RTM
Using the BotKit SDK
Installing the BotKit SDK
BotKit SDK Configuration
Events for the BotKit SDK
Functions for the BotKit SDK
BotKit SDK Tutorial – Agent Transfer
BotKit SDK Tutorial – Flight Search Sample Bot
Using an External NLP Engine
Bot Administration
Bots Admin Console
User Management
Managing Users
Managing Groups
Managing Role
Bots Management
Inviting Users
Sending Bulk Invites to Enroll Users
Importing Users and User Data
Synchronizing Users from Active Directory
Security & Compliance
Using Single Sign-On
Cloud Connector
Bot Store
Creating a Bot Account
Adding a Bot
Choosing a Channel for a Bot
Interacting with a Bot
Setting Up Web Service Alerts
Setting Up RSS Alerts
Setting Up the Webhook Bot
Custom Bots
Bots for your Customers FAQs
Bots for your Workforce FAQs
Adding Bots
Contacting Support
Setting Up Filters
Bot Store Settings
How Tos
Context Switching
Using Traits
Live Agent Transfer
Schedule a Smart Alert
Configure Agent Transfer
  1. Home
  2. Docs
  3. Bots
  4. Bot Building
  5. Knowledge Task
  6. Knowledge Extraction

Knowledge Extraction

The Knowledge Graph Extraction Service enables you to effortlessly move your enterprise’s existing Frequently Asked Questions- FAQ content – into bot ontology.

The feature supports the extraction from unstructured content such as web pages and PDF documents as well as from structured content such as CSV files.

After completing the extraction, you can edit the question and answers using an easy-to-use interface and organize them under the relevant Knowledge Graph nodes.

Extraction Process

Moving data using the Knowledge Extraction (KE) Service to the Knowledge Collection involves the followings steps:

  • Step 1 Extracting: Extract the existing FAQ content from structured or unstructured sources of question-answer data such as PDF, web pages, and CSV files. This extraction can be done before or after creating a Knowledge Collection for the bot.
    Note: The KE service supports specific content structure for each source type. Refer to the Supported formats section for details.
  • Step 2 Editing: Upon successful data extraction, you can edit the questions and answer text before moving it to the Knowledge Graph.
  • Step 3 Moving: You can add data into a Bot before or after creating a Knowledge Graph (KG). If you try to add the extracted content to a KG before it exists, the bot creates automatically create one with the Bot’s name.

The Knowledge Extractor allows you to add the extracted content to the Knowledge Graph:

  • Add to Knowledge Graph: moves the selected questions to the root node of the Knowledge Collection. You can use this option when the required term is not yet added to the KG or when the Bot does not have a KG.
  • Add to Specific Term: If the bot already consists of a Knowledge Collection, you drag-drop the selected content to the required nodes.

Extracting from a Website

  1. Open the bot into which you want to extract the content and click the Knowledge Collection tab.
  2. Under Extracts section, click Extract from URL.
  3. Enter a Name for extraction.
  4. Enter the URL of the page, and then click Proceed.
  5. Once the extraction is complete, the page with the Success status appears.

Extracting from File

  1. Open the bot into which you want to extract the content and click the Knowledge Collection tab.
  2. From the Extracts section, from the tab Extract from file, click Browse.
  3. Browse to the file – PDF or CSV formatted, select the file and then click Proceed.
  4. Once the extraction is complete, a page with the Success status will be displayed.

Editing the Extracted Content

  1. Open the bot and click the Knowledge Collection tab.
  2. The Knowledge Extraction section displays the list of all extractions.
  3. Click the name of a successful extract whose content you want to edit.
  4. Hover over the question-answer pair to modify it and click the edit icon.
  5. Make the necessary changes and click Save.

Adding the Extracted Content

There are two ways to add the extracted content to the Knowledge Collection.

From the Extracts Section

  1. Open the bot and click the Knowledge Collection tab.
  2. From the Knowledge Extraction section, select the name of a successful extract whose content you want to add.
  3. Drag and drop the required Q&A to the node/term to which you want to add. As you drag and drop the child nodes will be expanded.
  4. You can select multiple Q&As and do a bulk move.

From Knowledge Collection

  1. Open the bot and click the Knowledge Collection tab.
  2. Select the node to which you want to add these Question-Answers.
  3. Click Add from extraction. It opens the list of successful and failed extractions.
  4. Click the name of a successful extract whose content you want to move.
  5. Select the checkboxes next to the question-answer pairs that you want to move and then click Add.

Note: Once you move a question-answer pair from the extract to the knowledge collection, you cannot move it again. The platform throws a duplicate error when you try to move a question from the extract that’s already present in the collection. You can make any changes to the moved content from the knowledge collection. However, if the question is modified or removed in the KG, then the developer would be allowed to add it again to the KG.

Supported Formats

The Knowledge Extraction service supports extracting FAQs only from supported CSV, PDF and URL formats.


  • The KE service interprets the text in the first column as a question and that in the second column as an answer.
  • The file should not have any headers.
  • The KE service ignores any headers and the text present in the other columns.


The Knowledge Extraction service can process the content from a PDF and convert into question-answer pairs. It can efficiently extract content from documents that have a table of contents and the text is formatted with uniform header and paragraph blocks. The service has limitations in extracting the content from documents with nested headers and multi-format text.

Web Pages

The Knowledge Extraction service supports the following three different formats of FAQ web pages:

  • Plain FAQ Pages with linear question-answer pairs
  • Pages with question hyperlinks that point to answers on the same page.
  • Pages with question hyperlinks that point to answers on a different page.

Extraction of certain FAQs on the webpage fails under the following conditions:

  • The question text is split between multiple HTML tags on the FAQ page.
  • The tag applied to the answer is neither the child nor the sibling of the extracted question as per the HTML DOM structure.
  • The question doesn’t have a hyperlink to the answer (applies to FAQs with hyperlinks)
  • When the questions hyperlink to the answer, but the question statement isn’t repeated above the answer (applies to FAQs with hyperlinks)

The extraction of the entire FAQ page fails if the page consists of more than one FAQ page types mentioned above.