OVERVIEW
Virtual Assistants
Kore.ai Platform
Key Concepts
Natural Language Processing (NLP)
Accessing Platform
VIRTUAL ASSISTANTS
Virtual Assistant Builder
Virtual Assistant Types
Getting Started
Create a Simple Bot
SKILLS
Storyboard
Dialog Tasks
Introduction
Dialog Builder (New)
Dialog Builder (Legacy)
User Intent Node
Dialog Node
Entity Node
Supported Entity Types
Composite Entities
Supported Colors
Supported Company Names
Form Node
Logic Node
Message Nodes
Confirmation Nodes
Bot Action Node
Service Node
Custom Authentication
2-way SSL for Service nodes
Script Node
Agent Transfer Node
WebHook Node
Grouping Nodes
Connections & Transitions
Manage Dialogs
User Prompts
Knowledge Graph
Terminology
Building
Generation
Importing and Exporting
Analysis
Knowledge Extraction
Train
Build
Alert Tasks
Introduction
Ignore Words and Field Memory
How to Schedule a Smart Alert
Small Talk
Digital Views
Introduction
How to Configure Digital Views
Digital Forms
Overview
How to Configure Digital Forms
NATURAL LANGUAGE
Overview
Machine Learning
Introduction
Model Validation
Fundamental Meaning
Introduction
NLP Guidelines
Knowledge Graph
Traits
Introduction
How to Use Traits
Ranking and Resolver
Advanced NLP Configurations
INTELLIGENCE
Overview
Context Management
Overview
Session and Context Variables
Context Object
How to Manage Context Switching
Manage Interruptions
Dialog Management
Sub Intents & Follow-up Intents
Amend Entity
Multi-Intent Detection
Sentiment Management
Tone Analysis
Sentiment Management
Event Based Bot Actions
Default Conversations
Default Standard Responses
TEST & DEBUG
Talk to Bot
Utterance Testing
Batch Testing
Record Conversations
Conversation Testing
CHANNELS
PUBLISH
ANALYZE
Overview
Dashboard
Custom Dashboard
Overview
How to Create Custom Dashboard
Conversation Flows
NLP Metrics
ADVANCED TOPICS
Universal Bots
Overview
Defining
Creating
Training
Customizing
Enabling Languages
Store
Smart Bots
Defining
koreUtil Libraries
SETTINGS
Authorization
Language Management
PII Settings
Variables
Functions
IVR Integration
General Settings
Management
Import & Export
Delete
Bot Versioning
Collaborative Development
Plan Management
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
ADMINISTRATION
HOW TOs
Create a Simple Bot
Create a Banking Bot
Transfer Funds Task
Update Balance Task
Context Switching
Using Traits
Schedule a Smart Alert
Configure UI 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
RELEASE NOTES

チャットボットの概要

コミュニケーションは時代の初めから生活の本質でした。 テクノロジーの進化により、コミュニケーションの方法やスタイルも進化してきました。

初期の頃は、会話は人間同士の言葉や文字による交流に限られていました。 これらの交流は、通常、感情、文脈、および前の会話の認識によって導かれます。 コンピュータの出現により、交流は機械、すなわち人間と機械の交流を含むまでに拡大してきました。 コマンドベースのインターフェイスからグラフィカルユーザーインターフェイス (GUI) から会話型ユーザーインターフェイス (CUI) への移行は自然で、ニーズに基づいたものであり、この移行によってコミュニケーションが容易になりました。

CUI によって、自然な言語でユーザーと対話することができるチャットボットが登場しました。 人工知能と NLP の機能をさらに強化することで、チャットボットは自然言語でユーザーの発話を理解し、ユーザーの発話からタスクを導き出し、タスクを正常に実行するために必要な情報を抽出することができるようになりました。

AI を駆使した NLP ベースのチャットボットや音声アシスタントは、最新のテクノロジーであり、最近ではすべてのビジネスに欠かせないものとなっています。

会話型ボットとは

チャットボットは、ヒト、デジタルシステム、インターネット対応のモノの間のインテリジェントな仲介役として機能する仮想アシスタントと定義できます。アプリケーションや Web サイトの従来のグラフィカル ユーザー インターフェイス (GUI) を「会話型ユーザー インターフェイス」に置き換えます。これは、構文固有のコマンドを入力するか、アイコンをクリックすることで達成される以前の通信からのパラダイムシフトです。

チャットボットは、自然言語ベースの会話をミックスして人々とチャットするように設計することができ、応答はボタン、カレンダー、または人の応答速度を加速させる他のウィジェットの形で提供することができます。

この未来への第一歩として、AI を活用したメッセージングソリューションや会話型ボットがあります。 会話型ボットとは、インテリジェントなバーチャルエージェント、組織のアプリ、組織の Web サイト、ソーシャルプラットフォーム、メッセンジャープラットフォームなど、さまざまなデジタルメディアを介してコミュニケーションを取ることに優れた、自動的に動作するコンピュータプログラムのことです。 ユーザーは、音声やテキストを使ってこのようなボットと対話し、情報にアクセスしたり、タスクを完了させたり、取引を実行したりすることができます。

