はじめに
対話型AIプラットフォーム
チャットボットの概要
自然言語処理(NLP)
ボットの概念と用語
クイックスタートガイド
プラットフォームへのアクセス
ボットビルダーの操作
リリースノート
最新バージョン(英語)
以前のバージョン(英語)
廃止機能(英語)
コンセプト
設計
ストーリーボード
ダイアログタスク
ダイアログタスクとは
ダイアログビルダー
ノードタイプ
インテントノード
ダイアログノード
エンティティノード
フォームノード
確認ノード
ロジックノード
ボットアクションノード
サービスノード
Webhookノード
スクリプトノード
グループノード
エージェント転送ノード
ユーザープロンプト
音声通話プロパティ
イベント ハンドラー
ナレッジグラフ
ナレッジグラフの抽出
ナレッジグラフの構築
ボットにナレッジグラフを追加
グラフの作成
ナレッジグラフの構築
既存のソースからFAQを構築
特性、同義語、停止用語
変数ネームスペースの管理
更新
ノード間の質問と回答の移動
用語の編集と削除
質問と応答の編集
ナレッジグラフの分析
通知タスク
スモールトーク
デジタルスキル
デジタルフォーム
デジタルビュー
デジタルビューとは
パネル
ウィジェット
トレーニング
トレーニングとは
機械学習
機械学習とは
モデル検証
ファンダメンタルミーニング
ナレッジグラフ
示唆
ランキングおよび解決
NLPの詳細設定
NLPのガイドライン
インテリジェンス
インテリジェンスとは
コンテキスト
コンテキストインテント
割り込み
複数インテントの検出
エンティティの変更
デフォルトの会話
センチメント管理
トーン分析
テストとデバッグ
ボットと会話
発話テスト
バッチテスト
会話テスト
デプロイ
チャネル
公開
分析
ボットの分析
NLPメトリクス
会話フロー
Usage Metrics
封じ込め測定
カスタムダッシュボード
カスタムダッシュボードとは
メタタグ
カスタムダッシュボードとウィジェット
ユニバーサルボット
ユニバーサルボットとは
ユニバーサルボットの定義
ユニバーサルボットの作成
ユニバーサルボットのトレーニング
ユニバーサルボットのカスタマイズ
他言語の有効化
ストア
プラントと使用
Overview
Usage Plans
Support Plans
Invoices
管理
ボット認証
複数言語対応ボット
個人を特定できる情報の編集
ボット変数の使用
IVRのシステム連携
一般設定
ボット管理
ハウツー
会話スキルの設計
バンキングボットを作成
バンキングボット – 資金の振り替え
バンキングボット – 残高を更新
ナレッジグラフを構築
スマートアラートの予約方法
デジタルスキルの設計
デジタルフォームの設定方法
デジタルビューの設定方法
データテーブルのデータの追加方法
データテーブルのデータの更新方法
Add Data from Digital Forms
ボットのトレーニング
示唆の使用方法
インテントとエンティティのパターンの使用方法
コンテキスト切り替えの管理方法
ボットのデプロイ
エージェント転送の設定方法
ボット関数の使用方法
コンテンツ変数の使用方法
グローバル変数の使用方法
Web SDK Tutorial(英語)
Widget SDK Tutorial(英語)
ボットの分析
カスタムダッシュボードの作成方法
カスタムタグを使ってフィルタリング
管理
ボット管理者コンソール
ダッシュボード
ユーザーの管理
ユーザーの管理
グループの管理
ロール管理
ボット管理モジュール
登録
ユーザーの招待
招待状の一括送信
ユーザーデータのインポート
Active Directoryからユーザーを同期
セキュリティ/コンプライアンス
シングル サインオンの使用
セキュリティ設定
Billing(日本未対応)
  1. ホーム
  2. Docs
  3. Virtual Assistants
  4. Bot Settings
  5. Bot Management
  6. ボット変数の使用

ボット変数の使用

ボット変数によって、異なるタスク、ノード、およびその他のボット要素で共通して使用される値をキャプチャできるようになります。ボット変数は、ボット設定において一度キー・値のペアとして設定し、会話フローの中で実行時にキーと値を置換することができます。ボット変数は、頻繁に使用される値を一か所でキャプチャすることにより、再利用性および一貫性の利点をもたらします。例として、ステージングエンドポイントを用いて、フライト予約ボットをテストしているとします。エンドポイントを変数として設定している場合、APIを複数の場所から迅速に呼び出すことができます。ボットの公開中に、ステージングエンドポイントをプロダクションに変更したいときは、簡単にできます。同様に、メッセージとプロンプトのコンテンツをダイアログフロー定義から外部に出すために、変数を使用することができます。Kore.aiプラットフォームでは、ボット開発者は環境とコンテンツの2タイプの変数を定義することができます。

