Google Vertex AI
目次
Hermes Agent は、Vertex の OpenAI 互換エンドポイント経由で Google Cloud Vertex AI 上の Gemini モデルに対応しています。Google AI Studio のプロバイダー(generativelanguage.googleapis.com に対して固定の API キーを使うもの)と違い、Vertex では企業向けのレート上限と GCP の請求・クレジットが使えます。Gemini の利用分を AI Studio のキーではなく Google Cloud のアカウント側で扱いたいときは、こちらが適しています。
事前に必要なもの
- Google Cloud プロジェクト — Vertex AI API が有効で、請求が有効になっているもの。
- 認証情報 — 次のどちらか。
roles/aiplatform.userロールを持つサービスアカウントの JSON キーファイル、またはgcloud auth application-default loginで用意するアプリケーションのデフォルト認証情報(GCP の VM 上で動かす場合はメタデータサーバーでも構いません)。
google-auth— Vertex を初めて選んだときに自動で入ります(遅延インストール)。うまくいかない場合はhermes setupを実行して、管理されたインストールを修復してください。
すぐ使い始める
# Option A — service account JSON (recommended for servers / gateways)
echo "VERTEX_CREDENTIALS_PATH=/path/to/service-account.json" >> ~/.hermes/.env
# Option B — Application Default Credentials (good for local dev)
gcloud auth application-default login
# Select Vertex as your provider
hermes model
# → Choose "More providers..." → "Google Vertex AI"
# → Enter your GCP project ID (or leave blank to use the one in your credentials)
# → Choose a region (default: global)
# → Select a Gemini model
# Start chatting
hermes chat設定
Vertex の設定は、秘密にすべきかどうかで置き場所が分かれます。
- 認証情報のパスは秘密情報を指すものなので、
~/.hermes/.envに置きます。 - プロジェクト ID とリージョンは秘密ではない経路の設定なので、
~/.hermes/config.yamlに置きます。
~/.hermes/.env:
# One of these (checked in this order); omit both to use ADC:
VERTEX_CREDENTIALS_PATH=/path/to/service-account.json
GOOGLE_APPLICATION_CREDENTIALS=/path/to/service-account.json~/.hermes/config.yaml:
model:
default: google/gemini-3-flash-preview
provider: vertex
vertex:
project_id: my-gcp-project # blank → use the project embedded in the credentials
region: global # "global" is required for the Gemini 3.x previews認証のしくみ
- Hermes は認証情報を
VERTEX_CREDENTIALS_PATH→GOOGLE_APPLICATION_CREDENTIALS→ ADC の順に探します。 - OAuth2 のアクセストークン(
cloud-platformスコープ)を発行してキャッシュし、期限まで 5 分を切ると更新します。 - トークンは、Vertex のエンドポイントを指した標準の OpenAI クライアントに渡されます。
https://aiplatform.googleapis.com/v1beta1/projects/{project}/locations/{region}/endpoints/openapi リージョン指定の場合は、代わりに {region}-aiplatform.googleapis.com のホストを使います。
- 会話がトークンの寿命より長く続き、リクエストが
401を返した場合は、Hermes がトークンを発行し直して自動で再試行します。長く動き続けるゲートウェイで ADC の更新トークン自体が期限切れになったときは、サービスアカウントの JSON が設定されていればそちらへ切り替えます。
使えるモデル
Vertex ではモデル ID に google/ というベンダー接頭辞が必要です。hermes model のピッカーには次のものが並びます。
| モデル | ID |
|---|---|
| Gemini 3.1 Pro Preview | google/gemini-3.1-pro-preview |
| Gemini 3 Pro Preview | google/gemini-3-pro-preview |
| Gemini 3 Flash Preview | google/gemini-3-flash-preview |
| Gemini 3.1 Flash Lite Preview | google/gemini-3.1-flash-lite-preview |
| Gemini 2.5 Pro | google/gemini-2.5-pro |
| Gemini 2.5 Flash | google/gemini-2.5-flash |
会話の途中でモデルを切り替える
/model google/gemini-3-pro-preview
/model google/gemini-3-flash-preview/model は、すでに設定済みのプロバイダーとモデルの間で切り替えるものです。新しい認証情報を聞いてはくれません。先に hermes model で Vertex を設定しておいてください。
推論・思考
Vertex は Gemini の思考予算を OpenAI 互換の形で公開しています。Hermes は推論の強さの設定を extra_body.google.thinking_config へ自動的に対応づけるので、reasoning_effort はほかの Gemini 系と同じように働きます。
診断
hermes doctordoctor は、Vertex の認証情報(サービスアカウントのパスまたは ADC)を解決できるかどうかと、プロバイダーが設定済みかどうかを報告します。
うまくいかないとき
「Vertex AI credentials could not be resolved」と出る
サービスアカウントの JSON も、動作する ADC も見つからなかった状態です。~/.hermes/.env に VERTEX_CREDENTIALS_PATH を設定するか、gcloud auth application-default login を実行してください。認証情報にプロジェクトが埋め込まれていない場合は、config.yaml に vertex.project_id を設定します。
google-auth が入っていない
Vertex プロバイダーを初めて選んだときに、Hermes が遅延インストールします。それが失敗した場合は hermes setup を実行して、管理されたインストールを修復してください。
Gemini 3.x のモデルで 404 になる
おそらくリージョン指定のエンドポイントを使っています。config.yaml の vertex: の節で region: global を設定するか、VERTEX_REGION を解除してください。
403 や権限エラーになる
サービスアカウント(または ADC の ID)に、そのプロジェクトでの roles/aiplatform.user ロールが必要です。あわせて、そのプロジェクトで Vertex AI API が有効になっている必要があります。
関連ページ
- Google Gemini(AI Studio) — GCP なしで固定の API キーを使う Gemini
- AWS Bedrock — もう一つのクラウドプロバイダーとのネイティブ連携
- AI プロバイダー
- 設定