チャットBotの概要
会話型ボット
Kore.ai のアプローチ
Kore.ai 会話型プラットフォーム
ボットの概念と用語
自然言語処理 (NLP)
ボットタイプ
ボットタスク
Kore.ai プラットフォームを使う
ボットビルダーのアクセス
Kore.ai ボットビルダーを使う
初めてのボット構築
ボット構築を始める
シンプルなボットを構築
ボットビルダー
標準ボットの構築
設計
開発 - 標準ボット
ストーリーボード
ダイアログタスク
ユーザーインテントノード
ダイアログノード
エンティティノード
サポートするエンティティタイプ
複合エンティティ
サポートする色
サポートする会社名
フォームノード
ロジックノード
メッセージノード
確認ノード
サービスノード
カスタム認証の実装
サービスノード用双方向 SSL
スクリプトノード
エージェント転送ノード
Webフックノード
ノードのグループ化
接続と遷移
ダイアログの管理
プロンプトエディタ
アラートタスク
アラートタスク (英語)
無視する単語 & フィールドメモリ
デジタルフォーム
デジタルビュー
知識グラフ
用語
構築
生成
ボットオントロジーのインポート/エクスポート
解析
知識の抽出
スモールトーク
自然言語
概要
機械学習
ML (機械学習) モデル
基本概念
NLP (自然言語処理) の設定 & ガイドライン
知識グラフのトレーニング
示唆
ランキング & リゾルバ
高度な NLP 設定
インテリジェンス
概要
コンテキスト管理
セッションおよびコンテキスト変数
コンテキストオブジェクト
ダイアログ管理
サブインテント
エンティティの変更
複数インテントの検出
センチメント分析 (英語)
トーン分析
センチメント管理
デフォルトの会話
デフォルトの標準レスポンス
チャネルの有効化
テスト & デバグ
ボットと会話
発話テスト
バッチテスト
会話の記録 & テスト
ボットの公開
ボットの分析
概要
ダッシュボード
カスタムダッシュボード
会話フロー
ボットメトリクス (英語)
アドバンスド トピック (英語)
ボット認証
言語管理
共同開発
IVR 統合
データ テーブル
ユニバーサル ボット
定義
構築
トレーニング
カスタマイズ
言語の有効化
スマート ボット
スマート ボットの定義
イベントベースのボットアクション
koreUtil ライブラリ
ボット設定
ボットの機能
ボット設定
PII 設定
エラーメッセージのカスタマイズ
セッションを管理する
ボット管理
ボットのバージョン
ボット変数
API ガイド (英語)
API 概要
API リスト
API コレクション
SDK (英語)
SDK 概要
SDK セキュリティ
SDK アプリ登録
Web 上の SDK チュートリアル
メッセージ形式とテンプレート
モバイル SDK プッシュ通知
メッセージ形式とテンプレート
ウィジット SDK チュートリアル
WebSocket 接続
BotKit SDK の利用
インストール
設定
イベント
機能
BotKit SDK チュートリアル - エージェント転送
BotKit SDK チュートリアル - フライト検索サンプルボット
外部 NLP エンジンの利用
ボット管理者 (英語)
ボット管理者コンソール
ダッシュボード
ユーザー管理
御社ユーザーの管理
御社グループの管理
ロールを管理
ボット管理
エンロール
ユーザーの招待
一括招待
ユーザーのインポート
AD からユーザーを同期
セキュリティ & コンプライアンス
シングル サインオンを使う
セキュリティの設定
クラウド コネクタ
分析
請求処理
How To
シンプルなボットの構築
バンキングボットの構築
送金タスク
残高の更新タスク
知識グラフを作成
知識グラフへ抽出したFAQを入力
スマート アラートのスケジュール
エージェント転送の設定
パネルやウィジットの設定
デジタル ビューの設定
デジタル フォームの設定
データをデータテーブルに追加
データテーブルのデータを更新
フォームデータをデータテーブルに追加
コンテキストの切り替え
意図を使う
インテントやエンティティのパターン
エンティティ ルール
マルチ言語なボットの動き
カスタム ダッシュボード
ボット メトリクスをフィルターするためのカスタムタグ
グローバル変数
コンテンツ変数
ボット機能を使う
ボットリリースのライフサイクル
グループノードを利用したインテントのスコーピング
Kore-Unblu インテグレーション
  1. Home
  2. Docs
  3. Bots
  4. Advanced Topics
  5. Universal Bot
  6. Defining a Universal Bot