環境変数

環境変数(以前はグローバル変数と呼ばれていた)は、キー・値のペアを定義して、その変数をボット全体で使用するという、ボット変数の主要なタイプです。環境変数は、グローバルに宣言されているため、ボット構成のどの時点でも使用することができます。開発者が環境変数を使用する典型的なユースケースとしては、以下のようなものがあります。

  • 異なるエンドポイントURLを持つ環境間でボットを管理するため。ボットは環境に合わせてエクスポートおよびインポートすることができので、インフラストラクチャチームは可変構成ファイルの変更のみが必要になるだけです。
  • ボットの設定内で繰り返されるボットの応答を変数として定義および管理する場合。
  • 認証トークン
  • チャネルに関連するトークンとURL

プラットフォームのバージョン8.1リリース以降、オンプレミスのインストールでは、コレクションを使用してこれらの環境変数に複数の値のセットを保存することができます。詳細はこちらを参照してください

コンテンツ変数

ボットの構築には、基本的に大規模なコンテンツ管理が必要です。また、多言語対応のボットの場合、開発者と世界各地に散らばるコンテンツ制作者や著作権チームとの間で、面倒な調整作業が必要になります。コンテンツ変数は、ボットフローの開発作業をコンテンツのオーサリングや編集から抽象化することにより、この問題を解決します。コンテンツ変数を使用すると、プログラマは、プロンプト、メッセージ、またはユーザーに提示されるデータなどのボットコンテンツをボットコンポーネントにハードコーディングすることなく、一元管理された各ボット言語のコンテンツ変数ファイルに特定の変数を指定することができます。ボットの構成を公開することなく、言語固有のコンテンツ変数ファイルをコンテンツエディターにエクスポートすることができます。ライターは、エクスポートされたファイルのコンテンツをオーサリングすることができ、それをボットにもう一度インポートして戻すことができます。

ボット変数の定義

ボット変数を追加または編集するには、以下の手順に従います。

  1. 変数を追加したいボットを開きます。
  2. トップメニューの構築を選択します
  3. 左側メニューの構成から、環境変数またはコンテンツ変数を選択します。
  4. 変数ページで変数の追加をクリックして、以下の詳細を入力します。
    • 変数名:特殊文字を含まない名前を入力します。例:ボット環境。
    • :文字列式を追加します。この文字列は、呼び出されたあらゆる場所で変数を置き換えます。
      メモ:コンテンツ変数については、ボットの言語ごとに異なる値を入力する必要があります。その方法については、次のセクションをご参照ください。
    • メモフィールドに開発者のメモを入力します。これはオプションのフィールドですが、役に立つメモを入力することで、対象ボットで作業している開発者が関連する値を理解し、提供することができます。
    • グループは、変数を分類するために使用することができます。
    • 有効な場合は、名前空間を割り当てます(詳細はこちらを参照してください)。
  5. 保存をクリックします。
  6. さらに変数を追加または編集する場合は、ステップ3~5を繰り返します。

言語固有の値の入力

コンテンツ変数に言語固有の値を追加するためには、最初に、ボットの言語を切り替える必要があります。ボットのページの右上から現在有効な言語名をクリックし、次に、以下のような他の言語を選択することにより、言語を切り替えることができます。

言語を切り替えた後、構築->構成->コンテンツ変数のページに進み、該当する変数の横にある編集アイコンをクリックします。フィールドのテキストを、有効な言語に置き換えます。

環境変数の使用

プレーンテキストモード(標準エディター)では、以下の構文を使用して環境変数を呼び出すことができます。{{env.variableName}} JavaScriptモードで使用している場合は、“env.variableName”となります。ここでは、“botType”と“parameters”という2つの環境変数を使用して、開発、テスト、プロダクションといった異なるボット環境を決定するボットの例を紹介します。ボットのタスクの1つである以下のスクリプトノードは、現在のボット環境に合わせて、ボットの“ベースURL”をキャプチャします。 キャプチャしたURLをベースに、以下のサービスノードのURLが変更されます。

コンテンツ変数の使用

プレーンテキストモード(標準エディター)では、以下の構文を使用してコンテンツ変数を呼び出すことができます。{{content.variableName}} JavaScriptモードで使用している場合は、“content.variableName”となります。これは、多言語フライト予約ボットのエンティティノードで、ユーザーのソース空港をキャプチャしています。ハードコードされたユーザープロンプトではなく、コンテンツ変数を使用します。 ボットがユーザーとのインタラクションの一環としてこのノードに到達した場合、ユーザープロンプトはインタラクションの言語に合わせて変化します(有効な言語すべてにそれぞれの変数値を入力した場合)。

インポートとエクスポート

