Knowledge Catalog に接続する

このドキュメントでは、Gemini Enterprise が Knowledge Catalog と統合され、エージェントにユーザーがアクセスできるデータを検索し、技術的およびビジネス上のコンテキストを検索するための読み取り専用ツールが提供される仕組みについて説明します。

Knowledge Catalog に接続するために、別のデータストアを作成する必要はありません。代わりに、連携クエリモードで BigQuery、Spanner、Cloud SQL、または AlloyDB for PostgreSQL データストアを Gemini Enterprise アプリに接続すると、Knowledge Catalog の統合が自動的に有効になります。Knowledge Catalog はデータストアとして表示されるのではなく、Gemini Enterprise アプリの [アシスタント] タブの構成オプションとして表示されます。コンパニオン データクラウド コネクタの外部でも、いつでも統合を手動でオンまたはオフにできます。

Knowledge Catalog と データクラウド コネクタの連携の仕組み

Knowledge Catalog では、Google Cloud 環境全体でカタログに登録されたすべてのデータアセットは、エントリと呼ばれるメタデータ レコードとして保存されます。フェデレーション クエリモードの Data Cloud コネクタは、認証されたユーザーが閲覧できるすべてのリソースに広範なアクセス権を持っているため(単一のデータセットまたはテーブルに制限されない)、エージェントは最初に関連データがどこにあるかを認識していません。

Knowledge Catalog が Gemini Enterprise アプリで有効になっている場合(連携 Data Cloud コネクタを接続したときに自動的に有効になるか、[アシスタント] タブで手動で有効にする)、統合により、エージェントに次の操作を行うための組み込みスキルと読み取り専用ツールが提供されます。

  • アクセス可能なデータを検索する: 認証されたユーザーがアクセス権を持つ Knowledge Catalog のカタログ化されたデータアセットを検索します。
  • 技術的およびビジネス コンテキストを検索する: テーブル スキーマ、列の説明、ビジネス用語集の用語、事前に検証済みのサンプルクエリ(ゴールデン クエリ)などの拡充されたメタデータを取得します。コンパニオン データクラウド コネクタとペア設定すると、エージェントはこれらのゴールデン クエリを使用して複雑なスキーマでの結合ハルシネーションを防ぎ、このコンテキストをコネクタに渡して正確なクエリを生成して実行します。

ワークフローの例

次の図は、Knowledge Catalog とフェデレーション Data Cloud コネクタが連携してユーザーの質問に回答する仕組みを示しています。

ユーザーの質問から、Knowledge Catalog のセマンティック検索とコンテキスト取得、BigQuery SQL クエリの実行までの 4 つのステップのワークフローを示す図。

このワークフローでは、Gemini Enterprise は次の手順を行います。

  1. ユーザーの質問: ユーザーが Gemini Enterprise で自然言語で質問します。

    "How many sales did we have this month for all cold weather products?"
    
  2. セマンティック検索による検出: Gemini Enterprise ルート エージェントは、ユーザーの質問から抽出された検索語句を使用して Knowledge Catalog を検索します。

    ["cold weather", "products", "orders", "sales"]
    
  3. コンテキストの取得: ユーザーがアクセスできる一致するエントリについて、エージェントは Knowledge Catalog で拡充されたコンテキストを検索します(テクニカル メタデータ、使用パターン、ビジネス用語集、LLM 推論から導出されます)。

    simpleName: my-project.ecomm.products
    type: BigQuery Table
    terms: "Cold Weather Products; category IN ('Sweaters', 'Coats & Jackets')"
    
  4. クエリの実行: 取得したテーブル メタデータとビジネス定義を使用して、エージェントは連携 BigQuery コネクタを介して読み取り専用の SQL クエリを作成して実行します。

    -- Execute BigQuery read-only SQL
    SELECT COUNT(order_id) FROM `my-project.ecomm.orders`
    WHERE product_id IN (
      SELECT id FROM `my-project.ecomm.products`
      WHERE category IN ('Sweaters', 'Coats & Jackets')
    );
    

始める前に

Knowledge Catalog の統合は読み取り専用で、内部 API を使用します。そのため、Dataplex API を有効にしたり、MCP ツールの権限を付与したりする必要はありません。また、ユーザーが Knowledge Catalog でリソースを作成または変更する権限も必要ありません。

この統合ではエンドユーザー認証情報を使用してリクエストを認証するため、エージェントは、認証済みユーザーが Identity and Access Management(IAM)権限で表示できるデータアセットのみを検出できます。

  • 検索結果のトリミングによるメタデータとデータアクセスの分離: Knowledge Catalog は、基盤となるデータソースの認証済みユーザーの権限に基づいて検索結果のトリミングを適用します。データセットまたはテーブルに対する読み取り権限(roles/bigquery.dataViewer や roles/bigquery.metadataViewer など)がないユーザーの場合、そのアセットはカタログ検索結果から自動的に除外され、アシスタントによって検出されることはありません。
  • ファーストパーティ Google Cloud データソース: BigQuery、AlloyDB for PostgreSQL、Spanner、Cloud SQL などのファーストパーティ データソースの権限は自動的に継承されます。たとえば、ユーザーに BigQuery データ閲覧者(roles/bigquery.dataViewer)ロールを付与すると、Knowledge Catalog で対応するテーブルとデータセットのメタデータを検索して検出できるようになります。
  • 追加のメタデータとサードパーティのデータソース: Knowledge Catalog に追加されたカスタム メタデータ、ビジネス用語集、サードパーティのデータアセットについては、エージェントがそのデータを検出できるように、ユーザーが Knowledge Catalog で必要な閲覧権限(roles/dataplex.dataDomainEntryReader や roles/dataplex.catalogViewer など)を持っていることを確認します。詳細については、Knowledge Catalog のドキュメントの IAM でアクセスを管理するをご覧ください。

アプリで Knowledge Catalog を有効または無効にする

連携クエリモードで BigQuery、Spanner、Cloud SQL、AlloyDB for PostgreSQL のデータストアを Gemini Enterprise app に接続すると、Knowledge Catalog とその組み込みエージェント スキルがアプリで自動的に有効になります。

アプリの [構成] ページの [アシスタント] タブで、コンパニオン データクラウド コネクタの外部(たとえば、データクラウド コネクタを接続せずに Knowledge Catalog を有効にする場合や、データクラウド コネクタを有効にしたまま Knowledge Catalog を無効にする場合など)でも、Knowledge Catalog の統合を手動でオンまたはオフにできます。

  1. Google Cloud コンソールで、[Gemini Enterprise] ページに移動します。

    Gemini Enterprise

  2. 構成するアプリの名前をクリックします。

  3. [構成] をクリックし、[アシスタント] タブを選択します。

  4. [Knowledge Catalog を有効にする] セクションで、切り替えボタンを使用して Knowledge Catalog の統合をオンまたはオフにします。

  5. [保存して公開] をクリックします。

アシスタントの設定について詳しくは、アシスタントを構成するをご覧ください。

次のステップ