Problema com AI Agent + Google Vertex Chat Model

Descreva o problema/erro/pergunta

Meu fluxo de trabalho atual continua recebendo erros ao fazer inferência no nó Google Vertex Chat Model devido a uma Bad Request. Pelo que consigo ver, o prompt está escrito corretamente e deveria estar funcionando. O modelo que estou tentando usar é ‘gemini-3.1-flash-lite’.

Qual é a mensagem de erro (se houver)?

"Bad request - please check your parameters

Google request failed with status code 400"

Por favor, compartilhe seu fluxo de trabalho

Compartilhe o resultado retornado pelo último nó

Informações sobre sua configuração n8n

  • Versão n8n: 2.27.3
  • Banco de dados (padrão: SQLite):
  • Configuração EXECUTIONS_PROCESS do n8n (padrão: own, main):
  • Executando n8n via (Docker, npm, n8n cloud, aplicativo de desktop): via Docker
  • Sistema operacional: MacOS

Obrigado por nos informar sobre isso. Criamos CV-11 como o ticket interno de desenvolvimento para investigar.

Oi @Irrazional, bem-vindo!
No Vertex, gemini-3.1-flash-lite é servido apenas no endpoint da região global, então uma credencial vinculada a um local específico (qualquer região us- ou europe-) retorna este erro 400. Os modelos 2.5 ainda rodam em endpoints regionais, mas os modelos 3.x migraram para global apenas. Abra sua credencial do Google Service Account, defina Region como global, e se global não estiver no dropdown, alterne Expression (fx) naquele campo e digite global manualmente, depois execute novamente.
Veja isso:

n8n 2.29.0 também incluiu tratamento lado do nó para isso, então atualizar de 2.27.3 ajuda junto com a mudança de região.
Separadamente, este é um modelo de chat de texto, então retorna texto, não imagens. Para gerar as imagens que seu prompt descreve, use um modelo de imagem como Gemini 3.1 Flash Image (Nano Banana) através do nó HTTP Request, não do AI Agent.

Ah, obrigado! O erro foi resolvido! Mas é verdade o que você mencionou, ainda não consigo gerar imagens com esse fluxo de trabalho. Você talvez conhece um guia passo a passo que pode me ajudar a configurar essa parte do fluxo?

Obrigado!

Oi @Irrazional
O nó Google Gemini integrado possui uma operação “Generate an Image” exatamente para isso, sem necessidade de configuração HTTP. Passos:

  1. Adicione um nó Google Gemini.
  2. Crie uma credencial “Google Gemini (PaLM) API” com uma chave de API do Google AI Studio (aistudio.google.com) e selecione-a no nó.
  3. Defina Resource como “Image” e Operation como “Generate an Image”.
  4. Coloque o texto do seu prompt no campo “Prompt” (o mesmo texto que você tinha no AI Agent).
  5. Ele retorna a imagem como binária, então conecte-a diretamente ao seu nó de upload do Google Drive existente.
    Isso substitui o par AI Agent e Vertex Chat Model para a etapa de imagem.
    Veja isto:

Ah desculpa, esqueci de esclarecer da minha parte. Estou tentando resolver isso através do Vertex AI porque o Gemini não suporta mais o uso do crédito gratuito de $300 do GCP. O suporte de faturamento do Google me ajudou a configurar através do Vertex AI em vez do AI Studio, pois disseram que é possível usar esses créditos. Existe uma maneira de eu configurar a conexão com o modelo flash lite 3.1 através do Vertex?

Analisamos essa questão e não conseguimos confirmar que se trata de um bug. Por enquanto, fechamos o ticket interno, mas se começar a parecer um bug, nossa equipe de moderação sinalizará isso novamente.

