こんにちは、つばさです。
今回は、Google Cloudのマネージドサービス(※1)であるVertex AI Searchの「カスタム検索」アプリを検証しましたので、その設定方法と検証結果を紹介します。
※1 :マネージドサービス:システムの運用・管理を専門業者が代行してくれるサービス。
Vertex AI Searchとは
Vertex AI Searchは、検索アプリケーションを手軽に構築できるGoogle Cloudのマネージドサービスです。Googleの検索技術を活用し、自然言語処理やLLMなどの機能を組み合わせることで、従来のキーワード一致だけでなく、セマンティック検索(※2)を用いてより関連性の高い検索結果を提供することが可能です。
※2 セマンティック検索:言葉の意味を理解して検索するシステム。キーワードの一致だけでなく、文脈や意図を解釈するため、同じ意味の異なる表現でも適切な結果を見つけられるのが特徴。
主な特徴
- Google Cloud等に格納しているドキュメントの検索
- 検索対象となるデータに基づいてAI回答を生成
- ウェブページやアプリへの検索バー埋め込みが可能
基本コンポーネント
Vertex AI Searchは以下の主要コンポーネントで構成されています。
データストア
さまざまなデータソースのコンテンツが保存されます。利用可能なデータソースは以下の通りです。
- ウェブサイト:公開ウェブサイトからインデックス登録されたデータ。要約をおこなうには、追加料金が発生
- 構造化データ:データベース、Cloud StorageのJSONファイル、BigQueryテーブルなど
- 非構造化データ:Cloud StorageやBigQueryに保存されているPDF、HTML、TXTファイル、画像ファイルなど
- 統合検索:複数のデータソースを統合して一度に検索可能
検索アプリ
ユーザークエリから検索結果を提供するアプリケーションです。
アプリの種類
Vertex AI Searchでは、用途に応じて以下のアプリタイプを選択できます。
| カテゴリ | アプリ種類 | 説明 |
|---|---|---|
| 検索アプリ | カスタム検索 | ウェブサイトデータやその他の構造化・非構造化データを含む、Google品質の検索エンジン |
| 検索アプリ | メディア検索 | 映画、動画、音楽などのメディアコンテンツ向けの検索機能 |
| 検索アプリ | 医療検索 | FHIRデータストアの医療記録をクエリできる検索機能 |
| レコメンデーション アプリ | メディア レコメンデーション | メディアコンテンツのおすすめ情報を提供 |
| レコメンデーション アプリ | カスタム レコメンデーション | メディア以外のコンテンツのおすすめを提供 |
設定手順
「カスタム検索」アプリを作成する方法は、以下の通りです。
1. データストアの作成
Cloud Storageに保存した非構造化データを1度だけインポートする例を紹介します。

1. Google CloudコンソールでAI Applicationsページに移動
2. データストアページでデータストアを作成をクリック
3. ソースとしてCloud Storageを選択

4. データタイプに非構造化ドキュメント(PDF、HTML、TXT など)を選択
5. 同期の頻度に1 回限り を選択
6. インポートするフォルダまたはファイルを選択

7. データストアのリージョンを選択
8. データストア名を入力
9.ドキュメント処理オプションを設定
- パーサーオプションの指定
- OCRパーサー、レイアウトパーサーは追加費用が発生
- パーサーを比較するには、『ドキュメントを解析する』を確認
- チャンク処理の設定
- チャンク処理の詳細については、『RAG 用にドキュメントをチャンクする』を確認
10. 作成をクリック
2. 検索アプリの作成
「カスタム検索」アプリを作成する例を紹介します。

1. Google CloudコンソールでAI Applicationsページに移動
2. アプリページでアプリを作成をクリック
3. AI モードでのサイト内検索を選択

4. Enterprise エディションの機能の有効化
- 追加費用が発生
5. 生成レスポンスの有効化
- 検索の要約、フォローアップ付き検索などが利用可能
6. アプリ名と会社・組織の表示名を入力
7. アプリのロケーションを選択
- デフォルトは「グローバル」を推奨
8. 続行をクリック