Defining a Universal Bot

Kore.ai’s Universal Bots facilitate a scalable, modular approach to bot building by linking several standard individual bots into one.

  • Modularity: Build separate bots that address domain-specific issues and then integrate them to optimally interoperate.
  • Scalability: Start building bots that address key use cases and keep adding additional bots to address more use cases.

Before starting with creating a Universal Bot, let us understand how Univeral Bots work and how they differ from the Standard Bots.

Bot Behavior

Universal bot responses vary with the number of bots and tasks that match the user intent along with their relevance (exact matches or suggestions). The Natural Language Processing (NLP) engine processes the utterances sent to the linked bots, detects the user intents, and ranks them based on relevance. As a developer, you can test and train the bot responses as explained in Test the Universal Bot.

Following the table shows how universal bot responses operate in various possible NLP outcomes:

NLP Outcome Bot Response
Only one exact match found from any of the linked bots Executes the task with the exact match
Exact matches found in more than one linked bot Tries to match the invocation names from the user utterance with the bot results, else prompts the user to select one.
Exact matches found with two or more tasks of a single linked bot Disambiguates using the current bot context, else prompts the user to select one.
Suggestions found in more than one linked bot Evaluates the individual scores and executes the winning intent based on the P&R settings.
Suggestions found with two or more tasks of a single linked bot Executes the winning intent based on the P&R settings.
Only one suggestion found Shows the suggestion to the user asking if they would like to select it
No exact match or suggestion found Checks for intent in the Universal Bot – small talk or fallback bot

Standard Bots vs. Universal Bots

Universal Bots connect multiple Standard Bots into a single bot. They support most Standard Bot features with a few exceptions.

Enabled Features and Configurations

This section assumes that you understand the fundamentals of standard bots. Details relevant to the Universal Bots alone are listed here. We recommend you to refer to the relevant standard bot documentation for help with the basics.
The Feature column entries in the following table provide URLs to the standard bot documentation.
The Learn more links in the Description column refer to the universal bot documentation.

Feature Description
Natural Language
Testing Since the universal bot links together standard bots, the Natural Language Processing (NLP) settings are optimized to accurately recognize the relevant bot and intent. You can test and train the universal bot like a standard bot with small differences. When you train the task it happens at the linked bot level. Learn more.
Training

(UB 2.0)

Post ver7.3 of the platform, the Universal Bot 2.0 can be trained, the approach is slightly different from the standard bots. Learn more.
Standard Responses The universal bot will hold a limited set of standard responses that are relevant to bot level functions like greetings. Go to Natural Language -> Default Conversation, to access the Standard Responses section to edit the relevant standard responses.
Batch Testing Universal bots only support testing Custom-defined utterances and not Developer-defined utterances and Succesful user utterances.
The Custom-defined utterances test suites remain similar to the standard bots’ except that the JSON Dataset file that you upload should contain a bot name along with the intent and input for every test case. Also, the downloaded batch test report shows the results with corresponding bot names.
Default Dialog Universal bots come with a default dialog task that gets triggered for unidentified intents. You can customize this task or import a new one. Learn more.
Help When a user types Help during a chat, a standard bot responds with the list of tasks that it can perform, allowing the user to select a task name to execute.

When it comes to Universal bots, if a user types Help, the bot responds with the names of linked bots. The user cannot select or execute a task from the list.