ボット変数をボット間でインポートおよびエクスポートすることができます。

  1. 構築->構成->(環境/コンテンツ)変数からアクセス可能ないずれかのボット変数ページで、
  2. 追加変数の隣にある楕円をクリックします。
  3. “インポート”:JSONまたはCSVファイルから変数をインポートするには、 インポートを選択します。
    • インポートは既存の変数を置き換えるため、バックアップを取ることをお勧めします。
    • バックアップを取った後、インポートを続行します。
    • インポートするJSONファイルまたはCSVファイルを選択します(ファイル形式については以下をご確認ください)。
  4. “エクスポート”エクスポートから、エクスポートファイルの優先形式を選択します。
    • ボット変数は、選択した内容に応じてJSONファイル、CSVファイルの形式でエクスポートされます。
    • このファイルには、環境変数とコンテンツ変数の両方が含まれています。

ボット変数ファイル には、以下の情報が含まれており、インポートファイルにも同じ情報が必要です。CSVファイルにはヘッダー行が必要です。エクスポート(あるいはバックアップ)ファイルを参照して、インポートファイルについても同一形式の使用をお勧めします。

  • key(必須) – 変数の名前
  • scope – 変数の範囲は、変数宣言時の設定オプションに対応しており(提供されない場合はprePopulatedに設定されます)、以下のいずれかになる可能性があります。
    • prePopulated
    • askOnInstall
    • hidden
  • value – 変数の値
  • variableType(設定されていない場合、デフォルトではenv)-
    • 環境に対してenv
    • コンテンツ変数に対してlocale
  • audioTag  – IVRが有効な場合、プレーヤーの詳細用
  • group – グループ名
  • hint – 変数の説明

サンプルのCSVファイル
サンプルのJSONファイル

[
  {"key":"hosturl",
   "value":"https://bots.kore.ai",
   "hint":"This is the URL of environment which can be used across the endpoints configured in the bot",
   "audioTag":"",
   "variableType":"env",
   "scope":"prePopulated",
   "group":"URLS"}
]

ボット変数の使用

ボット変数によって、異なるタスク、ノード、およびその他のボット要素で共通して使用される値をキャプチャできるようになります。ボット変数は、ボット設定において一度キー・値のペアとして設定し、会話フローの中で実行時にキーと値を置換することができます。ボット変数は、頻繁に使用される値を一か所でキャプチャすることにより、再利用性および一貫性の利点をもたらします。例として、ステージングエンドポイントを用いて、フライト予約ボットをテストしているとします。エンドポイントを変数として設定している場合、APIを複数の場所から迅速に呼び出すことができます。ボットの公開中に、ステージングエンドポイントをプロダクションに変更したいときは、簡単にできます。同様に、メッセージとプロンプトのコンテンツをダイアログフロー定義から外部に出すために、変数を使用することができます。Kore.aiプラットフォームでは、ボット開発者は環境とコンテンツの2タイプの変数を定義することができます。

環境変数

環境変数(以前はグローバル変数と呼ばれていた)は、キー・値のペアを定義して、その変数をボット全体で使用するという、ボット変数の主要なタイプです。環境変数は、グローバルに宣言されているため、ボット構成のどの時点でも使用することができます。開発者が環境変数を使用する典型的なユースケースとしては、以下のようなものがあります。

  • 異なるエンドポイントURLを持つ環境間でボットを管理するため。ボットは環境に合わせてエクスポートおよびインポートすることができので、インフラストラクチャチームは可変構成ファイルの変更のみが必要になるだけです。
  • ボットの設定内で繰り返されるボットの応答を変数として定義および管理する場合。
  • 認証トークン
  • チャネルに関連するトークンとURL

プラットフォームのバージョン8.1リリース以降、オンプレミスのインストールでは、コレクションを使用してこれらの環境変数に複数の値のセットを保存することができます。詳細はこちらを参照してください

コンテンツ変数

ボットの構築には、基本的に大規模なコンテンツ管理が必要です。また、多言語対応のボットの場合、開発者と世界各地に散らばるコンテンツ制作者や著作権チームとの間で、面倒な調整作業が必要になります。コンテンツ変数は、ボットフローの開発作業をコンテンツのオーサリングや編集から抽象化することにより、この問題を解決します。コンテンツ変数を使用すると、プログラマは、プロンプト、メッセージ、またはユーザーに提示されるデータなどのボットコンテンツをボットコンポーネントにハードコーディングすることなく、一元管理された各ボット言語のコンテンツ変数ファイルに特定の変数を指定することができます。ボットの構成を公開することなく、言語固有のコンテンツ変数ファイルをコンテンツエディターにエクスポートすることができます。ライターは、エクスポートされたファイルのコンテンツをオーサリングすることができ、それをボットにもう一度インポートして戻すことができます。

ボット変数の定義

