はじめに
七尾百合子さん、お誕生日 129日目 おめでとうございます! nikkieです。
Gemini CLI Meetupに参加してきました1。
それをきっかけに、Vertex AI を使うように Gemini CLI を設定して使える状態にしました。
目次
将来のGeminiの訓練に使われない設定でGemini CLIを使いたい
※Gemini CLIはインストール済み(=gemini
コマンドがPATH
にある)を前提にします
Gemini CLI(やGemini)が無料で使えるのは、Googleに訓練データを渡すのと引き換えと理解しています。
すでにClaude Codeを訓練データを渡さない設定で使っていたので、Gemini CLIでも同様の設定をしました。
(Gemini CLIをすぐには使い出せなかったのには、「無料で使える!」が推されすぎていて、この方法を見つけるのに時間がかかったというのもあります)
Vertex AIの従量課金を選びました(スライド5に比較表)
Authentication Setupのドキュメントより (3. Vertex AI)
私は Application Default Credentials (ADC) を使う方法にしています。
gcloud auth application-default login
- 2つの環境変数をセット
GOOGLE_CLOUD_PROJECT
GOOGLE_CLOUD_LOCATION
1は毎回やる必要はないのですが、2でコマンドが長くなる(GOOGLE_GENAI_USE_VERTEXAI=true GOOGLE_CLOUD_PROJECT=... GOOGLE_CLOUD_LOCATION=us-central1 gemini
)ため、工夫してみました
PATH
にスクリプトを置く
工夫を考える中で『マスタリングLinuxシェルスクリプト 第2版』(1.6)を思い出しました。
PATH
に以下のスクリプトをvgemini
として置きます。
(私よりシェルスクリプトに詳しい o3-pro に教えてもらっています)
#!/usr/bin/env bash set -euo pipefail export GOOGLE_GENAI_USE_VERTEXAI=true export GOOGLE_CLOUD_PROJECT=... export GOOGLE_CLOUD_LOCATION=us-central1 exec gemini "$@"
これでvgemini
だけで、Vertex AIを使う設定のGemini CLIが起動します。
$@
を渡しているので、vgemini --version
やvgemini -p こんにちは
もサポートします
その他のやり方
私はスクリプトのやり方を試してみたかったので選びましたが、Authentication Setupのドキュメントには他にも方法が載っています。
(1) シェルの設定ファイルで環境変数を設定
like
~/.bashrc
,~/.zshrc
, or~/.profile
(2) .env
ファイルを配置
Persisting Environment Variables with .env Files
Gemini CLI automatically loads environment variables from the first .env file it finds, using the following search order:
案としては、グローバルの~/.gemini/.env
。
ただし、まずカレントディレクトリから/
の方へ最初に.env
が見つかるまで設定を読むそうなので、グローバルの設定が読まれなくなることもありそうですね(かといってプロジェクトごとに置くのも煩雑です)
(3) ADCの代わりにAPIキー
Vertex AIはAPIキーを使って認証することもできます。
ただこの方法でもAPIキーを環境変数GOOGLE_API_KEY
に指定する必要があります。
私がやるならop run
と一緒に2かな
すこーしソースコードリーディング
DeepWikiの助けを借りながら、Vertex AIを使うときにどんな処理をしているのか覗きました。
https://github.com/google-gemini/gemini-cli/blob/v0.1.13/packages/cli/src/config/auth.ts#L26-L38
When using Vertex AI, you must specify either:
• GOOGLE_CLOUD_PROJECT and GOOGLE_CLOUD_LOCATION environment variables.
• GOOGLE_API_KEY environment variable (if using express mode).
Update your environment and try again (no reload needed if using .env)!
終わりに
Gemini CLIをVertex AIの従量課金で使うための設定方法の備忘録でした。
Gemini CLIは環境変数を見ますが、その設定方法に工夫の余地があります。
Meetupでは発表を聞きつつ、「この機を逃したらGemini CLIを触る機会がない!」と方法を調べてもいました。
その際に参考になったのはこちらの記事です。
できた後にGemini CLIのドキュメントに当たったことで、設定方法の理解が深まりました〜
ありがとうございました〜 #AI駆動開発 #geminiclimeetup
— nikkie(にっきー) / にっP (@ftnext) 2025年7月22日
Claude Codeばっかりの身でしたが、皆さんの発表を聞きながらGemini CLIも起動できました!
これがオープンソースなの、すごいですね