Cloud SQL を使用した生成 AI RAG

検索拡張生成(RAG)を使用して、組織のデータに基づいてグラウンディングされた正確な回答を提供する生成 AI チャット アプリケーションを構築します。このガイドでは、Cloud SQL を使用する生成 AI の RAG アプリケーション テンプレートについて説明します。このテンプレートは、独自のニーズに合わせてカスタマイズし、アプリケーションとしてデプロイできます。

たとえば、このテンプレートを実装して、次のようなビジネスニーズに対応できます。

ビジネスニーズ 実装
カスタマー サポート chatbot 企業は即時のカスタマー サポートを提供する必要があります。 Cloud Run でチャット インターフェースをホストします。Vertex AI は、Cloud SQL にベクトルとして保存されている技術ドキュメントに基づいてエンベディングを処理し、回答を生成します。
社内人事アシスタント 従業員は、福利厚生、会社のポリシー、社内手続きに関する情報を探す必要があります。 Cloud Run で HR アシスタントをホストします。従業員がツールにクエリを実行すると、Vertex AI は Cloud SQL から関連するポリシー情報を取得し、正確でソースに基づいた回答を生成します。
法律文書のリサーチャー 法務チームは、大規模なドキュメント リポジトリから関連する判例や契約条項を迅速に見つける必要があります。 研究ポータルを Cloud Run でホストする。Vertex AI は、Cloud SQL にベクトルとして保存されている法的文書を使用して、関連する前例を要約し、契約書の特定の文言を特定します。
セマンティック商品検索 e コマース企業は、正確なキーワードではなく自然言語の説明を使用して商品検索を容易にしたいと考えています。 Cloud Run で検索インターフェースをホストします。Vertex AI は、ユーザーの説明を処理して、Cloud SQL にベクトルとして保存されている商品カタログから、意味的に最も関連性の高い商品を返します。

アーキテクチャ

次の図は、アプリケーションのコンポーネントと接続を示しています。

デザイン キャンバスの生成 AI RAG アプリケーション。このアプリケーションには、フロントエンド、取得、AI、シークレット管理、データベースのコンポーネントが含まれています。

アプリケーションのリクエスト処理フローは次のとおりです。

  1. Cloud SQL の PostgreSQL データベースにデータを読み込みます。
  2. Vertex AI は、テキスト フィールドのエンベディングを作成し、データベースにベクトルとして保存します。
  3. Cloud Load Balancing フロントエンドは、外部リクエストを受信し、Cloud Load Balancing バックエンドにトラフィックを分散します。
  4. Cloud Load Balancing バックエンドは、トラフィックを Cloud Run フロントエンド サービスに分散します。
  5. フロントエンド サービスは、生成 AI を呼び出すために検索サービスと通信します。
  6. 取得サービスは、Secret Manager を使用して、Vertex AI と Cloud SQL へのアクセスに必要な API キーと認証情報に安全にアクセスします。
  7. 取得サービスはリクエストをエンベディングに変換し、Cloud SQL データベースで類似するベクトルを検索します。
  8. 検索サービスは、検索結果と元のプロンプトを Vertex AI に送信して、レスポンスを作成します。

次のステップ