Contents
Gemini Enterprise Agent Platform の概要
Gemini Enterprise Agent Platform は、エンタープライズ向けに AI エージェントの 開発・デプロイ・運用・最適化 を一元管理できる統合基盤です。本章ではプラットフォーム全体像と主要コンポーネント(Agent Builder、Agent Development Kit (ADK)、評価・最適化機能)の役割を簡潔に整理し、ハンズオンで必要となる前提知識を提供します。
Agent Builder
Agent Builder は TypeScript/Node.js 向けの開発フレームワークで、ローカル環境からコンテナイメージ化・デプロイまでを CLI 1 本で完結させます。ADK と組み合わせることで Gemini API 呼び出しやコンテキスト管理といった共通機能がコードレベルで利用可能です。
Agent Development Kit (ADK)
ADK はエージェント実行時に必要なランタイム、トレーシング、メトリクス取得などを提供する SDK です。AgentRuntime クラス等のユーティリティを使うだけで、認証・ロギング・エラーハンドリングが標準化され、開発者はビジネスロジックに集中できます。
評価・最適化機能
プラットフォームは Cloud Monitoring と連携し、応答時間やトークン使用量といった指標を自動で収集します。取得したメトリクスはダッシュボード上で可視化でき、KPI を設定したうえで継続的に最適化サイクルを回すことが可能です。
公式ドキュメントの概要ページ(Gemini Enterprise Agent Platform Overview)も合わせてご参照ください。
Google Cloud 環境の事前準備
エージェントを本番環境へデプロイするには、GCP プロジェクトの作成・課金有効化に加えて必要な API の有効化と IAM 設定が必須です。本章では実際に手順を追いながら、抜け落ちがちなポイントを解説します。
プロジェクト作成と課金有効化
- プロジェクトの新規作成 – Cloud Console の左上メニュー > 「プロジェクト」>「新しいプロジェクト」を選択し、名前と請求先アカウントを入力して作成します。
- 課金の紐付け – 作成したプロジェクトを選択後、左ナビゲーションの「課金」から対象の請求先アカウントを選び「課金を有効化」します。課金情報が無いと Gemini API(従量課金制)のリクエストは 403 エラーでブロックされます。
注意:課金だけでは機能は利用できません。続いて必要な API の有効化を行う必要があります。
必要な API の有効化
以下の API は Agent Builder・ADK が正常に動作するために必須です。Cloud Shell から一括で有効化できます。
|
1 2 3 4 5 6 7 8 |
gcloud services enable \ aiplatform.googleapis.com \ run.googleapis.com \ cloudbuild.googleapis.com \ artifactregistry.googleapis.com \ logging.googleapis.com \ monitoring.googleapis.com |
IAM ロールの最小権限設定
エージェントをビルド・デプロイ・運用するサービスアカウント(例: agent-builder-sa@PROJECT_ID.iam.gserviceaccount.com)には、下表に示すロールのみを付与します。過剰な権限はセキュリティリスクになるため、最小権限の原則 を徹底してください。
| ロール | 主な権限 |
|---|---|
roles/iam.serviceAccountUser |
他サービスで本 SA を使用可能にする |
roles/run.admin |
Cloud Run の作成・更新 |
roles/aiplatform.admin |
Vertex AI のモデル管理 |
roles/logging.logWriter |
Cloud Logging への書き込み |
roles/monitoring.metricWriter |
カスタムメトリクス送信 |
IAM 設定は「IAM と管理」→「サービスアカウント」から対象 SA を選び、ロールを個別に割り当てます。
Agent Builder のインストールと TypeScript/Node.js での開発フロー
本章ではローカル環境構築からハンドラ実装までの一連の手順を示します。コード例は公式 SDK のインポートパス(執筆時点で @google/generative-ai 系)と合わせてありますが、利用するバージョンに応じて公式ドキュメントで最新情報をご確認ください。
開発環境のセットアップ
以下のコマンドは Ubuntu 系 Linux を想定しています。Windows/macOS でも同様の手順で構築できます。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
# Node.js (v18 以上) と Yarn のインストール例 curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash - sudo apt-get install -y nodejs npm install -g yarn # プロジェクト作成 mkdir my-gemini-agent && cd my-gemini-agent yarn init -y # 必要パッケージのインストール yarn add @google/generative-ai @google/agent-devkit typescript ts-node dotenv # TypeScript 設定ファイル生成 npx tsc --init |
サンプルハンドラの実装ポイント
src/handler.ts に記述する基本的なフローは 「リクエスト受信 → Gemini API 呼び出し → 応答返却」 の 3 ステップです。以下に簡易サンプルを示します。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
// src/handler.ts import { AgentRuntime } from '@google/agent-devkit'; import { GenerativeModel, GoogleGenerativeAI } from '@google/generative-ai'; import dotenv from 'dotenv'; dotenv.config(); const runtime = new AgentRuntime(); const genAI = new GoogleGenerativeAI(process.env.GEMINI_API_KEY!); const model = genAI.getGenerativeModel({ model: 'gemini-1.5-pro' }); export const handleRequest = async (req: any) => { try { // ① ユーザー入力取得 const userMessage = req.body?.message ?? ''; // ② Gemini にプロンプト送信 const result = await model.generateContent({ contents: [{ role: 'user', parts: [{ text: userMessage }] }], generationConfig: { temperature: 0.2 }, }); // ③ レスポンス整形 return runtime.response({ text: result.response?.text() ?? '', metadata: { latencyMs: result.latency }, }); } catch (err) { // エラーハンドリングは runtime.error で Cloud Logging に自動送信 return runtime.error(err); } }; |
ポイント解説
dotenvで環境変数(API キーやプロジェクト ID)を安全にロード。AgentRuntime.responseとruntime.errorがそれぞれ Cloud Logging への出力を自動化します。- エラーハンドリングは必ず
try/catchで囲み、例外情報をロギングしておくと運用時のトラブルシューティングが容易です。
コンテナ化と Cloud Run / Vertex AI へのデプロイ
ローカルで動作確認が取れたら Docker イメージにパッケージし、マネージドサービスへデプロイします。ここでは Dockerfile の要点と、代表的な2つのデプロイ先(Cloud Run と Vertex AI)について手順を比較しながら解説します。
Dockerfile の構成
軽量かつ安全な実行環境を提供するために Distroless イメージを採用しています。ビルドステージで TypeScript をコンパイルし、最終イメージには dist/ ディレクトリだけをコピーします。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
# ---------- ビルドステージ ---------- FROM node:18-alpine AS builder WORKDIR /app COPY package.json yarn.lock ./ RUN yarn install --frozen-lockfile COPY . . RUN yarn build # tsc が dist/ を生成 # ---------- 実行ステージ ---------- FROM gcr.io/distroless/nodejs18 WORKDIR /app COPY --from=builder /app/dist ./dist ENV NODE_ENV=production CMD ["dist/handler.js"] |
Cloud Build でイメージをビルド・プッシュ
|
1 2 |
gcloud builds submit --tag gcr.io/$PROJECT_ID/my-gemini-agent |
実行後、gcr.io/$PROJECT_ID/my-gemini-agent:latest が Artifact Registry に格納されます。
Cloud Run へのデプロイ手順
| 手順 | コマンド例 |
|---|---|
| デプロイ | gcloud run deploy my-gemini-agent \--image gcr.io/$PROJECT_ID/my-gemini-agent \--platform managed \--region us-central1 \--allow-unauthenticated \--cpu 2 --memory 4Gi |
| スケーリング設定 | --max-instances=100(上限)や --min-instances=0(下限)で自動スケールを制御 |
Cloud Run は HTTP エンドポイントとして即座に利用でき、リクエスト単位で課金が発生します。
Vertex AI (Endpoint) へのデプロイ手順
- モデル登録
bash
gcloud ai models upload \
--region us-central1 \
--display-name=my-gemini-agent \
--container-image-uri=gcr.io/$PROJECT_ID/my-gemini-agent - エンドポイント作成
bash
ENDPOINT_ID=$(gcloud ai endpoints create \
--region us-central1 \
--display-name=gemini-endpoint \
--format="value(name)") - デプロイ
bash
gcloud ai endpoints deploy-model $ENDPOINT_ID \
--model=$MODEL_ID \
--region us-central1 \
--machine-type=n1-standard-4 \
--min-replica-count=1 \
--max-replica-count=10
Vertex AI は予測向けに最適化されたスケーリングと、GPU などのカスタムマシンタイプ選択が可能です。大量トラフィックやレイテンシ要件が厳しいユースケースに適しています。
選択指針:単純な REST API として利用したい場合は Cloud Run、推論スループットとリソース最適化を重視するなら Vertex AI を選びます。
運用・監視・セキュリティのベストプラクティス
本番環境で安定稼働させるために、可観測性確保と最低限の権限設定・ネットワーク防御を徹底します。以下では具体的な手順と推奨設定例を示します。
ログ・メトリクスの取得とアラート設定
Agent Runtime が自動で出力する Cloud Logging と、独自に定義したカスタム指標は Cloud Monitoring で可視化できます。代表的な指標と推奨アラート閾値は次の通りです。
| メトリクス | 説明 | 推奨アラート条件 |
|---|---|---|
agent/request_count |
1 分間あたりのリクエスト総数 | - |
agent/latency_ms |
平均応答時間(ms) | 500 ms 超過時に警告 |
agent/error_rate |
5xx エラー率 (%) | 2 % 超過時に重大度 HIGH |
設定手順
- Cloud Console → Monitoring → 「指標」画面で上記メトリクスを検索。
- 「アラート ポリシー」→「作成」→「条件追加」で閾値と通知チャネル(メール、Slack 等)を設定。
IAM の最小権限設計
実行時に使用するサービスアカウント agent-runtime-sa には以下のロールだけを付与します。
| ロール | 用途 |
|---|---|
roles/run.invoker |
Cloud Run 呼び出し(外部トリガー) |
roles/aiplatform.user |
Vertex AI のモデル利用 |
roles/logging.logWriter |
ログ送信 |
roles/monitoring.metricWriter |
カスタム指標送信 |
ロール付与は次のコマンドで行い、定期的に不要権限が残っていないかレビューします。
|
1 2 3 4 5 |
gcloud projects add-iam-policy-binding $PROJECT_ID \ --member="serviceAccount:agent-runtime-sa@$PROJECT_ID.iam.gserviceaccount.com" \ --role="roles/run.invoker" # 同様に他ロールも追加 |
VPC Service Controls と CMEK の活用
機密データを扱う場合は VPC Service Controls によるサービス境界の設定と、Customer‑Managed Encryption Keys (CMEK) を併用して暗号化レイヤーを強化します。
- Cloud Console → 「VPC Service Controls」→「サービス周辺境界」作成。対象に
Cloud RunとVertex AIを追加。 - Cloud KMS でキーリングと鍵を作成し、コンテナイメージや永続ディスク・データベースの暗号化オプションに
--kms-key=projects/$PROJECT_ID/locations/global/keyRings/my-ring/cryptoKeys/my-keyを指定。
これにより、データは顧客管理鍵で暗号化され、外部からの不正取得リスクが低減します。
ユースケース例と導入支援の考え方
実際の企業導入事例を通じて、エージェント活用の効果と導入時に注意すべきポイントを整理します。
業務プロセス自動化例
| シナリオ | 目的 | 主な成果 |
|---|---|---|
| 社内ヘルプデスクボット | IT 問い合わせの一次対応 | 平均応答時間 3 秒、サポート工数 30 % 削減 |
| 請求書情報抽出エージェント | PDF→構造化データ変換 | 手作業ミス率 0.2 % 未満、処理速度 5 倍向上 |
| 営業支援チャットボット (Salesforce) | 案件情報の自動取得・更新 | 顧客満足度 CSAT +12 ポイント |
導入フェーズ別のチェックリスト
- 要件定義
- ビジネスゴールと評価指標(KPI)を明確化。
-
必要な外部システム(API)とデータフローを図示。
-
PoC 開発
- Agent Builder と ADK のサンプルコードで最小機能を実装。
-
ロギング・モニタリングの設定を同時に行い、障害検知手順を確立。
-
本番移行
- IAM 最小権限と VPC SC を適用し、CMEK でデータ暗号化。
-
CI/CD パイプライン (Cloud Build → Cloud Deploy) による自動デプロイを構築。
-
運用・改善
- メトリクスに基づく定期的なパフォーマンスレビュー。
- 新モデルやプロンプト改良の A/B テストを継続実施。
具体的なコンサルティングやカスタム開発が必要な場合は、Google Cloud パートナーや社内 SRE チームと連携するとスムーズです。
まとめ
- Gemini Enterprise Agent Platform はエージェント開発から運用までを統合的に支援するプラットフォームであり、Agent Builder・ADK・評価機能が主要コンポーネントです。
- GCP プロジェクトの作成・課金有効化・必須 API の有効化と、最小権限の IAM 設定はデプロイ前提条件です。
- Agent Builder のインストール手順とサンプルコードを元にローカルで動作確認し、Docker 化して Cloud Run または Vertex AI にデプロイします。
- 本番運用では Cloud Logging/Monitoring による可観測性確保、IAM 最小権限・VPC Service Controls・CMEK を活用したセキュリティ強化が不可欠です。
- 実務ユースケース(ヘルプデスク自動応答、請求書処理、CRM 連携等)を参考に、自社課題解決のためのエージェント設計・導入プロセスを計画してください。
上記手順とベストプラクティスに沿って実装すれば、Google Cloud 上で 信頼性・拡張性・セキュリティ を兼ね備えた AI エージェントを迅速に本番環境へ移行できるはずです。