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. Adapter SDK: modo de compatibilidad OpenAI sobre la API generativelanguage de Google.

Env vars

VarDefaultNotas
ONGRID_GEMINI_API_KEYVacío = provider descartado
ONGRID_GEMINI_MODELgemini-2.5-proModelo default
ONGRID_GEMINI_BASE_URLhttps://generativelanguage.googleapis.com/v1beta/openaiEndpoint OpenAI-compat
ONGRID_GEMINI_MODELSgemini-3.5-flash,gemini-2.5-pro,gemini-2.5-flashLista de catálogo

Catálogo default

  • gemini-3.5-flash — frontier; rápido y sorprendentemente barato.
  • gemini-2.5-pro — el default del catálogo; balanceado.
  • gemini-2.5-flash — el barato.

Por qué el endpoint OAI-compat

Gemini tiene dos superficies de API:

  1. La nativa de Google generativelanguage.googleapis.com/v1beta/ — forma generateContent, distinta de la de OpenAI.
  2. Una capa de compatibilidad OpenAI en .../v1beta/openai/ — acepta requests estilo OpenAI chat/completions, devuelve respuestas con forma OpenAI.

Ongrid usa #2. La capa de compatibilidad significa que el adapter eino-openai funciona sin cambios, y tool calls / system messages / streaming se comportan como con cualquier slot de provider. Sin manejo especial.

Si necesitas una feature Gemini-only que la superficie OAI-compat no expone (p. ej. inputs de media que la forma OAI no puede representar), deja caer un adapter custom — eso está fuera de la configuración soportada.

Haciendo a Gemini el default

bash
ONGRID_LLM_DEFAULT_PROVIDER=gemini

BaseURL

El default rutea por generativelanguage.googleapis.com. Usa el override de BaseURL para:

  • Endpoints de proxy de Vertex AI (típicamente us-central1-aiplatform...).
  • Relays corporativos de Google Cloud.

El hint mostrado en la UI de Settings para este campo es "Google generativelanguage.googleapis.com (OpenAI compatibility mode)".

Quirks

  • Restricciones de región — algunos modelos Gemini no están disponibles en cada región. Un 403 del upstream aterriza en la transcripción de chat como un error API regular; revisa la matriz de región del provider si obtienes esto.
  • Safety filters — los content filters de Google pueden devolver un mensaje vacío con un finishReason: SAFETY. El adapter de Ongrid lo renderiza como un mensaje explícito "blocked by safety filter" en el chat en vez de una respuesta vacía.
  • Vision — los inputs de imagen funcionan sobre la capa OAI-compat usando el bloque de contenido estándar image_url; la superficie de BaseTool todavía no expone params de imagen.

Ver también