CTS-KB

Vertex AI 移行ガイド(基本編)— AI Studio からエンタープライズ運用への橋渡し

⏱ 約 9 分で読めます
#Gemini #Vertex AI #GCP #エンタープライズ #Provisioned Throughput #IAM #移行

🎯 はじめに:本番ローンチの直前に通る道

本記事はシリーズ 「Gemini AI プラットフォーム活用」の第 5 回 です。これまで 課金構造モデル選定Batch APIPython 実装 を扱ってきました。今回は、**PoC で動いた AI Studio ベースのコードをそのままエンタープライズ運用に乗せるための Vertex AI 移行(基本編)**を扱います。

結論を先に: SDK レベルでは vertexai=True を加えるだけで移行できます。残りの 80% は GCP プロジェクト側の準備(IAM、VPC、監査、予算)。本記事はその「残り 80%」のチェックリストを整理します。

ただし Batch API だけは別物: Vertex AI の Batch API は AI Studio とは入出力経路が完全に異なり(Files API → GCS)、vertexai=True 1 行では移行できません。次回 Part 6: Vertex AI Batch API 編 で個別に扱います。

🔍 AI Studio vs Vertex AI 機能比較

項目Google AI Studio(Gemini Developer API)Vertex AI
対象ユーザー開発者・スタートアップ・PoCエンタープライズ・本番運用
料金無料枠あり、従量課金従量課金(若干高め)、PT 対応
認証APIキーIAM・サービスアカウント
セキュリティ基本的VPC-SC、Private Service Connect 対応
SLAなしあり(エンタープライズ向け)
MLOpsなしModel Registry、モニタリング、評価
マルチテナント困難IAM で柔軟に対応可能
コンプライアンス限定的SOC2、ISO、FedRAMP 対応
SDKgoogle-genai同じ SDK で切り替え可

💡 ポイントは最後の 「同じ SDK で切り替え可能」。Part 4 で書いた Python コードはほぼそのまま動きます。

🗺 Vertex AI のメニュー構成

初めて Vertex AI を開くとメニューが多すぎて迷子になります。Gemini を使う観点で重要なものに絞ると以下のとおり。

Vertex AI
├── ダッシュボード ........... 全体の概要
├── Model Garden ............ 利用可能なモデル一覧(Gemini / Claude / Llama 等)
├── Vertex AI Studio 🆕 ..... プロンプトのテスト(AI Studio 相当)
├── 生成 AI の評価 🆕 ........ モデル評価ツール

├── Agent Builder
│   ├── エージェントデザイナー ... AI エージェント構築
│   ├── Agent Garden ......... テンプレート
│   └── Agent Engine ......... 実行環境

├── ツール .................. Function Calling 等
├── RAG Engine .............. RAG 構築支援(マネージド)
├── Vertex AI Search ........ 検索機能
├── ベクトル検索 ............ ベクトル DB(旧 Matching Engine)

├── ノートブック
│   ├── Colab Enterprise .... マネージド Colab
│   └── Workbench ........... JupyterLab 環境

├── モデルの開発
│   ├── Feature Store ....... 特徴量管理
│   ├── データセット ......... トレーニングデータ管理
│   ├── トレーニング ......... モデル学習
│   └── テスト .............. モデル評価

└── デプロイと使用
    ├── Model Registry ...... モデルバージョン管理
    ├── エンドポイント ....... 推論 API
    ├── バッチ推論 ⭐ ........ 大量データ処理(50% オフ)
    └── モニタリング ......... 使用量・性能監視

最初に押さえるのは Model Garden / Vertex AI Studio / バッチ推論 / モニタリング の 4 つ。残りは段階的に学べば十分です。

🛠 SDK での切り替え:vertexai=True だけ

Part 4 で書いたクライアント初期化が、移行の唯一の差分です。

移行前(AI Studio / Gemini Developer API)

from google import genai

client = genai.Client(api_key=os.environ["GOOGLE_API_KEY"])

response = client.models.generate_content(
    model="gemini-2.5-flash",
    contents="こんにちは",
)

移行後(Vertex AI)

from google import genai

client = genai.Client(
    vertexai=True,                  # ← 追加
    project="your-gcp-project",     # ← GCP プロジェクト ID
    location="asia-northeast1",     # ← リージョン(東京)
)