ボット変数を追加または編集するには、以下の手順に従います。

  1. 変数を追加したいボットを開きます。
  2. トップメニューの構築を選択します
  3. 左側メニューの構成から、環境変数またはコンテンツ変数を選択します。
  4. 変数ページで変数の追加をクリックして、以下の詳細を入力します。
    • 変数名:特殊文字を含まない名前を入力します。例:ボット環境。
    • :文字列式を追加します。この文字列は、呼び出されたあらゆる場所で変数を置き換えます。
      メモ:コンテンツ変数については、ボットの言語ごとに異なる値を入力する必要があります。その方法については、次のセクションをご参照ください。
    • メモフィールドに開発者のメモを入力します。これはオプションのフィールドですが、役に立つメモを入力することで、対象ボットで作業している開発者が関連する値を理解し、提供することができます。
    • グループは、変数を分類するために使用することができます。
    • 有効な場合は、名前空間を割り当てます(詳細はこちらを参照してください)。
  5. 保存をクリックします。
  6. さらに変数を追加または編集する場合は、ステップ3~5を繰り返します。

言語固有の値の入力

コンテンツ変数に言語固有の値を追加するためには、最初に、ボットの言語を切り替える必要があります。ボットのページの右上から現在有効な言語名をクリックし、次に、以下のような他の言語を選択することにより、言語を切り替えることができます。

言語を切り替えた後、構築->構成->コンテンツ変数のページに進み、該当する変数の横にある編集アイコンをクリックします。フィールドのテキストを、有効な言語に置き換えます。

環境変数の使用

プレーンテキストモード(標準エディター)では、以下の構文を使用して環境変数を呼び出すことができます。{{env.variableName}} JavaScriptモードで使用している場合は、“env.variableName”となります。ここでは、“botType”と“parameters”という2つの環境変数を使用して、開発、テスト、プロダクションといった異なるボット環境を決定するボットの例を紹介します。ボットのタスクの1つである以下のスクリプトノードは、現在のボット環境に合わせて、ボットの“ベースURL”をキャプチャします。 キャプチャしたURLをベースに、以下のサービスノードのURLが変更されます。

コンテンツ変数の使用

プレーンテキストモード(標準エディター)では、以下の構文を使用してコンテンツ変数を呼び出すことができます。{{content.variableName}} JavaScriptモードで使用している場合は、“content.variableName”となります。これは、多言語フライト予約ボットのエンティティノードで、ユーザーのソース空港をキャプチャしています。ハードコードされたユーザープロンプトではなく、コンテンツ変数を使用します。 ボットがユーザーとのインタラクションの一環としてこのノードに到達した場合、ユーザープロンプトはインタラクションの言語に合わせて変化します(有効な言語すべてにそれぞれの変数値を入力した場合)。

インポートとエクスポート

ボット変数をボット間でインポートおよびエクスポートすることができます。

  1. 構築->構成->(環境/コンテンツ)変数からアクセス可能ないずれかのボット変数ページで、
  2. 追加変数の隣にある楕円をクリックします。
  3. “インポート”:JSONまたはCSVファイルから変数をインポートするには、 インポートを選択します。
    • インポートは既存の変数を置き換えるため、バックアップを取ることをお勧めします。
    • バックアップを取った後、インポートを続行します。
    • インポートするJSONファイルまたはCSVファイルを選択します(ファイル形式については以下をご確認ください)。
  4. “エクスポート”エクスポートから、エクスポートファイルの優先形式を選択します。
    • ボット変数は、選択した内容に応じてJSONファイル、CSVファイルの形式でエクスポートされます。
    • このファイルには、環境変数とコンテンツ変数の両方が含まれています。

ボット変数ファイル には、以下の情報が含まれており、インポートファイルにも同じ情報が必要です。CSVファイルにはヘッダー行が必要です。エクスポート(あるいはバックアップ)ファイルを参照して、インポートファイルについても同一形式の使用をお勧めします。

  • key(必須) – 変数の名前
  • scope – 変数の範囲は、変数宣言時の設定オプションに対応しており(提供されない場合はprePopulatedに設定されます)、以下のいずれかになる可能性があります。
    • prePopulated
    • askOnInstall
    • hidden
  • value – 変数の値
  • variableType(設定されていない場合、デフォルトではenv)-
    • 環境に対してenv
    • コンテンツ変数に対してlocale
  • audioTag  – IVRが有効な場合、プレーヤーの詳細用
  • group – グループ名
  • hint – 変数の説明

サンプルのCSVファイル
サンプルのJSONファイル

[
  {"key":"hosturl",
   "value":"https://bots.kore.ai",
   "hint":"This is the URL of environment which can be used across the endpoints configured in the bot",
   "audioTag":"",
   "variableType":"env",
   "scope":"prePopulated",
   "group":"URLS"}
]
メニュー