Channel Configuration
All Universal bots do not obtain the channel configurations of the linked bots and need an independent channel configuration. You can set up new channels for the universal bot independent of the linked bot channels. The published tasks in the linked bots execute from the universal bot channels. Learn more.
Settings
General Settings Universal and standard bots share the same general settings.
Language Management Universal bots do not obtain the enabled languages of the linked bots. You must enable default and additional languages explicitly for the universal bot. But when user utterances are made in an enabled language, the universal bot routes it to only those linked bot tasks that support the language. For example, if German is enabled for the universal bot and a user utters in German, the NLP engine looks for all the linked bot tasks that support German and sends the utterance to those tasks. Learn more.
Developer Collaboration Works similar to standard bots. Once you share a Universal Bot with other developers, they can link and unlink bots.
Change Logs Universal bot change logs record all the changes applicable to the standard bots, plus the following:

  1. Linking of a bot
  2. Un-linking of the bot
  3. Change to default dialog
  4. Publishing of default dialog
Import & Export bot

(supported from ver7.1)

Like standard bots, you can export and import the published and unpublished universal bots. Since universal bots deal with linked bots the following need to be taken care of:

  • Export of a universal bot – only the reference to the linked bot (reference id) will be included not the entire linked bot definition;
  • Import of the universal bot – in the environment where the bot is being imported to, the platform checks for the bots with reference id matching the linked bot. If found they are automatically linked to the imported universal bot. Also you should have permissions for the linke bot, else it will not be linked. Ensure that you import the linked bots before importing the universal bot.
Delete bot Like standard bots, you can delete the unpublished universal bots.
Variable Management

(UB 2.0)

Like standard bots, you can define global and content variables in universal bots. In addition, you can choose whether or not the variables can be propagated to the linked bots.
API Extensions
SDK toolkit Enabled with the following events – on message, on hook, on event, on alert
Agent Transfer Agent Transfer can be configured for a Universal Bot. The Agent Node needs to be added in default dialog and addition of any subsequent nodes after the agent node is not allowed.
WebHook Node Multiple webhook nodes can be placed in the default dialog. When a webhook node is reached during the conversation, the platform invokes the BotKit similar to that of a Standard Bot.
SDK as Channel Enabled
Analyze
Chat History All the Universal Bot chats get recorded. Any initiated training will affect the individual linked bot.
Publish
All You can select one or more linked bots and publish the Universal Bot. Learn more about the publish flow.

Event Management

Let us see the behavior of Universal Bots for the following BotKit events in Linked Bots:

  • End of Conversation (see below)
  • On Message
  • Agent
  • Webhook
  • Event
  • Alert Events

When a child bot is in context i.e., a task from a child bot is in progress, then the events related to the child bots will be triggered based on the configurations set up by the developer:

  • If an event is enabled in child bot, then the event will be forwarded to child bot BotKit
  • If an event is not enabled in child bot and
    • if that event is enabled in Universal bot, then the event will be sent to Universal bot BotKit
    • if that event is not enabled in Universal bot as well, then the event will not be forwarded to any BotKit.

Following table summarises the above scenarios and behavior:

Event Name Child Bot Status Universal Bot Status Expected Behavior
On Message Enabled Event sent to child bot BotKit
Disabled Enabled Event sent to Universal BotKit
Disabled Disabled Invalid scenario. The event does not trigger in this case
All other events Enabled Event sent to child bot BotKit
Disabled Enabled Event sent to Universal BotKit
Disabled Disabled Same as the current behavior. E.g. dialog reaches Webhook node but ‘on Hook’ event is not enabled

End of Conversation

The following table depicts the bot behavior for the end of the conversation event:

Conversation ends End of Conversation Event in Univeral Bot End of Conversation Event in Linked Bot Behavior
Universal Bot Enabled Enabled or Disabled Trigger event in Universal Bot
Universal Bot Disabled Enabled or Disabled No event triggered
Linked Bot Enabled or Disabled Enabled Tigger event in Linked Bot
Linked Bot Enabled Disabled Tigger event in Universal Bot
Linked Bot Disabled Disabled Event not triggered

Next Steps

  • You can start creating your Universal Bots by referring here.
  • You can learn about training the Universal Bots from here.
メニュー