では、会話型ボットの特徴は何でしょうか? 簡単に言うと、

インテントとエンティティとは

会話型ボットは、3 つの課題に直面しています。

  1. ⦁ ユーザーが何を望んでいるかを理解する – インテント検出。
  2. ⦁ ユーザーが望むことを達成するために、ユーザーから必要な情報を抽出する – エンティティ抽出
  3. ⦁ ユーザーの要望を達成する – 会話/ダイアログフロー

ユーザーが何を言っても発言とみなされます。このユーザの発言から、会話を進めるために必要なインテントとエンティティを抽出するのが会話型ボットの仕事です。この記事の残りの部分では、次のようなユーザーの発言を考えてみます。「今週末ロンドンに飛びたい。

インテントとは、ユーザーの意図のことです。これは通常、ユーザーの発言の中で動詞や名詞の形で出てきます。上記のユーザー発言から、会話ボットはユーザーの意図を「飛びたい」と理解し、対応するダイアログ タスクをトリガーします。

エンティティとは、ユーザーの意図で特定されたタスクを完了するためにボットが必要とするデータや情報の断片のことです。ボットに必要なさまざまな形式のエンティティが複数存在する場合があります。これらは、ユーザーの発言の一部として使用することも、ボットがユーザーにエンティティ値の入力を求める必要があることもあります。例えば、上記のユーザー発言では、「ロンドン」と「今週末」は、それぞれ [目的地] と [旅行日] というエンティティの値を形成しています。ご覧のように、「ソース」エンティティの値が欠落しているため、ボットは同じ値を入力するようにユーザーに要求する必要があります。
ここに示すように、エンティティは、場所、日付、時刻、個人などの任意のタイプにすることができます。

インテリジェントボットの構築方法

ボットはデフォルトではスマートではありません。ボットは機械学習、ビッグデータ、自然言語処理などの技術を活用して、ある程度の人工知能を発揮できるように作られています。チャットボットは、ユーザーのニーズを認識し、ユーザーの視点や文脈を理解し、ユーザーの気分や感情に応じて応答することで、インテリジェントなものとなります。その知能の高さが、チャットボットに会話のあらゆるシナリオを簡単に処理する能力を与えているのです。

人間を理解するための会話型ボットの鍵は、人間の意図を特定し、ユーザーの話し手から関連情報を抽出し、その行為に関連する行動やタスクをマッピングする能力です。NLP(自然言語処理) とは、テキストの意図 (インテント) と関連情報 (エンティティ) をテキストから抽出する科学です。

対話を管理して複数の会話スレッドを追跡し、コンテキストを記憶し、ユーザーの声や感情に反応することで、会話に必要な人間的なタッチを与えると同時に、ユーザーに正確で適切な応答を提供することができます。

インテリジェントなボットを構築するのに役立つもう一つの側面は、ナレッジ ベースを持つことです。これにより、ボットはよくある質問に静的な応答を返すことができるようになります。ナレッジ コレクションを構築することは、カテゴリーのシステムに従って、相互に依存するすべての特性と関係を持つエンティティ、アイデア、およびイベントを表現する試みです。この構造化されたデータ分類は、ボットがユーザーのクエリに効果的かつ容易に応答するのに役立ちます。

OVERVIEW
Virtual Assistants
Kore.ai Platform
Key Concepts
Natural Language Processing (NLP)
Accessing Platform
VIRTUAL ASSISTANTS
Virtual Assistant Builder
Virtual Assistant Types
Getting Started
Create a Simple Bot
SKILLS
Storyboard
Dialog Tasks
Introduction
Dialog Builder (New)
Dialog Builder (Legacy)
User Intent Node
Dialog Node
Entity Node
Supported Entity Types
Composite Entities
Supported Colors
Supported Company Names
Form Node
Logic Node
Message Nodes
Confirmation Nodes
Bot Action Node
Service Node
Custom Authentication
2-way SSL for Service nodes
Script Node
Agent Transfer Node
WebHook Node
Grouping Nodes
Connections & Transitions
Manage Dialogs
User Prompts
Knowledge Graph
Terminology
Building
Generation
Importing and Exporting
Analysis
Knowledge Extraction
Train
Build
Alert Tasks
Introduction
Ignore Words and Field Memory
How to Schedule a Smart Alert
Small Talk
Digital Views
Introduction
How to Configure Digital Views
Digital Forms
Overview
How to Configure Digital Forms
NATURAL LANGUAGE
Overview
Machine Learning
Introduction
Model Validation
Fundamental Meaning
Introduction
NLP Guidelines
Knowledge Graph
Traits
Introduction
How to Use Traits
Ranking and Resolver
Advanced NLP Configurations
INTELLIGENCE
Overview
Context Management
Overview
Session and Context Variables
Context Object
How to Manage Context Switching
Manage Interruptions
Dialog Management
Sub Intents & Follow-up Intents
Amend Entity
Multi-Intent Detection
Sentiment Management
Tone Analysis
Sentiment Management
Event Based Bot Actions
Default Conversations
Default Standard Responses
TEST & DEBUG
Talk to Bot
Utterance Testing
Batch Testing
Record Conversations
Conversation Testing
CHANNELS
PUBLISH
ANALYZE
Overview
Dashboard
Custom Dashboard
Overview
How to Create Custom Dashboard
Conversation Flows
NLP Metrics
ADVANCED TOPICS
Universal Bots
Overview
Defining
Creating
Training
Customizing
Enabling Languages
Store
Smart Bots
Defining
koreUtil Libraries
SETTINGS
Authorization
Language Management
PII Settings
Variables
Functions
IVR Integration
General Settings
Management
Import & Export
Delete
Bot Versioning
Collaborative Development
Plan Management
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
ADMINISTRATION
HOW TOs
Create a Simple Bot
Create a Banking Bot
Transfer Funds Task
Update Balance Task
Context Switching
Using Traits
Schedule a Smart Alert
Configure UI 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
RELEASE NOTES