response = client.models.generate_content(
    model="gemini-2.5-flash",
    contents="こんにちは",
)

差分は Client(...) の引数 3 つだけ。API 呼び出し以降は同じコードで動きます。これが Vertex AI 移行を「ほぼ無料リファクタリング」と言える根拠です。

認証方法の違い

項目AI StudioVertex AI
認証材料APIキー(文字列)サービスアカウントキー or ADC(推奨)
設定方法GOOGLE_API_KEY envgcloud auth application-default login or GOOGLE_APPLICATION_CREDENTIALS
粒度キー単位IAM ロール単位(細かく制御可)

開発者ローカルなら gcloud auth application-default login で済みますが、本番ワークロードでは Workload Identity Federation(WIF) を使ったキーレス認証が推奨です。WIF の詳細は SaaS セキュリティ — WIF キーレス認証編 を参照してください。

🪜 段階的な移行戦略

Phase 1: 開発・検証                           Phase 2: 本番リリース                Phase 3: マルチテナント拡大
─────────────────────────────────────────────────────────────────────────────────────────────────────────────►
    │                                              │                                       │
    │  AI Studio                                   │  Vertex AI(Standard PayGo)         │  Vertex AI + PT
    │  - APIキー                                   │  - vertexai=True                     │  - 専用スループット
    │  - 無料枠フル活用                            │  - IAM 認証(WIF 推奨)              │  - 月額固定コスト
    │  - Batch API で 50% オフ                     │  - VPC-SC / 監査ログ                 │  - SLA 保証
    │                                              │  - Cloud Monitoring                  │  - 最低 1 週間契約
    │                                              │                                       │
    └─ 個人 PoC、社内検証 ──────────────────────► └─ プロダクション ────────────────────► └─ 高スループット安定運用

Phase 1(PoC): AI Studio で十分

  • APIキーで即着手
  • Free Tier / Tier 1 のレート制限内で検証
  • Batch API でコストを抑えながらデータセット作成

Phase 2(本番): Vertex AI Standard PayGo

  • vertexai=True で SDK 設定変更
  • 認証を APIキー → IAM(WIF)に切替
  • VPC-SC、Cloud Monitoring、予算アラートを整備
  • Cloud Logging で監査ログ取得

Phase 3(拡大): Vertex AI + Provisioned Throughput

  • マルチテナントで安定スループットが必要になったら検討
  • 月額固定コストでレイテンシも安定
  • 詳細は次節

💎 Provisioned Throughput(PT)とは

固定料金で専用スループットを確保する課金プラン。

項目Standard PayGoProvisioned Throughput
料金体系使った分だけ月額固定(GSU 単位)
スループット共有・変動あり専用・保証あり
レイテンシ変動あり安定
コスト予測困難確定
最低契約期間なし1 週間〜1 年
キャンセルいつでも契約期間中は不可

PT が向いているケース

  • ✅ マルチテナントで安定した応答速度が必要(顧客 SLA に縛られる)
  • 月額コストを固定したい(経理・予算管理上)
  • ✅ リアルタイムチャットボット・AI エージェントで常時負荷
  • ✅ 高スループットが常時必要(30,000 QPM 以上が目安)

PT が不要なケース

  • ❌ バッチ処理がメイン → **Batch API(50% オフ)**のほうが安い
  • ❌ トラフィックが不安定・予測困難
  • ❌ 開発・検証段階

PT vs Batch API の判断表

シナリオ推奨理由
リアルタイム API、安定スループット必須PT専用容量で SLA 保証
夜間バッチ、即時性不要Batch API50% オフで最安
トラフィック変動大Standard PayGo柔軟性重視、無駄が出ない
ハイブリッド(リアルタイム + バッチ)PT + Batch API用途別に使い分け

💡 「リアルタイム部分だけ PT を確保して、夜間バッチは Batch API に流す」というハイブリッド構成は、コスト最適化の最終形です。

✅ 移行チェックリスト

実プロジェクトの移行で漏らしやすい項目を、上から実施順に並べたチェックリストです。

GCP プロジェクトの準備

  • Vertex AI API の有効化gcloud services enable aiplatform.googleapis.com
  • サービスアカウントの作成(または既存利用)
  • IAM ロールの設定 — 最低限 roles/aiplatform.user、ログ書込に roles/logging.logWriter
  • WIF の設定(推奨)— サービスアカウントキーをコードに置かない

