Skip to main content
LibreChat is joining ClickHouse to power the open-source Agentic Data Stack 🎉 Learn more
LibreChat

Google

Para o Google endpoint, você pode usar a Generative Language API (para modelos Gemini) ou a Vertex AI API (para modelos Gemini, PaLM2 & Codey).

A Generative Language API utiliza uma API key, que você pode obter no Google AI Studio.

Para o Vertex AI, você precisa de um arquivo de chave JSON da Service Account, com o acesso apropriado configurado.

As instruções para ambos são fornecidas abaixo.

Generative Language API (Gemini)

Veja aqui os preços e limites de taxa da API do Gemini

⚠️ Embora os modelos do Google sejam gratuitos, eles utilizam suas entradas/saídas para ajudar a melhorar o modelo, com dados desidentificados da sua Conta Google e chave de API. ⚠️ Durante este período, suas mensagens “podem estar acessíveis a revisores treinados.”

Para usar modelos Gemini através do Google AI Studio, você precisará de uma API key. Se você ainda não possui uma, crie uma chave no Google AI Studio.

Obtenha uma chave de API aqui: aistudio.google.com

Assim que tiver sua chave, forneça-a em seu arquivo .env, o que permite que todos os usuários da sua instância a utilizem.

GOOGLE_KEY=mY_SeCreT_w9347w8_kEY

Ou, você pode permitir que os usuários forneçam isso a partir do frontend definindo o seguinte:

GOOGLE_KEY=user_provided

Alguns proxies reversos não suportam o cabeçalho X-goog-api-key. Você pode configurar o LibreChat para usar o cabeçalho Authorization em vez disso:

GOOGLE_AUTH_HEADER=true

Como a busca da lista de modelos ainda não é suportada, você deve definir os modelos que deseja usar no arquivo .env.

Para sua conveniência, estes são os modelos mais recentes a partir de 18/05/24 que podem ser usados com a Generative Language API:

GOOGLE_MODELS=gemini-1.5-flash-latest,gemini-1.0-pro,gemini-1.0-pro-001,gemini-1.0-pro-latest,gemini-1.0-pro-vision-latest,gemini-1.5-pro-latest,gemini-pro,gemini-pro-vision

Notas:

  • Um modelo gemini-pro ou gemini-pro-vision são necessários em sua lista para anexar imagens.
  • Ao usar o LibreChat, os modelos PaLM2 e Codey só podem ser acessados através da Vertex AI, não pela Generative Language API.
    • Apenas modelos que suportam o método generateContent podem ser usados nativamente com o LibreChat + a Gen AI API.
  • Não é necessário selecionar gemini-pro-vision para mensagens com anexos, pois a troca será feita automaticamente nos bastidores para você.
  • Como gemini-pro-vision não aceita mensagens sem anexos, mensagens sem anexos são automaticamente alteradas para usar gemini-pro, caso contrário, o Google responderá com um erro.
  • Com o endpoint Google, você não pode usar o Vertex AI e a Generative Language API ao mesmo tempo. Você deve escolher um ou outro.
  • Alguns modelos PaLM/Codey e o gemini-pro-vision podem falhar quando maxOutputTokens é definido com um valor alto. Se você encontrar esse problema, tente reduzir o valor através dos parâmetros de conversa.

Definir GOOGLE_KEY=user_provided no seu arquivo .env configura tanto a chave JSON da Conta de Serviço do Vertex AI quanto a chave da API Generative Language para serem fornecidas a partir do frontend da seguinte forma:

image

Contexto de URL

A ferramenta URL Context do Google permite que modelos Gemini compatíveis leiam URLs incluídas na mensagem do usuário, como páginas da web, imagens e PDFs. No LibreChat, habilite-a com o parâmetro url_context do endpoint Google.

preset:
  endpoint: google
  model: gemini-2.5-flash
  url_context: true

Você também pode habilitá-lo para um endpoint personalizado no formato do Google com addParams ou padrões de parâmetros:

custom:
  - name: 'Google Gateway'
    apiKey: '${GOOGLE_KEY}'
    baseURL: 'https://gateway.example.com/v1'
    models:
      default: ['gemini-2.5-flash']
    customParams:
      defaultParamsEndpoint: google
    addParams:
      url_context: true

url_context está disponível em modelos de texto Gemini compatíveis, incluindo modelos Gemini 2.5+ e Gemini 3.x. Links do YouTube são tratados separadamente com a compreensão de vídeo nativa do Gemini quando url_context está ativado, pois a ferramenta URL Context do Google não oferece suporte direto a URLs do YouTube.

Vertex AI

Veja aqui os preços e limites de taxa da Vertex API

Para configurar LLMs do Google (via Google Cloud Vertex AI), primeiro, inscreva-se no Google Cloud: cloud.google.com

