チャット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. Intelligence
  5. ダイアログ管理

ダイアログ管理

人間の会話は曲がりくねっているのが特徴で、2 つの方向が同じになることはありません。自然な会話とは、ボットに事前定義された直線的なインテント解決の道筋を外れてしまうこともよくあるものです。ユーザーが別の会話を開始する前に、ボット がユーザー インテントを合理的な結果に導くことができるようにすることが理想ですが、必ずしもそうとは限りません。

たとえば、次のような会話を考えてみましょう。

これにはボットが現在のインテントを続行するためのエンティティ値が含まれており、同時に新しいユーザーの要件やインテントも提示しています。

ボットは文脈データと会話の継続性を失わずに、ユーザーがタスクを一時停止し、別のタスクを開始して完了させ、元のタスクにシームレスに戻れるよう考慮しなければなりません。

Kore.ai では、ボット、タスク、ノード レベルでの一時停止と再開機能を細かく制御することができ、コンテキストの切り替えルールと動作をコントロールできます。また、タスク切り替え体験を定義するための幅広いオプションを与えることで、インテント フローの割り込みを処理できます。

オプションのうち、[一時停止と再開] オプションはボット、タスク、ノード レベルで設定でき、さまざまなビジネス要件に合わせて設定がレイヤー化されていることを確認できます。また、タスク間でコンテキスト データを渡す機能を使用して、タスク間に条件付き例外を追加することもできます。

続くセクションでは、以下について説明しています。

  • さまざまな一時停止と再開の設定、
  • ボット、タスク、ノード レベルでのセットアップの階層。

一時停止と再開

[一時停止と再開] オプションでは、ユーザーが別のタスクに切り替えるかどうか、どのように切り替えるか、また終了の方法を選択することができます。一時停止と再開の設定はボット レベル、またはタスクやダイアログ レベルで行うことができます。このセクションでは、ボット レベルでの設定について説明します。「一時停止と再開の階層」セクションで説明したように、これらの設定はタスク レベルでオーバーライドすることができます。

一時停止と再開の設定は、[自然言語] > [インテリジェンス] > [割り込みの管理] ページからアクセスできます。

このプラットフォームでは、以下の 3 つのカテゴリの下に 一時停止と再開のオプションが用意されています。

  • 一時停止と再開を許可: タスクを一時停止するためのオプションと、後で再開するためのオプションを選択できます。
  • 一時停止と再開を許可しない: 現在のタスクの割り込みの中から新しいタスクを停止します。
  • エンド ユーザーが動作を選択できるようにする: 新しいタスクに切り替えるためにエンド ユーザーの確認を求め、いくつかの再開オプションを提示します。

注意: セッション終了後にユーザー入力があった場合、すなわち、少なくとも 15 分以上の非アクティブ状態が続いた後に入力があった場合、その入力が前のセッション コンテキスト内にある場合は、一時停止と再開のシナリオとして扱われます。その代わりに、ユーザーが新しい発話で戻ってきた場合、古いコンテキストは破棄され、新しい会話が開始されます。

一時停止と再開を許可する

タスクの割り込みを許可した後に現在のタスクはどうなるのか、割り込みタスクが完了したら会話はどのように続くのかなどのシナリオでの、ボットの動作を指定する必要があります。

[一時停止と再開を許可] のオプションには以下のようなものがあります。

オプション 説明
現在のタスクを一時停止し、新しいタスクが完了したら再開する ボットは現在のインテントのフローに関係なく、別のインテントが検出されるとすぐに新しいタスクに切り替えます。このオプションを選択すると、[再開オプション] セクションが表示され、新しいインテント タスクが完了した後、一時停止中のタスクを再開する方法を定義するための選択肢が提示されます。詳細については、「再開オプション」のセクションを参照してください。
現在のタスクを破棄し、新しいタスクに切り替える このオプションを選択すると、現在のタスクを破棄し、別のインテントを検出した後すぐに新しいタスクに切り替えます。ボットは新しいタスクに切り替える前にユーザーに通知メッセージを送信し、現在のタスクは破棄されます。メッセージは [応答を管理] 設定でカスタマイズすることができます。
ユーザーへの通知なしに新しいタスクに切り替え、現在のタスクを破棄する このオプションを選択すると、ボットは現在のタスクを破棄し、別のインテントが検出されるとすぐに新しいタスクに切り替えます。ボットはユーザーに切り替えを通知せず、現在のタスクを後で再開しません。
現在のタスクを継続し、新しいタスクをフォローアップ タスク リストに追加する このオプションを選択すると、新しいインテントが検出された場合でも、現在のタスクを継続して実行します。しかし、新しいインテントはフォローアップ インテントの配列に追加されます。

一時停止の後再開しない

このオプションを選択すると、ボット レベルの[一時停止と再開] はオフになります。ただし、選択されたタスク、リンクされたダイアログ (例外)、またはノード レベルでは、この動作をオーバーライドすることができます。詳しくは、以下の「一時停止と再開の階層」セクションを参照してください。

エンド ユーザーが動作を選択可能にする

このオプションを選択すると、ボットはエンド ユーザーに確認メッセージを表示し、新しいタスクに切り替えるかどうかをユーザーに確認します。エンド ユーザーが新しいタスクに切り替えることを選択した場合にのみ、ボットは新しいタスクに切り替えます。オプションの横にある [応答の管理] リンクをクリックして、ユーザーに送信される確認メッセージをカスタマイズすることができます。

ユーザーがタスクを切り替えることを決定した場合にボットが取るべき再開オプションを定義する必要があります。詳しくは、「再開オプション」のセクションを参照してください。

再開のオプション

タスクを一時停止にして割り込みタスクを進めたら、割り込みタスクが完了した後一時停止中のタスクをどのように処理するか、つまり再開オプションを設定する必要があります。

オプション 説明
一時停止中のタスクを再開する前にユーザーに確認する 新しいタスクを実行した後、ボットはユーザーに最後の一時停止中のタスクに戻るかどうかの「はい」または「いいえ」の選択肢を提示します。また、オプションの隣にある [応答を管理] リンクをクリックして、ユーザーへのカスタム メッセージを作成することができます。
例:

ユーザー: こんにちは
ボット: こんにちは
ユーザー: 明日のフライトを予約してもらえますか?
ボット: どの都市からのフライトですか?
ユーザー: ロサンゼルスです。
ボット: 行き先はどちらですか?
ユーザー: ところで、明日の天気予報は?
ボット: 天気予報を知りたい都市名を入力してください。
ユーザー: ロサンゼルス
ボット: ロサンゼルスの天気予報
日付: 3 月 15 日
温度: 25 ℃
状態: 快晴
ボット: 「フライトの予約」を続けますか?
ユーザー: はい。
ボット: 目的地の空港名を入力してください。
一時停止中のタスクが再開されたことをメッセージでユーザーに通知する メッセージでユーザーに通知し、ユーザーの確認なしに一時停止中の最後のタスクを再開します。オプションの隣にある [レスポンスの管理] リンクをクリックすると、通知メッセージをカスタマイズすることができます。
例:

ユーザー: こんにちは
ボット: こんにちは
ユーザー: 明日のフライトを予約してもらえますか?
ボット: どの都市からのフライトですか?
ユーザー: ロサンゼルスです。
ボット: 行き先はどちらですか?
ユーザー: ところで、明日の天気予報は?
ボット: 天気予報を知りたい都市名を入力してください。
ユーザー: ロサンゼルス
ボット: ロサンゼルスの天気予報
日付: 3 月 15 日
温度: 25 ℃
状態: 快晴
ボット: 割り込みタスクの再開 「フライト予約」
ボット: 目的地の空港名を入力してください。
ユーザーへの特定のメッセージなしで一時停止中のタスクを再開する

現在のタスクが実行された後すぐに、一時停止中の最後のタスクを再開します。

例:

ユーザー: こんにちは
ボット: こんにちは
ユーザー: 明日のフライトを予約してもらえますか?
ボット: どの都市からのフライトですか?
ユーザー: ロサンゼルスです。
ボット: 行き先はどちらですか?
ユーザー: ところで、明日の天気予報は?
ボット: 天気予報を知りたい都市名を入力してください。
ユーザー: ロサンゼルス
ボット: ロサンゼルスの天気予報
日付: 3 月 15 日
温度: 25 ℃
状態: 快晴
ボット: 目的地の空港名を入力してください。
1 つの応答でタスクが終了した場合、ユーザーに特定のメッセージを送信せずに一時停止中のタスクを再開する 切り替えられたタスクがボットの 1 つの応答で完了することがあります。たとえば上記の天気予報の例では、ユーザーが直接「ところで、ロサンゼルスの明日の天気は?」と入力すれば、ボットは単に天気予報のみを回答すればよく、それ以上のステップは生じません。
このような場合にこのオプションを選択すると、選択したオプションに関わらず、ボットは確認も通知もせずに、一時停止中のタスクに切り替えます。

注意: 切り替えは、ユーザーに通知されることなく直接実行されます。

 

