Skip to content

Gemini

TL;DR

bash
ONGRID_GEMINI_API_KEY=...
ONGRID_GEMINI_MODEL=gemini-2.5-pro          # padrão
ONGRID_GEMINI_BASE_URL=                     # padrão generativelanguage.googleapis.com em modo OAI

Provider id: gemini. Adapter SDK: modo de compatibilidade OpenAI na API generativelanguage do Google.

Env vars

VarPadrãoNotas
ONGRID_GEMINI_API_KEYVazio = provider removido
ONGRID_GEMINI_MODELgemini-2.5-proModelo padrão
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 do catálogo

Catálogo padrão

  • gemini-3.5-flash — frontier; rápido e surpreendentemente barato.
  • gemini-2.5-pro — o padrão do catálogo; balanceado.
  • gemini-2.5-flash — o barato.

Por que o endpoint OAI-compat

O Gemini tem duas superfícies de API:

  1. Nativa do Google generativelanguage.googleapis.com/v1beta/ — formato generateContent, distinto do OpenAI.
  2. Uma camada de compatibilidade OpenAI em .../v1beta/openai/ — aceita requests estilo OpenAI chat/completions, retorna respostas em formato OpenAI.

O Ongrid usa #2. A camada de compatibilidade significa que o adapter eino-openai funciona sem mudanças, e tool calls / system messages / streaming todos se comportam como o slot de qualquer outro provider. Sem tratamento especial.

Se você precisa de uma feature Gemini-only que a superfície OAI-compat não expõe (ex.: inputs de mídia que o formato OAI não consegue representar), entre com um adapter custom — isso está fora da configuração suportada.

Tornando o Gemini o padrão

bash
ONGRID_LLM_DEFAULT_PROVIDER=gemini

BaseURL

O default roteia por generativelanguage.googleapis.com. Use o override de BaseURL para:

  • Endpoints de proxy Vertex AI (tipicamente us-central1-aiplatform...).
  • Relays corporativos do Google Cloud.

O hint mostrado na UI de Settings para este campo é "Google generativelanguage.googleapis.com (OpenAI compatibility mode)".

Pegadinhas

  • Restrições de região — alguns modelos Gemini não estão disponíveis em toda região. Um 403 do upstream pousa no transcript do chat como um erro de API regular; cheque a matriz de regiões do provider se você pegar isso.
  • Filtros de segurança — os filtros de conteúdo do Google podem retornar uma mensagem vazia com um finishReason: SAFETY. O adapter do Ongrid renderiza isso como uma mensagem "blocked by safety filter" explícita no chat em vez de uma resposta vazia.
  • Vision — inputs de imagem funcionam pela camada OAI-compat usando o bloco de conteúdo padrão image_url; a superfície do BaseTool ainda não expõe params de imagem.

Veja também