チャット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. How Tos
  5. データテーブルのデータの追加方法

データテーブルのデータの追加方法

このハウツーでは、顧客の口座関連データが保存されるデータテーブルのバンキングBotのシナリオを調査します。ユーザーから収集された必須情報を保存できる方法を確認します。データテーブルおよびKore.ai Botプラットフォームでどのように導入されているかの詳細については、こちらを参照してください

例題

以下のデータを保存する必要がある指定顧客のバンキングBotを考えてください。

  1. ID
  2. 名前
  3. メールID
  4. アドレス、および
  5. タイプ

Pre-requisites

  • Botビルドナレッジ
  • バンキングBot

設定

次の各シナリオを1つずつ考えてみましょう。

  1. 上記の要件でのデータテーブルの定義
  2. ダイアログタスク:
    1. 必須情報の収集、および
    2. サービスを呼び出し、顧客情報を更新

データテーブル設定

以下の情報を保持するデータテーブルを作成します。

  • CustId – 顧客の一意の識別子
  • CustName – 顧客名
  • CustEmail – 顧客のメールID
  • CustType – 顧客のタイプ – 通常、推奨など
  • アドレス – 顧客のアドレス

テーブル作成

  1. Kore.ai Botビルダープラットフォームにログインします。
  2. データタブを選択します。
  3. 新しいテーブルボタンをクリックします。
  4. 新しいテーブルページに、以下を入力します。
    1. 名前、たとえばcustomertable
    2. 説明、たとえば 顧客詳細を含むテーブル
  5. セクションに、以下の詳細を追加します。
    列名 タイプ 必須 追加設定
    CustId あり 暗号化および最大長5
    CustName 文字列 あり
    アドレス 文字列 なし
    CustType 文字列 なし 推奨としてのデフォルト値
    CustEmail 文字列 なし

  6. インデックスセクションに、 CustIdのインデックスを一意に追加します。
  7. 作成をクリックすると、テーブルが準備できます。
  8. Bot割当に、このテーブル、たとえばバンキングBotを使用するBotを追加し、 読み取り書き込みおよび削除権を付与します。データは削除しないため、削除権はオプションです。

ダイアログタスクの設定

必須情報を収集するダイアログタスクを作成し、サービスノードを使用して収集した値でデータテーブルを更新します。

ダイアログタスクの作成

  1. 左のナビゲーションメニューからBotタスク -> ダイアログタスクを選択します。
  2. ダイアログタスクに対して+をクリックして、新しいタスクを作成します。
    • IntentName、たとえばAddCustomerを入力します。
    • 作成および続行して、ダイアログビルダーページを開きます。
  3. インテントノードのデフォルト設定を保持し、インテントノードを閉じます。
  4. インテントノードの隣の+をクリックし、以下のように4つのエンティティを追加します。
    エンティティ名 タイプ ユーザープロンプト
    CustName 文字列 名前を入力
    CustEmail メール メールIDを入力
    CustAddress 市内 市内住所を入力
    CustType 項目リスト(列挙) 所得範囲を選択

    CustTypeは、顧客の所得レベルに基づき、基本、推奨またはプレミアムにできます。この目的のために、静的リストを使用して、以下のようにCustType値を入力しました。

  5. CustIDを生成するために、テーブルの最後の顧客IDを取得し、追加する必要があります。このため、まずテーブルからデータを取得し、スクリプトノードを使用してIDを処理します。

データの取得

サービスコールを使用して、テーブルからデータを取得できます。

  1. 最後のエンティティノードに対して、+をクリックします。
  2. サービス -> 新しいサービスノード オプションを選択します。
  3. 基本設定セクションから、以下を設定します。
    • 名前、たとえばGetLastCustId
    • 表示名、たとえば顧客データ取得
    • サービスタイプで、データサービスを選択
    • タイプで、テーブルを選択
  4. 要求定義で、要求を追加をクリックして要求を定義し、テーブルからデータを取得します。
  5. データサービス要求定義ページに、以下を入力します。
      • 顧客テーブルとしての テーブル名の選択
      • データ取得としてのアクション
  6. 定義をテストおよび保存し、サービスノードを 終了します
  7. スクリプトノードを追加して、データサービスから取得した値を処理し、以下のスクリプトを使用して次の顧客IDの値を取得します。
    var resultSet = context.GetLastCustId.response.body.queryResult; var id = 0; if (!resultSet.length) { id=1; } else { for (var i=0; i<resultSet.length; i++) { if (id < resultSet[i].CustId) { id = resultSet[i].CustId; } } id++; } context.lastID = id;
  8. これでテーブルに追加するすべての必須データがあります。

データの追加

サービスコールを使用して、テーブルにデータを追加します。

  1. 上で追加した最後のエンティティノードに対して、+ をクリックします。
  2. サービス -> 新しいサービスノード オプションを選択します。
  3. 基本設定セクションから、以下を設定します。
    • 名前、たとえばAddCustData
    • 表示名、たとえば顧客データ追加
    • サービスタイプで、データサービスを選択
    • タイプで、テーブルを選択
  4. 要求定義で、要求を追加をクリックして要求を定義し、テーブルへデータを追加します。
  5. データサービス要求定義ページに、以下を入力します。
    • 前に定義した顧客テーブルとしての テーブル名の選択
    • データ追加としてのアクション
    • 以下のように定義したエンティティから値を割り当てます。
      エンティティコンテキスト
      CustName {{context.entities.CustName}}
      CustEmail {{context.entities.CustEmail}}
      アドレス {{context.entities.CustAddress}}
      CustType {{context.entities.CustType}}
      CustId {{context.lastID}}

  6. メッセージノードを追加し、以下の応答フォーマットを使用して追加した値を表示します。 'Customer account created for: {{context.GetCustData.response.body.queryResult[0].CustName}}, {{context.GetCustData.response.body.queryResult[0].CustEmail}}, {{context.GetCustData.response.body.queryResult[0].CustAddress}}, {{context.GetCustData.response.body.queryResult[0].CustType}}'
  7. Botとの会話オプションを使用して、プロンプト表示されたら値を入力し、表示されるメッセージを確認します。

結論

この投稿では、以下を確認しました。

  • データテーブルの作成方法
  • テーブルへの列の追加
  • サービスノードを使用してテーブルからのデータの取得方法、およびそれを使用して追加処理する方法
  • サービスノードを使用してダイアログタスクからテーブルへデータを追加する方法

次のステップ

  • データテーブルを更新する方法に関するステップについては、こちらをクリックしてください。
  • デジタルフォームから取得したデータの追加方法に関するステップについては、こちらをクリックしてください。
メニュー