Gemini
TL;DR
bash
ONGRID_GEMINI_API_KEY=...
ONGRID_GEMINI_MODEL=gemini-2.5-pro # default
ONGRID_GEMINI_BASE_URL= # defaults to generativelanguage.googleapis.com OAI modeProvider id:gemini。SDK アダプタ:Google の generativelanguage API 上の OpenAI 互換モード。
環境変数
| Var | デフォルト | 注記 |
|---|---|---|
ONGRID_GEMINI_API_KEY | — | 空 = プロバイダー除外 |
ONGRID_GEMINI_MODEL | gemini-2.5-pro | デフォルトモデル |
ONGRID_GEMINI_BASE_URL | https://generativelanguage.googleapis.com/v1beta/openai | OpenAI 互換エンドポイント |
ONGRID_GEMINI_MODELS | gemini-3.5-flash,gemini-2.5-pro,gemini-2.5-flash | カタログリスト |
デフォルトカタログ
gemini-3.5-flash—— フロンティア、速くて意外に安価。gemini-2.5-pro—— カタログデフォルト、バランス。gemini-2.5-flash—— 安価。
なぜ OAI 互換エンドポイントか
Gemini には 2 つの API 表面があります:
- Google ネイティブの
generativelanguage.googleapis.com/v1beta/—— OpenAI と異なるgenerateContent形。 .../v1beta/openai/の OpenAI 互換レイヤー —— OpenAI 形式のchat/completionsリクエストを受け、OpenAI 形式のレスポンスを返す。
Ongrid は #2 を使います。互換レイヤーのおかげで eino-openai アダプタが 変更なしで動き、ツール呼び出し / system メッセージ / ストリーミング すべてが他プロバイダーのスロットと同じ挙動になります。特殊処理なし。
OAI 互換表面が公開しない Gemini 専用機能(例:OAI 形が表現できない メディア入力)が必要なら、カスタムアダプタを投入してください —— それはサポートされる設定の範囲外です。
Gemini をデフォルトにする
bash
ONGRID_LLM_DEFAULT_PROVIDER=geminiBaseURL
デフォルトは generativelanguage.googleapis.com 経由でルーティングされ ます。以下に BaseURL オーバーライドを使用:
- Vertex AI プロキシエンドポイント(通常
us-central1-aiplatform...)。 - 企業 Google Cloud リレー。
Settings UI でこのフィールドに表示されるヒントは「Google generativelanguage.googleapis.com (OpenAI compatibility mode)」です。
クセ
- リージョン制限 —— 一部の Gemini モデルはすべてのリージョンで 利用可能ではありません。上流からの 403 はチャットトランスクリプトに 通常の API エラーとして着地します。これが出たらプロバイダーのリージョン マトリクスを確認してください。
- 安全フィルター —— Google のコンテンツフィルターは
finishReason: SAFETYで空メッセージを返すことがあります。Ongrid アダプタはこれを空回答ではなくチャット内の明示的な「blocked by safety filter」メッセージとして描画します。 - ビジョン —— 画像入力は OAI 互換レイヤー上で標準
image_urlコンテンツブロックを使って動きますが、BaseTool 表面はまだ画像 パラメータを公開していません。