チャット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. Bot Building
  5. Dialog Task
  6. ノードのグループ化

ノードのグループ化

ノードのグループ化は、主にノードのグループを定義し、それをダイアログキャンバスで示すために使用されます。これはダイアログフローの一部ではないことにご注意ください。

ダイアログタスクへのグループノードの追加

  1. グループノードを追加したいダイアログタスクを開きます。
  2. マウスのドラッグ&ドロップ操作で、ダイアログ定義から1つ以上のノードを選択してグループを作成します。
  3. グループの名前を変更または削除することができます。
  4. 一度作成すると、特定のノードをグループに追加したりグループから削除したりすることはできません。
    • 追加したノードはグループ外で追加されます。
    • 削除したノードはダイアログ全体から削除されます。

設定

プラットフォームの v8.1 よりグループ ノード機能が強化され、以下の機能が追加されました。

  • インテントのスコーピング – ユーザーがグループ内のいずれかのノードで待機しているときに利用可能な、サブインテントを定義する機能
  • サブインテントのトレーニング – サブインテントをトレーニングする機能
  • サブインテントのプロパティ – サブインテントの動作を定義する機能

インテントのスコーピングの手順を解説したユースケース例をこちらからご覧いただけます。

インテントのスコーピング

グループ ノードを使用して、ユーザーの発話から特定され、ユーザーがグループ内のいずれかのノードにいる間に実行されるサブインテントのスコープを指定することができます。

  1. インテントをスコーピングするグループにカーソルを合わせ、設定 (歯車) アイコンをクリックします。
  2. グループのスコープにインテントを追加するには、グループ ノード ウィンドウで [インテントを追加] を選択します。
  3. [インテントを追加] ウィンドウで、このグループ ノードのサブインテントとしてスコーピングするインテントを選択します。 これは、会話がこのグループ内のいずれかのノードにあるときにユーザーが求める可能性のあるインテントになります。 たとえば、目的地エンティティが求められるときに「XYZ 市の天気は?」と尋ねたり、旅行日程が求められるときに「フライトの時間」を尋ねたりします。
  4. [インテントを作成] ボタンで、新しいサブインテントを追加することができます。
  5. スコープされたインテントを追加すると、トレーニング、動作プロパティの設定や削除ができるようになります。

インテントのトレーニング

サブインテントを追加すると、このグループ内で認識のためのトレーニングをすることができます。 これで、サブインテントがグループのコンテキスト内で特定できるようになります。

  1. グループ設定ページで、トレーニングしたいサブインテントを選択します。
  2. 次を使用してサブインテントをトレーニングできます。
    • 機械学習 – このサブインテントを特定させるユーザーの発話を追加します。 NER アプローチを使用して、発話内のエンティティに注釈をつけることもできます。
    • パターン – ユーザーの発話から、このサブインテントに関連するパターンを特定します。
    • ルール – このインテントをトリガーするインテント特定のルールを定義します。
  3. また、インテントの前提条件を設定することもできます。インテントの検出時に、コンテキスト内で定義された前提条件のいずれかに合う場合にのみ、サブインテントを特定させることができます。 これらの前提条件はインスタンス レベルとみなされ、コンポーネント レベルの前提条件よりも優先されます。

インテントのプロパティ

フルフィルメント セクションで、ユーザーの入力内で特定のサブインテントが検出された場合の動作を定義できます。 次のプロパティを含みます。

  • コンテキスト変数 – このサブインテントが特定されたときに更新する、セッションまたはコンテキスト変数を定義するキー/値のペアを設定します。
    If you want to reset the values, you need to use the keyword “null”, spaces would be ignored by the platform.
  • メッセージ – オプションで、このサブインテントが特定されたときにユーザーに表示するメッセージを定義できます。 他の応答と同様に、テキスト形式や JavaScript 形式でメッセージを定義して、該当する場合は音声通話プロパティを指定できます。
  • コンテキスト出力 – このインテントが特定されたときに設定するコンテキスト タグを定義します。 インテント名は、システムにより常に出力コンテキストとして設定されます。
    If you want to reset the values, you need to use the keyword “null”, spaces would be ignored by the platform.
  • 切り替えフロー – このサブインテントを実行後、ダイアログをどのように再開するかを定義するのにこのオプションを使用します。 2種類の動作を定義できます。
    • ノードに移動 – ダイアログはここで選択したノードから再開されます。
    • ダイアログを再開 – ダイアログはこのインテントが特定された時点から再開されます。

実装

以下は、グループ内でのサブインテントの動作の変化です。

  • コンテキスト オブジェクトはサブインテントが特定されるたびに特定されたサブインテントの情報オブジェクトの配列で更新され、最新のものが上位に表示されます。 次の情報がキャプチャされます。
    • サブインテント名
    • サブインテントとともに特定されたエンティティ
    • サブインテントが属するグループ名 (該当する場合)
    • サブインテントが特定されたノード名
      "identifiedSubIntents": [
        {
          "intent": "Change Destination",
          "entities": {
            "destcity": "Delhi"
          },
          "groupName": "Entity Group",
          "identifiedAt": "to_date"
        },
        {
          "intent": "Weather Report",
          "groupName": "Entity Group",
          "identifiedAt": "destcity"
        }
      ]
  • ユーザーの発話から特定されたサブインテントがグループ スコープ内にあり、すべての入力前提条件が満たされかつ切り替えフローが該当ノードに移動させるよう設定されている場合にインテントが実行されます。
  • サブインテントの実行には以下が含まれます。
    • 定義済みマッピングに基づくコンテキスト変数の更新
    • 定義済みマッピングに基づく出力コンテキスト設定
    • ユーザーに表示するメッセージ(該当する場合)
  • 現在のダイアログの実行は、定義された切り替えフローに基づいて継続されます。
    • 指定されたノードへ移動、または
    • サブインテントが特定された時点から再開します。
メニュー