データストア

データストアは、データストア エージェントがデータからエンドユーザーの質問の回答を見つけるために使用します。データストアは、ウェブサイトとドキュメントの集まりで、それぞれがデータを参照します。

エンドユーザーがエージェントに質問すると、エージェントは特定のソース コンテンツから回答を検索し、見つかった結果を簡潔なエージェント レスポンスに要約します。また、エンドユーザーが詳細を確認できるように、レスポンスのソースへのリンクも提供します。エージェントは、特定の質問に対して最大 5 つの回答スニペットを提供できます。

データストアのソース

データにはさまざまなソースを指定できます。

ウェブサイトのコンテンツ

ウェブサイトのコンテンツをソースとして追加する場合は、複数のサイトを追加または除外できます。 サイトを指定するときに、パターンのワイルドカードとして個々のページまたは * を使用できます。 すべての HTML と PDF のコンテンツが処理されます。

ウェブサイトのコンテンツをソースとして使用する場合は、ドメインの所有権を確認する必要があります。

制限事項:

  • 公開 URL からのファイルは、検索インデックスに存在するように、Google 検索インデクサによってクロールされている必要があります。これは Google Search Console で確認できます。
  • 最大 200,000 ページがインデックスに登録されます。データストアにより多くのページが含まれている場合、インデックス登録は失敗し、最後にインデックスに登録されたコンテンツが残ります。

データをインポートする

BigQuery または Cloud Storage からデータをインポートできます。 このデータは、構造化または非構造化とすることができ、メタデータありまたは メタデータなしとすることができます。

利用可能なデータ インポート オプションは次のとおりです。

  • データの追加 / 更新: 提供されたドキュメントがデータストアに追加されます。 新しいドキュメントに古いドキュメントと同じ ID が割り当てられている場合、古いドキュメントは新しいドキュメントで置き換えられます。
  • 既存のデータをオーバーライド: 古いデータがすべて削除され、新しいデータがアップロードされます。 この操作は元に戻せません。

構造化データストア

構造化データストアは、よくある質問(FAQ)の回答を保持できます。 ユーザーの質問がアップロードされた質問と高い信頼性で一致すると、エージェントはその質問に対する回答を変更せずに返します。 エージェントに表示される質問と回答のペアごとに、タイトルと URL を指定できます。

データストアにデータをアップロードするときは、CSV 形式を使用する必要があります。各ファイルには、列を記述するヘッダー行が必要です。

次に例を示します。

"question","answer","title","url"
"Why is the sky blue?","The sky is blue because of Rayleigh scattering.","Rayleigh scattering","https://en.wikipedia.org/wiki/Rayleigh_scattering"
"What is the meaning of life?","42","",""

title 列と url 列はオプションであり、省略できます。

"answer","question"
"42","What is the meaning of life?"

アップロード プロセス中に、フォルダを選択します。ここでは、拡張子に関係なく各ファイルが CSV ファイルとして扱われます。

制限事項:

  • , の後に空白文字があると、エラーが発生します。
  • 空白行(ファイルの末尾であっても)があると、エラーが発生します。

非構造化データストア

非構造化データストアには、次の形式のコンテンツを含めることができます。

  • HTML
  • PDF
  • TXT
  • CSV

制限事項:

  • ドキュメントの最大サイズは 100MB です。

メタデータを含むデータストア

タイトルと URL をメタデータとして指定できます。エージェントがユーザーと会話中、エージェントはユーザーにこの情報を提供します。 これにより、Google 検索インデクサがアクセスできない内部ウェブページにすばやくリンクできます。

メタデータを含むコンテンツをインポートするには、1 つ以上の JSON Lines ファイルを指定します。このファイルの各行に 1 つのドキュメントを記述します。 実際のドキュメントを直接アップロードしません。 Cloud Storage パスにリンクする URI が、JSON Lines ファイルで指定されます。

JSON Lines ファイルを指定するときに、これらのファイルが含まれている Cloud Storage フォルダを指定します。 このフォルダに他のファイルを配置しないでください。

フィールドの説明

フィールド タイプ 説明
id 文字列 ドキュメントの一意の識別子。
content.mimeType 文字列 ドキュメントの MIME タイプ。「application/pdf」と「text/html」がサポートされています。
content.uri 文字列 Cloud Storage 内のドキュメントの URI。
content.structData 文字列 オプションの title フィールドと url フィールドを持つ単一行の JSON オブジェクト。

次に例を示します。

{ "id": "d001", "content": {"mimeType": "application/pdf", "uri": "gs://example-import/unstructured/first_doc.pdf"}, "structData": {"title": "First Document", "url": "https://internal.example.com/documents/first_doc.pdf"} }
{ "id": "d002", "content": {"mimeType": "application/pdf", "uri": "gs://example-import/unstructured/second_doc.pdf"}, "structData": {"title": "Second Document", "url": "https://internal.example.com/documents/second_doc.pdf"} }
{ "id": "d003", "content": {"mimeType": "text/html", "uri": "gs://example-import/unstructured/mypage.html"}, "structData": {"title": "My Page", "url": "https://internal.example.com/mypage.html"} }

メタデータなしのデータストア

このタイプのコンテンツにはメタデータはありません。 インポートするドキュメントを指定するだけです。 コンテンツ タイプは、ファイル拡張子によって決まります。

データストアを作成する

データストアを作成するには:

  1. Google Cloud コンソールで、[検索と会話] ページに移動します。

    検索と会話

  2. コンソールのプルダウンからプロジェクトを選択します。

  3. 利用規約を読み、同意し、[続行して API を有効にする] をクリックします。

  4. 左側のナビゲーションで [データストア] をクリックします。

  5. [新しいデータストア] をクリックします。

  6. データのソースを選択します。

  7. [高度なウェブサイトのインデックス登録] を有効にします。 これは、データストア エージェントに必要です。

  8. 選択したデータストア ソースのデータと構成を指定します。データストアのロケーションは、エージェントのロケーションに対応している必要があります。

  9. [作成] をクリックしてデータストアを作成します。

  10. ウェブサイトのドメインの所有権を確認します

データストア ドキュメントに Cloud Storage を使用する

コンテンツが公開されていない場合は、Cloud Storage にコンテンツを保存することをおすすめします。データストア ドキュメントを作成するときは、Cloud Storage オブジェクトの URL を gs://bucket-name/folder-name の形式で指定します。 フォルダ内の各ドキュメントがデータストアに追加されます。

Cloud Storage バケットを作成する場合は、次の手順を行います。

Cloud Storage クイックスタートの手順に沿って、バケットを作成し、ファイルをアップロードします。

サポートされている言語

サポートされている言語については、Dialogflow 言語リファレンスのデータストア列をご覧ください。

最高のパフォーマンスを得るには、データストアを 1 つの言語で作成することをおすすめします。

サポートされるリージョン

サポートされるリージョンについては、Dialogflow リージョン リファレンスをご覧ください。