このページでは、Vertex AI Search アプリとデータストアについて説明します。Vertex AI Agents データストアについては、Vertex AI Agents データストアをご覧ください。
Vertex AI Search では、検索アプリまたはおすすめアプリを作成してデータストアに接続します。Google Cloud プロジェクトには複数のアプリを含めることができます。
アプリとデータストアの関係
アプリとデータストアの関係は、アプリの種類によって異なります。
一般的な検索アプリは、データストアと多対多の関係にあります。複数のデータストアが 1 つの一般的な検索アプリに接続されている場合、これは統合検索と呼ばれます。検索アプリを複数のデータストアに接続する際の制限事項については、統合検索についてをご覧ください。
汎用レコメンデーション アプリは、データストアと 1 対 1 で接続します。
メディアアプリは、データストアと多対 1 の関係にあります。アプリは 1 つのデータストアにのみ接続できますが、特定のデータストアは複数のアプリに接続できます。たとえば、メディア検索アプリとメディア レコメンデーション アプリはデータストアを共有できます。
医療検索アプリとデータストアの間には多対一の関係があります。アプリは 1 つのデータストアにのみ接続できますが、特定のデータストアは複数のアプリに接続できます。たとえば、患者向けアプリとプロバイダ向けアプリは同じデータストアに接続できます。
ヘルスケア データのバッチデータ インポートでは、データはアプリ内のデータストアにインポートされます。ヘルスケア データのストリーミング データ インポート(プレビュー版)では、データはエンティティにインポートされます。これは、データコネクタ内のデータストアの一種です。データコネクタは、アプリ内のデータストアの一種でもあります。
データストアをアプリに接続した後は、接続を解除できません。
アプリの作成方法とデータの取り込み方法
アプリを作成してデータを取り込む方法は、データの種類によって異なります。
ウェブサイト データの場合は、API ではなく Google Cloud コンソールを使用してアプリを作成し、データを取り込みます。
構造化データまたは非構造化データの場合は、Google Cloud コンソールまたは API を使用できます。
ヘルスケア データの場合は、Google Cloud コンソールまたは API を使用できます。
ドキュメント
各データストアには、ドキュメントと呼ばれる 1 つ以上のデータレコードがあります。ドキュメントが表す内容は、データストア内のデータの種類によって異なります。
Websiteドキュメントはウェブページである。
構造化データドキュメントは、テーブル内の行または特定のスキーマに従う JSON レコードです。このスキーマは自分で指定することも、Vertex AI Agent Builder に取り込まれたデータからスキーマを導出させることもできます。
メディアの構造化データ。ドキュメントは、テーブル内の行またはメディア固有のスキーマに従う JSON レコードです。ドキュメントは、動画、ニュース記事、音楽ファイル、ポッドキャストなどのメディア コンテンツに関連するレコードです。ドキュメントには、メディア アイテムを記述する情報(少なくともタイトル、コンテンツの場所への URI、カテゴリ、長さ、公開日)が含まれています。
サードパーティのデータソースの構造化データ(許可リストを使用したプレビュー)。ドキュメントは、サードパーティ データソースに固有のエンティティです(Jira の問題や Confluence スペースなど)。
非構造化データドキュメントは、HTML、テキストが埋め込まれた PDF、TXT 形式のファイルです。プレビュー版では、PPTX 形式と DOCX 形式を使用できます。
医療 FHIR データ。ドキュメントは、サポートされている FHIR R4 リソースです。Vertex AI Search でサポートされている FHIR R4 リソースのリストについては、Healthcare FHIR R4 データスキーマ リファレンスをご覧ください。
データストアとアプリ
Vertex AI Agent Builder には、さまざまな種類のデータストアがあります。データストアには 1 種類のデータのみを含めることができます。
ウェブサイトのデータ
ウェブサイト データを含むデータストアは、一般公開されているウェブサイトからインデックスに登録されたデータを使用します。データストアに含める URL パターンのセットを指定できます。URL パターンに一致するウェブページは、含めるウェブページと呼ばれます。その後、含まれるウェブページからクロールされたデータに対して検索やおすすめを設定できます。
たとえば、yourexamplewebsite.com/faq/*
や yourexamplewebsite.com/events/*
などの URL パターンを指定して、これらのウェブページからクロールされたデータに対して、パターンに一致する検索やおすすめを有効にできます。このデータには、テキスト、メタデータがタグ付けされた画像、meta
タグ、PageMap 属性、schema.org データなどの構造化データが含まれます。
ウェブサイトのデータストアには次の 2 種類があります。
基本的なウェブサイト検索:
- 対象となるウェブサイトの既存の Google 検索インデックスに対する検索機能を提供します。
- ドメインの所有権の証明は必要ありません。
ウェブサイトの高度なインデックス登録
- 含まれるウェブサイトの既存の Google 検索インデックスのいずれかに基づいて生成されたインデックスに対して、検索オプション機能を提供します。
- Vertex AI Search アプリのオーナーは、サイトマップを送信して維持することで、インデックスに登録するウェブページを制御できます。詳細については、サイトマップを使用してウェブページをインデックス登録して更新するをご覧ください。このプロセスにより、手動で操作することなくインデックスが最新の状態に保たれます。
- Vertex AI Search アプリのオーナーは、Google 検索インデックスをミラーリングする初期インデックス作成を実行し、必要に応じてウェブサイトを再クロールしてインデックスの範囲を拡大し、最新の状態に保つことができます。詳細については、ウェブページを更新するをご覧ください。ウェブサイトの高度なインデックス登録の高度な機能については、ウェブサイトの高度なインデックス登録をご覧ください。
- Vertex AI Search データストアの所有者が、含まれるウェブサイトが属するドメインを確認する必要があります。詳しくは、ウェブサイトのドメインを確認するをご覧ください。
- データストア スキーマに構造化データを追加する機能を提供します。ウェブサイトには非構造化データが含まれていますが、
meta
タグ、PageMap 属性、schema.org データの形式で構造化データをウェブページに追加できます。次に、構造化データを使用したウェブサイトの高度なインデックス登録で説明されているように、この構造化データを使用してデータストア スキーマを編集できます。
- 含まれるウェブサイトの既存の Google 検索インデックスのいずれかに基づいて生成されたインデックスに対して、検索オプション機能を提供します。
次のステップ
ウェブサイト検索の場合:
- インデックス登録の前提条件については、ウェブサイト検索用にデータを準備する方法をご覧ください。
- ウェブサイトのコンテンツを使用してデータストアを作成する。
- 検索アプリを作成します。
レコメンデーションの場合:
構造化データ
構造化データを含むデータストアでは、構造化データに対するセマンティック検索やおすすめ機能を利用できます。BigQuery または Cloud Storage からデータをインポートできます。API を使用して構造化 JSON データを手動でアップロードすることもできます。
たとえば、e コマース エクスペリエンスでは商品カタログでの検索やおすすめを有効にできます。また、医療機関の検索やおすすめのために医師のディレクトリを有効にすることもできます。
Vertex AI Agent Builder は、インポートしたデータからスキーマを自動的に検出します。必要に応じて、データのスキーマを指定できます。通常、データのスキーマを指定すると、結果の品質が向上します。
次のステップ
一般的な検索の場合:
- 取り込む構造化データを準備する。
- 次のいずれかの方法で検索データストアを作成します。
- 検索アプリを作成します。
一般的な推奨事項の場合:
メディアの構造化データ
メディアアプリはメディア データストアにのみ接続できます。メディアデータ ストアは、Google が定義したスキーマまたは、5 つのメディア関連フィールドの特定のセットを含む独自のカスタム スキーマを持つ構造化データ ストアです。スキーマの詳細については、メディア ドキュメントとデータストアについてをご覧ください。
たとえば、映画カタログやニュースサイト用のメディアのおすすめアプリを作成しておすすめを有効にすると、ユーザーに適したパーソナライズされた候補を表示できます。
メディア データストアには、メディア ドキュメントに加えて、Vertex AI Search がレコメンデーションとユーザーの検索をカスタマイズできるようにするユーザー イベント情報も含まれています。ユーザー イベントは、メディア レコメンデーション アプリに必須で、メディア 検索 アプリに推奨されます。ユーザー イベントについて詳しくは、リアルタイムのユーザー イベントを記録するをご覧ください。
次のステップ
- メディア データストアを作成します。
- メディアアプリを作成する。
サードパーティ データストア向けの構造化データ
プレビュー版では、許可リストを使用して次のサードパーティ データソース コネクタを使用できます。
- Confluence
- Jira
- Salesforce
- SharePoint Online
- Slack
これらのサードパーティのデータは構造化データと見なされます。
新しいコネクタを設定するときに、同期頻度を選択します。同期するエンティティも選択します。エンティティは、Jira の問題、Confluence のコンテンツやスペースなど、ソースによって異なります。エンティティごとに一意のデータストアが作成されます。エンティティ データストアは、コネクタ インスタンスごとにグループ化されます。
次のステップ
検索の場合:
レコメンデーションの場合:
非構造化データ
非構造化データストアを使用すると、ドキュメントや画像などのデータに対してセマンティック検索やレコメンデーションを実行できます。
非構造化データ ストアは、HTML、テキストが埋め込まれた PDF、TXT 形式のドキュメントをサポートしています。プレビュー版では、PPTX 形式と DOCX 形式を使用できます。
検索結果は、10 個の URL と、自然言語クエリに対する要約された回答の形式で提供されます。ドキュメントは、適切なアクセス権限を持つ Cloud Storage バケットにアップロードする必要があります。たとえば、金融機関は、金融調査の公開情報の限定公開コーパスに対する検索やおすすめを有効にできます。また、バイオテクノロジー企業は、医療研究の限定公開リポジトリに対する検索やおすすめを有効にできます。
次のステップ
検索の場合:
- 取り込み用に非構造化データを準備する。
- 次のいずれかの方法で検索データストアを作成します。
- 非構造化データ用の検索データストアを作成します。
- 検索アプリを作成します。
一般的な推奨事項の場合:
Healthcare FHIR データ
ヘルスケア検索アプリは、Cloud Healthcare API の FHIR ストアからインポートされた FHIR R4 データを使用します。Vertex AI Search がサポートする FHIR R4 リソースのリストについては、Healthcare FHIR R4 データスキーマ リファレンスをご覧ください。FHIR R4 データストアを Vertex AI Search データストアのデータソースとして使用するには、いくつかの要件を満たす必要があります。詳細については、取り込み用にヘルスケア FHIR データを準備する方法をご覧ください。
次のステップ
統合検索について
複数のデータストアを 1 つの汎用検索アプリに接続できる統合検索アプリを作成できます。この機能を使用すると、1 つのアプリで複数のソースとデータタイプを検索できます。
統合検索アプリを作成するには、新しい汎用検索アプリを作成するときに複数のデータストアを選択します。作成時に複数のデータストアを選択しないと、後でデータストアを追加することはできません。
検索結果を取得するときに、すべてのデータストアで検索するか、単一のデータストアの結果をフィルタできます。
次の制限が適用されます。
- データストアの追加と削除:
- アプリの統合検索を有効にするには、アプリの作成時に少なくとも 2 つのデータストアをアプリに接続する必要があります。
- 統合検索アプリにデータストアを追加または削除できますが、アプリに接続されているデータストアは常に 2 つ以上である必要があります。
- アプリの作成時に単一のデータストアを検索アプリに接続した場合、そのデータストアを追加または削除することはできません。
- 統合検索でウェブサイト データストアを使用するには、ウェブサイトの高度なインデックス登録を有効にする必要があります。詳しくは、ウェブサイトの高度なインデックス登録をご覧ください。
- BigQuery を使用してインポートされた非構造化データを含むデータストアはサポートされていません。
- 統合検索では、検索リクエストで次のフィールドを使用できます。
query
pageSize
offset
dataStoreSpecs
pageToken
filter
spellCorrectionSpec
session
contentSearchSpec
summarySpec
extractiveContentSpec
searchResultMode
chunkSpec
- 上記のフィールドに加えて、次のフィールドは、検索リクエストがフィルタされて単一のデータストアから結果が取得される場合に、統合検索アプリでのみサポートされます。複数のデータストアから結果を取得する場合はサポートされていません。
facetSpec
- 統合検索では、
dataStoreSpecs
に次のフィールドを使用できます。boostSpec
filter
:SearchRequest
とdataStoreSpecs
の両方にフィルタが指定されている場合、両方のフィルタが検索結果に適用されます。
- ブレンドアプリでは、サービス構成に対する作成、読み取り、更新、削除(CRUD)オペレーションがサポートされています。サービング構成で追加または更新できるのは、次のフィールドのみです。
name
displayName
solutionType
genericConfig
:contentSearchSpec
:summarySpec
extractiveContentSpec
searchResultMode
chunkSpec
boostControlIds
synonymsControlIds
onewaySynonymsControlIds
- 統合検索アプリでは、次のコントロールに対する CRUD オペレーションがサポートされています。
boostAction
synonymACtion
- 統合検索アプリは、次の機能をサポートしていません。
- サービス提供コントロールのフィルタ、リダイレクト、無視、置換、分離
- 検索リクエストまたはサービス構成で
contentSearchSpec.snippetSpec
を使用するスニペット - フォローアップ付きの検索