ナレッジグラフを CSV または JSON 形式のファイルで構築して、ボットにアップロードすることができます。同様に、既存のナレッジグラフを CSV または JSON 形式でエクスポートすることができます。ナレッジグラフをエクスポートすると、スプレッドシートで編集したり、他のボットにインポートしたりすることができるようになります。
FAQ の数には最大 50,000 件、ノードの数には最大 20,000 個のプラットフォーム制限があります。この制限を超える数のファイルのインポートは拒否されます。
ナレッジグラフのインポート
- ナレッジグラフを開きます。
- ナレッジグラフの [インポート] オプションが表示されます。
- [インポート] をクリックします。
- 以下のうちいずれかを実行します。
- ナレッジグラフを初めから作成する場合は、[続行] をクリックします。または、
- 既存のナレッジグラフが存在する場合は、その CSV または JSON 形式のファイルのバックアップが保存されていることを確認してから、[続行] をクリックします。
注意: ナレッジグラフのインポートは、既存のナレッジグラフを更新するのではなく全体を上書きします。
- [インポート] ウィンドウにファイルをドラッグアンドドロップするか、[参照] をクリックしてファイルを選択します。
- [次へ] をクリックして、インポートを開始します。
- インポートが完了すると、完了メッセージがダイアログに表示されます。[完了] をクリックします。
- ナレッジグラフに階層が表示され、編集やトレーニングができるようになります。
ナレッジグラフのエクスポート
ナレッジグラフをエクスポートするには、
ナレッジグラフの作成
プラットフォームの UI でナレッジグラフを作成する代わりに、スプレッドシードや JSON 形式で作業したい場合があります。プラットフォーム上でナレッジグラフをスプレッドシートで作成するか、JSON 形式で作成するかを選択してボットにインポートすることができます。
次のステップを実行します。
- サンプル CSV または JSON ファイルをダウンロードします。サンプルファイルは、空のナレッジグラフからもダウンロードできます。
- 質問、応答、同義語などに対応する行を追加して、ファイルを編集します。
- ファイルをボットにインポートします。
CSV ファイルからのインポート
ボットからダウンロードできるサンプルスプレッドシートを使って、ナレッジグラフを作成することができます。ナレッジグラフを頻繁に変更することが予想される場合は、スプレッドシートで作成しておくとアプリケーションの UI よりも一括更新が容易になります。
ナレッジグラフをスプレッドシートで作成するには、以下の手順に従います。
サンプル CSV ファイルのダウンロード
CSV でのナレッジグラフの構築 (リリース 7.3 以降)
ボットプラットフォームのバージョン 7.3 以降、CSV ファイルのフォーマット変更により代替の回答、拡張応答、高度な応答に対応しました。以前のフォーマットについては、以下をご覧ください。以前のフォーマットは今後のリリースで非推奨となる可能性があるため、新しいフォーマットのご利用を強くお勧めします。
- 以下の種類のエントリに対応しています。
- FAQ − 質問と回答のリーフレベルノードです。
- ノード − ノード/タグ、トレイト、前提条件、出力コンテキストなどを指します。
- 同義語
- ナレッジグラフパラメータ
- トレイト
- 上記のカテゴリはいずれも、適切なヘッダーで始まっている必要があります。
- プラットフォームは、JSON ファイルのバージョンが新しいのか古いのかをヘッダーで特定します。
以下に、それぞれのセクションについての詳細情報と期待される内容を説明しています。
FAQ
FAQは質問と回答およびそれらの代替質問、代替回答と拡張回答です。
それぞれの詳細を以下の表に示します。
- FAQ − ヘッダーの必須項目です。それ以下の行では空白になっていなければなりません。
- Que ID − 質問ごとにプラットフォームが生成する、質問 IDです。
- パス − その項目が属する FAQ までのパスです。
- 必須のノード名は「**」で始まり、
- オーガナイザーノード名は「!!」で始まっていなければなりません。
- プライマリの質問 − ユーザーの問い合わせとして予想される質問です。空白にすると、回答列の内容が前のプライマリの質問の代替回答とみなされます。
- 代替質問 − オプション − プライマリの質問の代替質問です。代替質問が複数ある場合は、それぞれ別の行に入力されている必要があります。
- タグ − それぞれの質問と代替質問に付与します。
- 回答 − 質問に対する回答です。プライマリの質問フィールドを空白にすると、代替回答として扱われます。回答のフォーマットは、
- テキスト形式
- 「SYS_SCRIPT」のプレフィックスがついたスクリプト (例:
SYS_SCRIPT <JavaScript 形式の回答>
) - 「SYS_CHANNEL_<チャネル名>」のプレフィックスがついたチャネル別形式の回答。回答はシンプルまたはスクリプト形式が利用できます。
SYS_CHANNEL_<チャネル名> SYS_TEXT <回答>
SYS_CHANNEL_<チャネル名> SYS_SCRIPT <JavaScript 形式の回答>
- ダイアログをトリガーし、SYS_INTENTのプレフィックスを付与します。 (例:
SYS_INTENT
)
- 拡張回答 − 1 − 応答が長くなる場合にオプションとして使用します。
- 拡張回答 − 2 − 応答が長くなる場合にオプションとして使用します。
ノード
このセクションは、ノードとタグの設定で構成されています。
- ノード − ヘッダーの必須項目です。それ以下の行では空白になっていなければなりません。
- Que ID − タグの設定を指定する際に必須となる項目です。ノードの場合は空白にしておきます。
- ノードパス − ノード/タグに到達するまでのパスです。
- タグ − タグの設定に必須となる項目です。ノードの場合は空白にしておきます。
- 前提条件 − このノード/タグの条件を指定します。
- 出力コンテキスト − このノード/タグにより設定されるコンテキストです。
- トレイト − このノード/タグのトレイトです。
同義語
このセクションで、同義語をキーと値のペアで入力します。
- 同義語 − ヘッダーの必須項目です。それ以下の行では空白になっていなければなりません。
- フレーズ − 同義語が挿入されるフレーズです。
- 同義語 − コンマで区切られた値です。
ナレッジグラフの用語識別におけるボットの同義語の使用は、以下を使用して有効にすることができます。
- 確信度設定 − ヘッダーの必須項目です。それ以下の行では空白になっていなければなりません。
- パラメータ − この場合は、「useBotSynonyms」となります。
- 値 − TRUE または FALSEの値です。
ナレッジグラフパラメータ
- ナレッジグラフパラメータ − ヘッダーの必須項目です。それ以下の行では空白になっていなければなりません。
- 言語 − ボットの言語コードです。英語であれば「en」となります。
- ストップワード − コンマで区切られた値です。
トレイト
トレイトに関連した情報は、以下のように指定できます。
- トレイト − ヘッダーの必須項目です。それ以下の行では空白になっていなければなりません。
- 言語 − ボットの言語コードです。英語であれば「en」となります。
- グループ名 − トレイトのグループ名です。
- 一致戦略 − 機械学習ベースのパターンまたは確率です。
- スコアしきい値 − 上層の一致戦略が機械学習ベースに設定されている場合のしきい値 (0 から 1 までの間で指定) です。
- トレイト名 − トレイトの名前です。
- トレーニングデータ − トレイトのための発話です。
JSONファイルからのインポート
Kore.ai では、ナレッジグラフを JSON 形式で作成してアップロードすることができます。ボットからサンプル JSON をダウンロードして、その構造を確認してください。
JSON でナレッジグラフを作成するには、以下の手順に従います。
サンプル JSON のダウンロード
- ナレッジグラフを開きます。
- 左側のセクションで、[インポート] をクリックします。
- 続行する前にナレッジグラフのバックアップを作成することを求める画面が表示されます。CSV または JSON のいずれかのバックアップファイル形式を選択します。
- バックアップが作成できたら、[続行] をクリックします。
- 次のダイアログで、[サンプル JSON] を選択します。JSON ファイルがローカルコンピューターにダウンロードされます。
JSON リファレンス
プロパティ名 | タイプ | 説明 |
FAQ | 配列 | 以下で構成されます。
|
質問 | 文字列 | FAQ 配列に含まれるプライマリの質問です。 |
回答 | 文字列 | FAQ 配列に含まれるボットの応答です。 |
用語 | 配列 | 質問が追加されるリーフノードとその第 1 レベルのノードまでの親を含みます。 |
代替質問 | 配列 | 代替質問と用語で構成されます。リーフから第 1 レベルのノードまでの用語を含みます。 |
同義語 | オブジェクト | 用語とその同義語の配列で構成されます。 |
非マッピングパス | 配列 | 質問と第 1 レベルまでのすべての親を含まないノードの配列で構成されます。 |
トレイト | オブジェクト | キーとしてのトレイト名と、値としての発話の配列で構成されます。 |
CSV でのナレッジグラフの構築 (リリース 7.3以前)
注意: このフォーマットは今後のリリースで非推奨となります。
ダウンロードしたサンプル CSV ファイルを開きます。
CSV ファイルの各行に入力する内容は、情報の種類によって異なります。たとえば、FAQ (質問、回答、ノード、代替質問) に必要な内容は同義語 (用語、同義語) に必要な内容とは異なります。
ボットは、行の 1 列目にある情報の種類に基づいて CSV ファイルの各行にあるデータを解釈します。以下は、異なる情報の種類を表す CSV ファイルの 1 列目の有効なエントリです。
- FAQ: ナレッジグラフのプライマリまたは代替質問を表します。
- 非マッピングパス: 質問が関連付けられていないノードを表します。
- 同義語: 用語のグローバル同義語を表します。
- クラス: トレイト名と、それに関連付けられた発話を表します。
重要なメモ
以下のボットエレメントについては、CSV やスプレッドシートを使用してインポートまたはエクスポートすることができません。
- 代替応答: スプレッドシートは FAQ の代替質問の入力に対応していますが、代替応答の入力やボットへのインポートはできません。
- 分割応答: 複数の連続メッセージに分割された FAQ 応答を入力またはインポートすることはできません。
- 高度な応答: CSV インポートは、JavaScript を使用して高度な応答モードで記述された応答には対応していません。
以下のセクションでは、各情報タイプに必要な詳細の残りの部分について説明します。
FAQ
プライマリの質問
注意: パス内の第 1 レベルノードまでのすべての親ノードの名前を、別々の列に入力してください。
代替質問
用語/タグ
- 必須のタグと用語にはプレフィックス「**」を付与します。
- オーガナイザータグと用語にはプレフィックス「!!」を付与します。
非マッピングパス
非マッピングパスは、質問が追加されていないノードを参照します。
グローバル同義語
パス同義語
トレイト
<tag/term-name>:<class-name>>