9. 作成済みのデータストアを選択、または新規作成
- 複数のデータストアをアタッチする場合は、この段階で選択する
- 後から追加・削除は不可
3. 検索ウィジェットの構成
構成 > UIタブで以下の設定をおこないます。

検索のタイプ
- 検索エクスペリエンスのタイプを選択
- 検索:検索結果のみ表示
- 回答付きの検索:要約も含めて表示
- フォローアップ付きの検索:要約の生成と同じ話題に対して追加質問が可能
回答のカスタマイズ
- 回答のトーン、スタイル、長さを調整
サマリー言語
- サマリーの言語を選択
- 日本語を選択しないと、中国語などが返される場合がある

回答に含める画像
- 回答に含める画像のソースを選択
- 回答とともに次の種類の画像を返すことができる
- 回答の情報から生成されたグラフ(AIで画像を生成)
- 非構造化データストアから選択された画像(コーパスから選択)
予測入力の候補を表示
- 予測入力の候補を表示できる
- 入力ミスの自動訂正
- 安全でない用語の削除
- 個人情報(PII)の表示防止
- 拒否リストの設定
ユーザー イベントの収集
- 検索結果の向上とパーソナライズを目的として、ユーザー イベントを収集できる
4. アプリのプレビュー

ナビゲーションメニューでプレビューをクリックし、検索アプリをテストします。複数のデータストアを設定している場合は、質問時に該当のデータストアを選択・制御できます。
検証結果
Vertex AI Searchの特徴
検証の結果、以下の特徴が明らかになりました。
得意な点
- 具体的な質問には適切に回答できる
- すぐに使えるRAGシステムとして優れている
課題点
- 抽象度が高い質問には回答できない場合がある
- ソースコードを参照できないため、コードに関する質問には対応できない
- RAGの検索設定は、コンソール上では変更できない仕様
出力精度について
プロンプトによる出力の変化
『回答のカスタマイズ』を調整することで、回答内容が変化することを確認しました。基本的なプロンプトと非技術者向けプロンプトでは、回答の表現が変化します。
データストアの選択による変化
複数のデータストアを設定したアプリにて、すべてのデータストアを参照させた場合と、一部のデータストアのみを参照させた場合では、回答内容が異なりました。特に、データストアを適切に分類し、必要なものだけを参照させることで、より精度の高い回答が得られることが分かりました。
課金について
重要な注意点
- 1回の使用で$116.87の課金が発生したケースがありました。
- 非構造化ドキュメントのデータストア作成時に課金が発生(レイアウトパーサーを使用)しており、登録ドキュメント数が多かったため(今回の例だと約3,000アイテム)、多額の課金が発生していました。
推奨事項
- 事前に費用を試算してから利用すること、あるいは必要に応じて制限をかけて使用することをお勧めします。
その他の便利な機能
データソースのアクセス制御
IDプロバイダを使用して、エンドユーザーごとに検索結果を制限できます。
カスタム エンベディング
独自のベクトルエンベディングをアップロードして使用できます。
検索チューニング

テストデータを用いてファインチューニングが可能となっており、標準モデルよりも高品質な検索結果が期待できます。
サービス提供コントロール

結果が返された際、リクエストが処理されるデフォルトの動作を変更できます。
コントロールの種類
- ブーストコントロール:結果の返される順序を変更
- フィルタコントロール:返された結果からエントリを削除
- 類義語コントロール:クエリを相互に関連付け
- リダイレクトコントロール:指定されたURIにリダイレクト
- プロモートコントロール:指定されたリンクを昇格
アナリティクス機能

アプリの利用状況、検索品質、エンドユーザーエンゲージメントに関する分析情報を確認できます。
まとめ
Vertex AI Searchは、Googleの検索技術を活用した強力なマネージドサービスです。設定も比較的シンプルで、すぐに使えるRAGシステムとして優れています。
一方で、課金体系には注意が必要で、特にドキュメント数が多い場合やOCR/レイアウトパーサーを利用する場合は、事前に費用の試算や制限設定が推奨されます。
適切なデータストアの設計とシステムプロンプトの調整により、ビジネスニーズに合った高精度な検索アプリケーションを構築できることが確認できました。
本記事が、Vertex AI Searchの導入を検討されている方の参考になれば幸いです。