Cloud Run で AI エージェントをホストする

このページでは、Cloud Run で AI エージェントをホストするユースケースについて説明します。

AI エージェントは、LLM を搭載したシステムを使用して、目標を達成するために認識、決定、行動を行う自律型ソフトウェア エンティティです。自律型エージェントの構築が進むにつれて、エージェント間のコミュニケーションとコラボレーションの能力が重要になります。

AI エージェントの概要については、AI エージェントとはをご覧ください。

Cloud Run で AI エージェントをホストする

AI エージェントを Cloud Run サービスとして実装すると、一連の非同期タスクをオーケストレートし、複数のリクエスト / レスポンス インタラクションを通じて情報を提供できます。

Cloud Run サービスは、アプリケーションのコアロジック用のスケーラブルな API エンドポイントです。インスタンスの自動オンデマンド高速スケーリングにより、複数のユーザーを同時に効率的に管理します。

Cloud Run 上の AI エージェント アーキテクチャ

Cloud Run にデプロイされる一般的な AI エージェント アーキテクチャには、 Google Cloud のコンポーネントだけでなく、 Google Cloudの外部にあるコンポーネントが含まれる場合があります。

Cloud Run でホストされている AI エージェントの 4 つのコンポーネント。
図 1. Cloud Run 上の AI エージェントのアーキテクチャ。

この図は次のことを示しています。

  • ホスティング プラットフォーム: Cloud Run は、エージェントを実行するためのホスティング プラットフォームであり、次のようなメリットがあります。

    • 任意のエージェント フレームワークを実行して、さまざまなタイプのエージェントとエージェント アーキテクチャを構築できます。エージェント フレームワークの例としては、Agent Development Kit(ADK)LangGraph などがあります。
    • エージェントを管理するための組み込み機能を提供します。たとえば、Cloud Run には、安全で自動的な認証情報を使用して Google Cloud API を呼び出すためのエージェント ID として使用できる組み込みのサービス ID が用意されています。
    • エージェント フレームワークを他のサービスに接続することをサポートします。エージェントを Cloud Run にデプロイされたファーストパーティまたはサードパーティのツールに接続できます。たとえば、エージェントのタスクと実行を可視化するには、LangfuseArize などのツールをデプロイして使用します。
  • エージェントのインタラクション: Cloud Run は、ユーザーへの HTTP レスポンスのストリーミングと、リアルタイム インタラクション用の WebSockets をサポートしています。

  • 生成 AI モデル: オーケストレーション レイヤは、推論機能のモデルを呼び出します。 次のモデルを使用できます。

  • メモリ: エージェントは、コンテキストを保持し、過去のやり取りから学習するためにメモリを必要とすることがよくあります。 次のサービスを使用できます。

  • ベクトル データベース: 検索拡張生成(RAG)または構造化データの取得には、ベクトル データベースを使用して特定のエンティティ情報をクエリするか、エンベディングに対してベクトル検索を実行します。次のサービスで pgvector 拡張機能を使用します。

  • ツール: オーケストレーターは、外部サービス、API、ウェブサイトを操作するために特定のタスクを実行するツールを使用します。これには次のものが含まれます。

    • MCP サーバーを使用する: MCP サーバーを介して実行される外部または内部のツール。
    • 基本的なユーティリティ: 正確な算術演算、時刻の換算、その他の同様のユーティリティ。
    • API 呼び出し: 他の内部 API またはサードパーティ API(読み取りまたは書き込みアクセス)を呼び出します。
    • 画像やグラフの生成: ビジュアル コンテンツを迅速かつ効率的に作成します。
    • ブラウザと OS の自動化: コンテナ インスタンス内でヘッドレスまたは完全なグラフィカル オペレーティング システムを実行し、エージェントがウェブをブラウジングしたり、ウェブサイトから情報を抽出したり、クリックやキーボード入力を使用してアクションを実行できるようにします。
    • コードの実行: 多層サンドボックス化による安全な環境で、IAM 権限を最小限に抑えてコードを実行します。

次のステップ