ネットワーク設定(必要に応じて)

  • VPC Service Controls — データ持ち出し境界の設定
  • Private Service Connect — Vertex AI を VPC 内から呼び出す
  • エグレス経路の確認 — 既存のプロキシ・NAT ゲートウェイとの整合

コード変更

  • vertexai=True の追加project / location も)
  • APIキー → IAM 認証の切替GOOGLE_API_KEY 依存を排除
  • モデル名の確認 — Vertex AI 側で同じモデル名が利用可能か
  • エラーハンドリングerrors.APIError の挙動を再テスト

モニタリング設定

  • Cloud Monitoring アラート — エラー率・レイテンシ・トークン消費
  • 予算アラート — 50% / 80% / 100% の通知設定(Part 1 参照)
  • 使用量ダッシュボード — Looker Studio 等で可視化
  • Cloud Logging — 監査ログ・リクエストログの保存先設計

コンプライアンス(必要に応じて)

  • データ所在地の確認location を国内リージョン(asia-northeast1)に固定
  • 顧客データの送信ポリシー — 個人情報の扱い、ログのマスキング
  • モデルレスポンスの保存ポリシー — どこに何日保管するか

💰 Vertex AI の料金(参考)

Vertex AI の Gemini API 呼び出し料金は、Gemini Developer API とほぼ同じです。差分は周辺機能。

項目料金
Gemini API 呼び出しDeveloper API とほぼ同じ
Batch 推論通常から 50% オフ(Developer API と同じ仕組み)
エンドポイント(アイドル時)ノード時間で課金(カスタムモデル時のみ)
ストレージ(GCS)標準 GCS 料金
Provisioned ThroughputGSU 単位の月額固定

💡 純粋に Gemini 呼び出しだけなら Vertex AI に乗せてもコストはほぼ変わらない。価値はセキュリティ・SLA・MLOps 側にあると割り切る。

🔮 シリーズの先:Vertex AI 各論へ

本シリーズは「AI Studio で動かす → Vertex AI で本番運用する」という基本動線をカバーする 5 回構成でした。Vertex AI 側の各論は今後、別記事として段階的に追加していく予定です。

  • 🔜 Vertex AI RAG Engine — マネージド RAG の構築実例
  • 🔜 Vertex AI Search — エンタープライズ検索基盤
  • 🔜 ベクトル検索(Matching Engine) — 大規模ベクトル DB の構築
  • 🔜 Provisioned Throughput の容量設計 — GSU 計算と契約戦略
  • 🔜 VPC-SC + Private Service Connect での閉域構成 — 金融・公共向け
  • 🔜 Workload Identity Federation × Vertex AI — キーレス認証のベストプラクティス

すでにシリーズ外で公開している関連記事もあわせてご覧ください。

✅ 第 5 回まとめ

  • Vertex AI 移行は vertexai=True を加えるだけで SDK レベルは完了(Batch API を除く
  • 残り 80% の作業は GCP プロジェクト側の整備(IAM、VPC、監査、予算、WIF)
  • 認証は APIキー → サービスアカウント / WIF に切替
  • Provisioned Throughput は「マルチテナント × 安定スループット必要」になったら検討
  • リアルタイムは PT、バッチは Batch API、変動は PayGo の 3 方式ハイブリッドがコスト最適形
  • Batch API だけは別物: Vertex AI 側は GCS 経路で実装が大きく異なる → 次回 Part 6 で詳説

次回 Vertex AI Batch API 編 では、AI Studio の Batch API(Files API 経路)と Vertex AI の Batch API(GCS 経路)の決定的な違いと、ハマりやすいポイント、実装テンプレートを扱います。

📚 シリーズ記事

#タイトル内容
1Google AI Studio 入門課金・APIキー・料金体系・無料枠・予算アラート
2モデル選定とマルチモーダル活用Flash / Pro / Flash-Lite、画像・動画・音声・PDF
3Batch API で 50% 安く使う非同期バッチ、JSONL、Flash-Lite × Batch(AI Studio 編)
4Python 実装ガイドテキスト・Embedding・Vision・モデル切替
5Vertex AI 移行ガイド(基本編)(本記事)エンタープライズ運用、Provisioned Throughput
6Vertex AI Batch API 編GCS 経路、AI Studio Batch との違い、二系統運用

🔗 関連リソース