Oi @Irrazional
O nó Vertex Chat Model não consegue fazer isso, é um subnó LangChain apenas para texto, e o n8n não tem um nó Vertex de imagem integrado, então no Vertex o modelo de imagem deve ser chamado com o nó HTTP Request usando sua credencial de Conta de Serviço existente. Isso mantém tudo no faturamento do GCP, então seu crédito de $300 ainda se aplica. Uma correção no modelo: o modelo de imagem é gemini-3.1-flash-image-preview (Nano Banana), não há flash-image-lite, os níveis -lite são apenas texto. Confirme o ID exato no Model Garden para seu projeto.
Configuração:

  1. Abra sua credencial Google Service Account, ative “Set up for use in HTTP Request node”, adicione o escopo https://www.googleapis.com/auth/cloud-platform e salve.
  2. Adicione um nó HTTP Request, método POST, autenticação definida como Predefined Credential Type > Google Service Account API, e selecione essa mesma credencial.
  3. URL (ponto de extremidade global, já que os modelos 3.x são apenas globais, mesma razão que sua correção anterior de região):
https://aiplatform.googleapis.com/v1/projects/gen-lang-client-0799028555/locations/global/publishers/google/models/gemini-3.1-flash-image-preview:generateContent
  1. Ative Send Body, Body Content Type JSON. Coloque todo o corpo no modo expressão (comece o campo com =) para que o rótulo seja interpolado, e solicite uma imagem de volta com responseModalities:
={
  "contents": [
    { "role": "user", "parts": [ { "text": "A professional, high-resolution photo of {{ $json.Labels.split(',')[0] }}" } ] }
  ],
  "generationConfig": { "responseModalities": ["TEXT", "IMAGE"] }
}
  1. A imagem retorna como base64 em candidates[0].content.parts[0].inlineData.data. Adicione um nó Convert to File (string base64 para arquivo) para transformá-lo em binário, depois alimente isso em seu nó de upload do Drive existente.
    Google Service Account | Nodes | n8n Docs

Opa!

Um 400 Bad Request do Google Vertex Chat Model geralmente significa que a API recebeu sua solicitação, mas o payload ou a configuração estava malformado. Não é um timeout de rede ou um bloqueio de autenticação (que normalmente lançariam um 401 ou 403).

Olhando para os detalhes que você forneceu, aqui estão os culpados mais prováveis e como corrigi-los:

1. ID do Projeto do Google Cloud Incorreto (Mais Crítico)
Seu nó está usando algo como gen-lang-client-... como o projectId. Isso parece ser um ID de cliente interno, não um ID de projeto padrão do Google Cloud.

  • Acesse seu Google Cloud Console.
  • Clique no seletor de projeto na parte superior.
  • Copie seu ID de Projeto real (geralmente é uma string em minúsculas com hífens, como my-gemini-project-12345).
  • Substitua o valor atual em ambos os seus nós Google Vertex por este ID correto.

2. Credenciais Ausentes ou Não Vinculadas
Se seu JSON de fluxo de trabalho mostrar credentials: {}, o nó não está explicitamente vinculado a uma credencial do Google Cloud. Depender das credenciais padrão do host às vezes pode falhar.

  • No n8n, acesse Credenciais e crie uma nova credencial “Google Cloud API”.
  • No Google Cloud (IAM \ Admin > Contas de Serviço), crie uma Conta de Serviço com permissões “Vertex AI User”.
  • Gere uma chave JSON para esta conta, baixe-a e cole seu conteúdo em sua credencial n8n.
  • Volte para seu fluxo de trabalho e selecione explicitamente esta nova credencial em ambos os nós Vertex.

3. Ativar a API Vertex AI
Como uma verificação rápida, certifique-se de que a “API Vertex AI” está realmente ativada para seu projeto específico no Google Cloud Console (APIs \ Services > Library).

Uma vez que o ID do Projeto esteja corrigido e a Conta de Serviço esteja adequadamente vinculada, o erro 400 deve desaparecer. Me avise se isso funcionar para você!

Eu estava enfrentando os mesmos problemas, obrigado