Skip to content

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 mode

Provider id: gemini. SDK adapter: OpenAI-compatibility mode на Google generativelanguage API.

Env-переменные

VarПо умолчаниюЗаметки
ONGRID_GEMINI_API_KEYПусто = provider выпадает
ONGRID_GEMINI_MODELgemini-2.5-proДефолтная модель
ONGRID_GEMINI_BASE_URLhttps://generativelanguage.googleapis.com/v1beta/openaiOpenAI-compat endpoint
ONGRID_GEMINI_MODELSgemini-3.5-flash,gemini-2.5-pro,gemini-2.5-flashКаталог-список

Дефолтный каталог

  • gemini-3.5-flash — frontier; быстрый и удивительно дешёвый.
  • gemini-2.5-pro — каталог-дефолт; сбалансированный.
  • gemini-2.5-flash — дешёвый.

Почему OAI-compat эндпоинт

У Gemini две API-поверхности:

  1. Нативный Google generativelanguage.googleapis.com/v1beta/ — форма generateContent, отличная от OpenAI.
  2. OpenAI-compatibility layer на .../v1beta/openai/ — принимает OpenAI-style chat/completions запросы, возвращает OpenAI-shaped ответы.

Ongrid использует #2. Compatibility layer означает, что eino-openai адаптер работает неизменённо, и tool calls / system-сообщения / streaming ведут себя как у каждого другого provider-slot. Без специальной обработки.

Если вам нужна Gemini-only фича, которую OAI-compat surface не выставляет (например, media-входы, которые OAI-shape не может представить), drop in custom-адаптер — это вне поддерживаемой конфигурации.

Сделать Gemini дефолтным

bash
ONGRID_LLM_DEFAULT_PROVIDER=gemini

BaseURL

Дефолт маршрутизирует через generativelanguage.googleapis.com. Используйте BaseURL override для:

  • Vertex AI proxy-эндпоинтов (обычно us-central1-aiplatform...).
  • Корпоративных Google Cloud relays.

Подсказка, показанная в Settings UI для этого поля, — «Google generativelanguage.googleapis.com (OpenAI compatibility mode)».

Особенности

  • Region restrictions — некоторые Gemini-модели недоступны во всех регионах. 403 с upstream приземляется в chat-транскрипт как обычная API-ошибка; проверьте provider's region-матрицу, если получаете это.
  • Safety filters — content-фильтры Google могут вернуть пустое сообщение с finishReason: SAFETY. Ongrid-адаптер рендерит это как явное «blocked by safety filter» сообщение в chat, а не пустой ответ.
  • Vision — image-входы работают через OAI-compat layer, используя стандартный image_url content-блок; BaseTool-поверхность ещё не выставляет image-параметры.

См. также