Chatbot Overview

Communication has been the essence of life from the beginning of times. With the evolution of technology, mode, and style of communication have also evolved.

In the early days, conversations were restricted to verbal and textual interaction between humans. These interactions are usually guided by emotions, context, and awareness of the previous conversation. With the advent of computers, interactions have now expanded to include machines i.e. human-machine interactions. The transition from a command-based interface to a Graphical User Interface (GUI) to a Conversational User Interface (CUI) was natural, need-based and this transition made the communication easier.

With CUI, came chatbots that interact with users in a natural language. Further enhancements using Artificial Intelligence and NLP capabilities enabled a chatbot to understand user utterance in the natural language; derive the task from the user utterance as well as extract the information required to successfully execute the task.

AI-driven, NLP-based chatbots and voice assistants are the latest in technology and a must for all businesses these days.

What are Conversational Bots?

A Conversational Bot or Chatbot is a virtual assistant that acts as an intelligent intermediary between people, digital systems, and internet-enabled things. It replaces the traditional Graphical User Interfaces (GUIs) of an application or website with a Conversational User Interface. It is a paradigm shift from the earlier communications achieved either by entering syntax-specific commands or clicking icons.

Chatbots are designed to chat with users through a combination of natural language-based conversations. Responses come in the form of buttons, calendars, or other widgets that accelerate the speed with which a user can respond.

AI-powered messaging solutions or Conversational Bots serves as the stepping stone to the future. A Conversational Bot is an automated computer program skilled in digital media communication. It communicates through intelligent virtual agents, organizations’ apps and websites, social media platforms, and messenger platforms. Users can interact with such bots using voice or text to access information, complete tasks, and execute transactions.

So what makes the Conversational Bot so special? This in a nutshell:

What are Intents & Entities?

A Conversational Bot faces three challenges:

  1. Intent Detection – Understanding what the user wants.
  2. Entity Extraction – Extracting the required information from the user to accomplish what the user wants.
  3. Dialog Flow/Conversation – Accomplishing the user wants.

Whatever the user says is considered as an Utterance. It is the task of the Conversational Bot to extract from this user utterance, the intent, and entities essential to carry a conversation. For example, let us consider the following user utterance: I want to fly to London this weekend.

An Intent is the user’s intention. It usually comes in the form of a verb or noun within the user utterance. From the above user utterance, a Conversational Bot understands the user intent as want to fly and triggers the corresponding dialog task.

Entities are a collection of data or information that the Bot requires to complete the task as identified in the user intent. There can be multiple entities in various formats that are required by the Bot. These can be a part of user utterance or the Bot needs to prompt the user for the entity values. For example, in the above user utterance, London and this weekend form the values for the entities Destination and Travel Date respectively. As you can notice, the Source entity value is missing and the Bot needs to prompt the user for the same.

As seen, an Entity can be of any type like location, date, time, person, etc,.

How to Build Intelligent Bots?

Bots are not smart by default. They are made capable of showing some level of artificial intelligence by leveraging technologies like machine learning, big data, natural language processing, etc. A chatbot is intelligent when it is aware of user needs, understands the user’s perspective or context, and responds according to the user’s mood or emotion. Its intelligence gives the chatbot the ability to handle any scenario of a conversation with ease.

The key for a Conversational Bot to understand humans is; its ability to identify the human intentions, extract relevant information from the user utterance, and map the relevant action/task against that utterance. NLP (Natural Language Processing) is the science of extracting the intention (Intent) of text and relevant information (Entity) from the text.

Managing dialogs to keep track of multiple conversation threads, remembering the context, and responding to the user tone or sentiment provides the much-needed humane touch to the conversation and at the same time serving the user with accurate and appropriate responses.

Another aspect that helps build an intelligent Bot is having a Knowledge Base. This gives the Bot an ability to respond to frequently asked questions that return static responses. Building Knowledge Collection is an attempt to represent entities, ideas, and events with all their interdependent properties and relations according to a system of categories. This structured categorization of data helps the Bot to answer user queries effectively and with ease.