一時停止数
[一時停止数] フィールドから、一時停止とするタスクの数を選択できます。ボットは最大でこの数のタスクを一時停止にし、この値に達するとタスクを無視します。

たとえば、一時停止数を 1 と指定して第 3 のインテントが発生した場合、ボットは一時停止と再開オプションの設定に関係なく、新しいタスクを開始しません。

注意: タスクは常に逆の時系列で再開されます。つまり、タスク 1 の後にタスク 2 を一時停止とした場合、タスク 2 がタスク 1 の前に再開されます。

一時停止と再開の階層

ボット レベルで一般的な一時停止と再開のオプションを定義する以外に、これらのオプションを ダイアログ タスクや ダイアログ ノード レベルでカスタマイズすることができます。複数のレベルで一時停止と再開オプションを設定した場合、設定の優先順位は以下のようになります。

ノード レベルの設定

ノードレベルで一時停止と再開の設定をカスタマイズできます。ノードの設定をカスタマイズする場合は、この設定が最優先されます。

ノードの一時停止と再開の設定をカスタマイズするには、以下の手順に従います。

  1. ダイアログ タスクを開き、設定を変更したいノードにカーソルを合わせます
  2. [歯車アイコン] をクリックして [プロパティ] パネルに移動し、[インスタンス] タブをクリックします。
  3. [インスタンスのプロパティ] パネルで、[高度なコントロール] を選択します。
  4. [一時停止と再開] セクションで、[このノードのカスタマイズ] を選択し、必要な設定を行います。これらの設定は、上記で説明したボット レベルの一時停止と再開の設定と同じです。

ダイアログ レベルの設定

ダイアログ レベルの一時停止と再開のカスタマイズは、ボット レベルの設定よりも優先度が高くなりますが、ノード レベルのカスタマイズや例外よりも優先度が低くなります。

ダイアログの一時停止と再開の設定をカスタマイズするには、以下のようにします。

  1. カスタマイズしたい設定のダイアログ タスクを開きます
  2. ダイアログ ビルダーの画面右上にある [その他のオプション] アイコンをクリックし、[割り込みを管理] をクリックします。
  3. [一時停止と再開] セクションで、[このタスク用にカスタマイズする] を選択し、必要な設定を行います。これらの設定は、ボット レベルの一時停止と再開の場合と同じです。
注意: ノードまたはタスク レベルで一時停止と再開の設定をカスタマイズしない場合、ボット レベルの設定が有効になります。

FAQ の動作を管理する

FAQ を一時停止と再開の設定に従わせるか、FAQ に常に応答するかを選択できます。この機能はバージョン 7.0 から導入されました。

FAQ の割り込み動作フラグで、以下のようなことができます。

  • 割り込みが有効になっている場合、FAQ を常に識別して応答します。これは既定の設定です。
  • 割り込みが有効になっているときは常に FAQ を識別し、[一時停止と再開] の設定に従って続行します。

あいまいなインテントのための動作を管理する

(プラットフォーム バージョン 7.1 で導入)

あいまいなインテントの動作フラグを設定して、会話の流れの中であいまいなインテントを処理することができます。以下のようなことができます。

  • あいまいなインテントをエンド ユーザーに提示し、H&R 設定に従って進めます。ユーザーがタスクを選択し、一時停止と再開の設定を
    • 「現在のタスクを継続し、フォローアップ タスク リストに新しいタスクを追加する」とすると、現在のタスクは一時停止され、新しいタスクが開始されます。
    • 「エンド ユーザーが動作を選択することを許可する」とすると、選択はすでに行われているので、ユーザーに確認することなく新しいタスクが開始されます。
    • 他のすべての [一時停止] オプションは通常どおり適用されます。
  • エンド ユーザーにあいまいなインテントを提示せず、現在のタスクを続行します。これは既定の設定です。

ユーザー認証のための動作を管理する

(プラットフォーム バージョン 7.3 で導入)

ユーザーが認証のためのプロンプト メッセージで関連性のない入力をした場合、以下のような流れになります。

  • スモール トークのインテントが特定された場合、スモール トークの応答が表示され、再度認証を促します。
  • プラットフォームは、一時停止管理の設定に関係なく、ユーザーの発話の中にインテント (タスクや FAQ) が存在するかどうかをチェックします。
    • インテントが特定された場合、現在のタスクを破棄して新しいタスクを開始するかどうかの確認を求めます。
    • 複数のインテントが特定された場合、あいまいさのダイアログと、発話を無視して現在のタスクを続行するオプションが表示されます。
  • インテントが特定されない場合、認証リンクがユーザーに再度プロンプト表示されます。
メニュー