Você geralmente consegue $300 em crédito inicial, o que torna esta opção gratuita por 90 dias.

  1. Após se inscrever, ative a Vertex AI API no Google Cloud:
  2. Crie uma Service Account com a função Vertex AI:
    • Clique aqui para criar uma Service Account
    • Selecione ou crie um projeto
    • Insira um ID de conta de serviço (obrigatório), o nome e a descrição são opcionais
      • image
    • Clique em "Create and Continue" para atribuir pelo menos a função "Vertex AI User"
      • image
    • Clique em "Continue/Done"
  3. Crie uma chave JSON para salvar no seu Diretório de Projeto:
    • Volte para a página de Contas de Serviço
    • Selecione sua conta de serviço
    • Clique em "Keys"
      • image
    • Clique em "Add Key" e depois em "Create new key"
      • image
    • Escolha JSON como o tipo de chave e clique em "Create"
    • Baixe o arquivo de chave e renomeie-o para 'auth.json'
    • Salve-o dentro do diretório do projeto, em /api/data/
      • image

Alternativa: Usando GOOGLE_SERVICE_KEY_FILE

Em vez de salvar o arquivo de chave em /api/data/auth.json, você pode usar a variável de ambiente GOOGLE_SERVICE_KEY_FILE para especificar o caminho para o seu arquivo de chave da conta de serviço. Isso oferece mais flexibilidade na forma como você gerencia suas credenciais. Veja a seção de variáveis de ambiente abaixo para mais detalhes.

Salvar seu arquivo de chave JSON no diretório do projeto, o que permite que todos os usuários da sua instância do LibreChat o utilizem.

Alternativamente, você pode permitir que os usuários forneçam isso a partir do frontend definindo o seguinte:

# Note: this configures both the Vertex AI Service Account JSON key file
# and the Generative Language API key to be provided from the frontend.
GOOGLE_KEY=user_provided

Você também pode especificar o arquivo de chave da conta de serviço usando a variável de ambiente GOOGLE_SERVICE_KEY_FILE:

# Path to the service account JSON key file
GOOGLE_SERVICE_KEY_FILE=/path/to/auth.json

# Or provide as a URL
GOOGLE_SERVICE_KEY_FILE=https://example.com/path/to/auth.json

# Or provide as stringified JSON
GOOGLE_SERVICE_KEY_FILE='{"type":"service_account","project_id":"your-project",...}'

# Or provide as base64 encoded JSON
GOOGLE_SERVICE_KEY_FILE=eyJ0eXBlIjogInNlcnZpY2VfYWNjb3VudCIsICJwcm9qZWN0X2lkIjogInlvdXItcHJvamVjdC1pZCIsIC4uLn0=

Isso é particularmente útil para recursos que exigem autenticação do Vertex AI, como recursos de OCR.

Você também pode especificar a localização do Google Cloud para solicitações da API Vertex AI:

# Google Cloud region for Vertex AI
GOOGLE_LOC=us-central1

# Alternative region for Gemini Image Generation (defaults to global)
GOOGLE_CLOUD_LOCATION=global

Como a busca da lista de modelos ainda não é suportada, você deve definir os modelos que deseja usar no arquivo .env.

Para sua conveniência, estes são os modelos mais recentes a partir de 18/05/24 que podem ser usados com a Generative Language API:

GOOGLE_MODELS=gemini-1.5-flash-preview-0514,gemini-1.5-pro-preview-0514,gemini-1.0-pro-vision-001,gemini-1.0-pro-002,gemini-1.0-pro-001,gemini-pro-vision,gemini-1.0-pro

Se você estiver usando Docker

Se você estiver usando Docker e quiser fornecer o arquivo auth.json, você também precisará montar o volume no docker-compose.override.yml

version: '3.4'

services:
  api:
    volumes:
      - type: bind
        source: ./api/data/auth.json
        target: /app/api/data/auth.json

Configurações de Segurança do Google

Para definir as configurações de segurança tanto para o Vertex AI quanto para a Generative Language API, você pode definir o seguinte no seu arquivo .env:

GOOGLE_SAFETY_SEXUALLY_EXPLICIT=BLOCK_ONLY_HIGH
GOOGLE_SAFETY_HATE_SPEECH=BLOCK_ONLY_HIGH
GOOGLE_SAFETY_HARASSMENT=BLOCK_ONLY_HIGH
GOOGLE_SAFETY_DANGEROUS_CONTENT=BLOCK_ONLY_HIGH
GOOGLE_SAFETY_CIVIC_INTEGRITY=BLOCK_ONLY_HIGH

Você também pode excluir as configurações de segurança definindo o seguinte em seu arquivo .env, o que usará os padrões do provedor. Isso pode ser útil se você estiver tendo problemas com configurações de segurança específicas.

GOOGLE_EXCLUDE_SAFETY_SETTINGS=true

NOTA: Você não tem acesso à configuração BLOCK_NONE por padrão. Para usar esta configuração restrita de HarmBlockThreshold, você precisará:

Notas:

  • O endpoint Google suporta todas as Shared Endpoint Settings via o arquivo de configuração librechat.yaml, incluindo streamRate, headers, titleModel, titleMethod, titlePrompt, titlePromptTemplate e titleEndpoint

Como está este guia?