Gemini API 接続の最短ルートは、Google アカウントで AI Studio を開き、API Key を作成し、SDK をインストールして、最初の generateContent リクエストを送ることです。順調なら所要時間は 20 分以内です。実際につまずきやすいのは「呼び出せるかどうか」ではなく、入口の選び間違い、モデル ID の誤記、無料枠と有料枠の混同、そして Key を置くべきでない場所に置いてしまうことです。
本記事は実際の接続順に沿って説明します。まず AI Studio と Vertex AI を区別し、次に Key の作成、SDK のインストール、curl と Python のリクエスト、モデル命名、システム指示、ストリーミング、安全設定を扱い、最後に 400、403、429 のよくある原因と Key セキュリティのチェックリストをまとめます。
注記:Google、Gemini は Google LLC の商標です。モデル名、無料枠、課金ルールは変更される可能性があります。本記事は 2026 年 10 月時点の一般的な手順を例にしており、詳細は Google 公式ドキュメントおよびサイト内のモデル価格ページを基準にしてください。
一、まず AI Studio と Vertex AI を区別する
Gemini API にはよく使われる 2 つの入口があり、アカウント体系と管理方法が異なります。選び間違えると権限や精算で手戻りが発生します。
| 比較項目 | Google AI Studio | Vertex AI |
|---|---|---|
| 入口 | ブラウザコンソール。開発者が素早く試用するためのもの | Google Cloud コンソール。プロジェクト単位の利用向け |
| アカウント要件 | Google アカウントだけで開始可能 | Cloud プロジェクト、請求先アカウント、IAM 権限 |
| 資格情報 | AI Studio が生成する API Key | サービスアカウントまたは管理された Key と IAM |
| 課金 | 無料枠と有料枠が併存 | Cloud プロジェクト単位で精算 |
| リージョンとデータ | AI Studio の規約による | リージョンを選択可能。Cloud の規約とプロジェクト設定に従う |
| 向いている場面 | プロトタイプ、学習、小規模検証 | 本番システム、監査や権限要件が厳しいチーム |
個人開発者や小規模チームは、通常まず AI Studio で流れを通します。契約、データリージョン、統一監査が必要になった段階で Vertex AI を検討します。両者の Key、クォータ、請求を混用したり、AI Studio の Key で Vertex AI のインターフェースを呼び出したりしないでください。
二、最初の API Key を作成する
- Google アカウントで Google AI Studio にログインします。
- API Key 管理ページに移動し、API Key の作成を選択します。
- Google Cloud プロジェクトを選択します。プロジェクトがない場合は画面の案内に従って新規作成します。
- 生成された Key をコピーし、すぐにサーバー側の環境変数またはパスワードマネージャーへ保存します。
- Playground でテストメッセージを送り、Key とモデルが利用可能か確認します。
- 後からローテーションや失効を行いやすいよう、用途が分かる名前を Key に付けます。
AI Studio は試用向けの無料枠を提供しています。利用可能なモデル、リクエストレート、割当量はアカウントや時期によって変わります。関連する Cloud プロジェクトで請求を有効にすると有料枠に移行できます。古い記事の割当数字を現在の約束事として扱わず、すべてコンソールの実際の表示と公式説明を基準にしてください。
Key を作成したら、まずどの Cloud プロジェクトに属するかを確認します。割当は通常プロジェクト単位で計算されるため、テストと本番を混用すると他の人が割当を使い果たす可能性があります。より高いクォータが必要な場合は、Cloud プロジェクトで請求を有効にし、予算アラートを設定してから、実際の使用量を 1 週間観察してください。
三、SDK をインストールし、最初のリクエストを送る
Python 環境は 3.10 以上を推奨し、仮想環境に公式 SDK をインストールします。
python3 -m venv .venv
source .venv/bin/activate
pip install -U google-genai
export GEMINI_API_KEY="あなたの Key"
まず curl で SDK の要因を排除します。モデル ID はプレースホルダーで置き換え、実際の名称はモデル一覧またはサイト内の料金ページから取得してください。
curl "https://generativelanguage.googleapis.com/v1beta/models/<モデルID>:generateContent" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"contents": [
{"role": "user", "parts": [{"text": "API ゲートウェイとは何かを一文で説明してください"}]}
],
"generationConfig": {"maxOutputTokens": 256, "temperature": 0.7}
}'
curl が 200 を返したら、Python SDK に切り替えます。
import os
from google import genai
client = genai.Client(api_key=os.environ["GEMINI_API_KEY"])
resp = client.models.generate_content(
model="<モデルID>",
contents="API ゲートウェイとは何かを一文で説明してください",
)
print(resp.text)
model には完全なモデル ID を書き、シリーズ名だけにしないでください。モデルによって対応する入力種別やパラメータが異なり、誤記は 400 または 404 として現れます。
四、モデル命名、システム指示、生成パラメータ
Gemini のモデル ID は通常、シリーズとバージョンで構成されます。最も確実な方法は、現在のアカウントで利用可能なモデル一覧を先に取得することです。
curl "https://generativelanguage.googleapis.com/v1beta/models" \
-H "x-goog-api-key: $GEMINI_API_KEY"
一覧にないモデルを推測で使わないでください。選定時はタスクごとに役割を分けます。軽量なタスクには低遅延の階層、複雑な推論や長い文書には上位の階層を使います。具体的な階層と価格はモデル価格ページを基準にしてください。
モデル ID はバージョンとともに更新され、古い ID は非推奨または提供終了になる場合があります。モデル名は設定ファイルに書き、各所のコードに散らばめないでください。アップグレード時は 1 か所だけ変更し、回帰サンプルで出力に大きな変化がないか確認します。
システム指示は役割と出力ルールを固定するために使い、翻訳、抽出、カスタマーサポートなどの場面に適しています。
resp = client.models.generate_content(
model="<モデルID>",
contents="この文を英語に翻訳してください:接続完了",
config={"system_instruction": "あなたは技術文書の翻訳者です。訳文だけを出力してください。"},
)
よく使う生成パラメータには temperature、maxOutputTokens、topP があります。構造化された結果が必要な場合は、モデルに JSON を返させ、コード側で解析と検証を行います。モデルが必ず形式を守るとは仮定せず、失敗時のリトライとフォールバック処理を事前に用意してください。
五、ストリーミング出力と安全設定
ストリーミング出力はチャット画面や長い回答に適しています。REST インターフェースではメソッドの後に :streamGenerateContent を付け、alt=sse を指定します。Python SDK では generate_content_stream を使います。
for chunk in client.models.generate_content_stream(
model="<モデルID>",
contents="レート制限とは何かを三つのポイントで説明してください",
):
print(chunk.text, end="")
安全設定ではカテゴリごとにブロックのしきい値を調整できます。よくあるカテゴリは、嫌がらせ、ヘイト、性的表現、危険な内容です。既定のしきい値は多くの業務に適しています。しきい値を下げるとコンテンツの範囲が広がるため、製品ポリシーと現地の法規制を踏まえて評価してください。「テストを通すため」に安全設定を全体で無効にしないでください。特に一般公開する製品では避けてください。
六、400、403、429 の切り分け
| ステータスコード | よくある原因 | 対処の方向 |
|---|---|---|
| 400 | JSON 構造の誤り、未対応パラメータ、モデル ID とインターフェースの不一致 | リクエスト本文を項目ごとに確認し、まず最小リクエストを使う |
| 403 | Key が無効または制限付き、API が未有効、プロジェクトや地域の制限 | Key を替えて検証し、プロジェクト権限とアカウント状態を確認する |
| 404 | モデル ID の誤記、インターフェースのバージョンやパスが誤り | モデル一覧を確認し、v1beta とメソッド名を確かめる |
| 429 | 無料枠の使い切り、毎分リクエスト過多、同時実行過多 | 指数バックオフで再試行し、同時実行を下げ、有料枠を検討する |
| 500/503 | サーバー側の一時障害 | 回数を限定して再試行し、継続する場合はフォールバックや経路切り替えを行う |
429 で即座に再送しないでください。正しい方法は、バックオフにランダムなジッターを加え、最大リトライ回数を設定し、失敗したリクエストをログに記録することです。無料枠のレート制限は通常より厳しいため、負荷テストやバッチ処理は別途計画してください。
七、Key セキュリティのチェックリスト
- Key はサーバー側の環境変数またはシークレット管理サービスにのみ置き、フロントエンド、リポジトリ、チャット履歴に入れない。
- 本番、テスト、開発でそれぞれ別の Key を使い、環境ごとに割当と権限を分離する。
- 定期的にローテーションし、退職やプロジェクト終了時には即座に失効させる。
- クラウドコンソールで Key が呼び出せる API を制限し、漏洩時の影響範囲を狭める。
- 使用量アラートを有効にし、異常な呼び出しを検知したらまず Key を停止してから調査する。
- スクリーンショット、画面録画、チケットに完全な Key を表示しない。
八、OpenAI 互換入口から Gemini を使う
チームに既に OpenAI SDK と一連の呼び出しコードがある場合は、ZSQH AI Gateway の OpenAI 互換入口を利用できます。Base URL は https://ai.zhongshangqihang.com/v1 で、base_url、api_key、model の 3 か所だけ変更します。
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["ZSQH_API_KEY"],
base_url="https://ai.zhongshangqihang.com/v1",
)
resp = client.chat.completions.create(
model="<料金ページ上の Gemini モデル名>",
messages=[{"role": "user", "content": "OK とだけ返してください"}],
)
print(resp.choices[0].message.content)
この方法は、複数モデルの請求統一、人民元決済、国内ネットワーク環境が必要なチームに適しています。ネイティブ Gemini のパラメータやマルチモーダル項目が完全に互換であるとは限らないため、移行前に実際のリクエストで項目ごとに検証してください。登録入口はこちらです。モデルと価格はモデル価格ページを基準にしてください。
よくある質問
Gemini API に無料枠はありますか?
AI Studio は無料枠を提供していますが、利用可能なモデル、レート、割当量は変動し、データ規約が有料枠と異なる場合があります。プロトタイプ検証には無料枠を使えますが、正式な業務では有料枠でクォータとコストを再評価することを推奨します。
API Key が漏洩したらどうすればよいですか?
まずコンソールで Key を失効またはローテーションし、次に使用量ログで異常な呼び出しの範囲を確認し、最後に漏洩経路を調査します。コードから Key を削除するだけでは不十分です。漏洩した資格情報は失効済みとして扱ってください。
国内ネットワークから Gemini API を直接呼び出せますか?
経路の品質は地域や通信事業者によって異なり、タイムアウトや接続失敗が起きる場合があります。一般的な方法は、安定してアクセスできるサーバーにリクエストを置くか、OpenAI 互換インターフェースを提供するゲートウェイを使うことです。具体的な制限は実際の経路と公式説明を基準にしてください。
curl は通るのに Python SDK でエラーになるのはなぜですか?
まず SDK のバージョンと依存関係が最新か確認し、次に model の書き方、プロキシ設定、環境変数が一致しているか確認します。SDK が 404 を返す場合は、モデル ID とインターフェースパスを重点的に確認し、複数の変数を同時に変更しないでください。
Gemini API は OpenAI SDK で直接呼び出せますか?
Google は OpenAI 互換入口を提供しており、国内のゲートウェイも互換レイヤーを提供することが一般的です。ただし対応するパラメータの範囲は異なります。マルチモーダル、ツール呼び出し、構造化出力は実際のリクエストで検証し、完全に等価だと仮定しないでください。
次のステップ
まず本記事の手順で最小リクエストを通し、その後で業務ログ、リトライ、使用量監視を接続します。1 つの管理画面で Gemini と他モデルの呼び出し量、人民元の請求、Key 権限を管理したい場合は、ZSQH AI Gateway への登録から始めてください。価格はモデル価格を参照してください。
関連記事:
