Google Cloudが提供する「Gemini Enterprise」は、企業内のデータに対して高度な検索や、生成AIによる要約・対話型アシスタントを組み込むためのプラットフォームです。
この記事では、開発者やアーキテクト向けに、Gemini Enterprise API(内部名称:Discovery Engine API)の全体像、主要なリソース構造、および提供されているコア機能の仕様概要を整理して解説します。
1. APIの全体像とアーキテクチャ
Gemini Enterpriseの各機能は、Google Cloud上のスケーラブルなフルマネージドAPIを通じて提供されます。REST APIおよびgRPCでのアクセスが可能であり、構造化・非構造化データ(PDFや社内ドキュメントなど)やウェブサイトの情報を対象としたセマンティック検索と生成AI(LLM)による回答生成をシームレスに統合している点が最大の特徴です。
2. 主要なリソース(データモデル)
APIを理解する上で、以下の主要なリソース階層を把握することが重要です。
- Projects & Locations: Google Cloudのプロジェクトと、データがホストされるリージョン(
global,us,euなど)。 - DataStores (データストア) / Engines (エンジン): データの保管場所、および検索・推奨エンジンの本体。ここに対してクエリを投げます。
- Branches & Documents: データストア内に取り込まれた実際のドキュメントデータ(テキスト、HTML、PDFのパース結果など)。
- ServingConfigs (サービング構成): クエリを受け取った際に「どのように検索し、どのように回答を生成するか」の振る舞いを定義する設定。
- Sessions (セッション): ユーザーとの対話(チャット)の文脈を保持するためのリソース。複数回のやり取りをまたいでコンテキストを管理します。
3. 提供される主なAPI機能(エンドポイント)
Discovery Engine APIは、ユースケースに応じて複数のメソッドを提供しています。大きく分けて以下の4つのカテゴリに分類できます。
① 検索と回答生成 (Search & Answer)
一問一答形式の検索や、生成AIによる要約機能を提供します。
search: 従来のキーワード検索に加え、意味を理解するセマンティック検索を実行します。オプションとして、検索結果の上位ドキュメントを基にした生成AIによる要約(Summary)を同時に取得できます。answer/streamAnswer: 単なるドキュメントの羅列ではなく、ユーザーの質問に対する「直接的な回答」を生成して返すことに特化したメソッドです。回答のストリーミング出力にも対応しています。
② 対話型アシスタント (Conversations & Assistants)
ChatGPTのような、過去の文脈を踏まえたチャットUIを構築するためのAPIです。
converse:Conversationリソースを使用して、過去のターン(質問と回答の履歴)を維持しながら対話形式で検索を行います。assist/streamAssist: より高度なエージェント機能と連携し、ユーザーを支援します。Sessionリソースを活用し、リアルタイムの双方向のやり取り(ストリーミング)や、特定の対話内だけで有効なコンテキストファイルの一時アップロード(addContextFile)も可能です。
③ データ取り込みと管理 (Data Ingestion)
社内データをGemini Enterpriseに連携するためのAPIです。
documents.import/create: Cloud StorageやBigQuery、または直接API経由で大量のドキュメントを一括で取り込みます。siteSearchEngine: 指定したウェブサイトのドメインを登録し、Googleのクローラーにサイト内をインデックスさせる設定を行います。
④ ユーザー行動の追跡 (User Events)
検索エンジンの精度やサジェスト(入力補完)を最適化するための機能です。
userEvents.write/collect: エンドユーザーが「どの検索結果をクリックしたか」「何を閲覧したか」というイベントログをAPI経由で送信し、システムを継続的に学習・改善させます。completeQuery: 過去の検索履歴や取り込まれたドキュメントに基づいて、検索窓のオートコンプリート(キーワード候補)を提供します。
4. 認証方式と提供ライブラリ
認証 (Authentication)
APIの呼び出しは、Google CloudのIAM(Identity and Access Management)による強力なアクセス制御によって保護されています。サーバーサイドからの呼び出しにはアプリケーションのデフォルト認証情報(ADC)やサービスアカウントを利用し、セキュアな通信(OAuth 2.0 / Bearer トークン)を行います。
クライアントライブラリ (SDK)
REST APIやgRPCを直接呼び出すことも可能ですが、Googleから以下の言語向けに公式クライアントライブラリが提供されており、簡単に統合が可能です。
- Python
- Node.js
- Java
- C#
- Go
- PHP
- Ruby
まとめ
Gemini Enterprise (Discovery Engine API) は、単なる検索エンジンにとどまらず、RAG(Retrieval-Augmented Generation)アーキテクチャをマネージドサービスとして提供する非常に強力なAPIです。データの取り込みから、検索、要約、複数ターンの対話、ユーザー行動のフィードバックループまで、エンタープライズ品質のAIシステムを構築するために必要な機能が網羅されています。
APIの仕様設計を理解することで、社内ポータルの高度化や、専門知識を持ったサポート用チャットボットなど、自社のビジネス課題に合わせた最適なAIアシスタントの設計が可能になります。