Oi galera, estou tendo um problema de “Bad request - please check your parameters” com o OpenAI. Tudo estava funcionando bem até ontem quando comecei a alternar entre modelos. Agora, não importa qual modelo eu use, recebo o mesmo erro.
Atualização: Conectei o OpenRouter Chat e usei Gemini, minimax, deepseek e glm, e o agente funcionou. Tentei usar modelos do OpenAI através do OpenRouter, mas o mesmo problema persiste. No entanto, Sub-agentes funcionam bem com o OpenAI Chat.
Bem-vindo @Ali4 à nossa comunidade! Sou Jay e sou um criador verificado n8n.
A captura de tela mostra que “Use Responses API” está ativado no nó OpenAI Chat Model - esse é o culpado. A Responses API usa um formato de chamada de ferramentas diferente e não é totalmente compatível com o nó AI Agent do n8n quando há ferramentas anexadas. Desative esse botão e volte para a API de Chat Completions padrão - o erro “No tool output found for function call” deve desaparecer imediatamente. O botão Responses API é principalmente útil se você precisa de streaming ou recursos exclusivos da Responses API, mas para fluxos de trabalho de agentes com ferramentas, isso causa esse tipo de falha.
Recebi este erro: Bad request - verifique seus parâmetros
Uma mensagem do assistente com ‘tool_calls’ deve ser seguida por mensagens de ferramenta respondendo a cada ‘tool_call_id’. Os seguintes tool_call_ids não tiveram mensagens de resposta: call_CPQTMJQP1aC9K7szYjBk97kl
O erro vem da regra de tool calling da OpenAI, quando o assistant gera tool_calls, cada id precisa receber uma resposta de ferramenta correspondente. No n8n, isso aponta para alguma tool/sub-agent conectada ao AI Agent (como Call Mortgage Agent ou Call Expense Agent) que não está retornando output válido em algum caminho. eu testaria desconectar as tools uma por uma e garantir que cada sub-agent sempre retorne um output válido, inclusive em erro ou quando não houver resultado.
@Ali4 construindo sobre @tamy.santos — o erro “tool_call_ids did not have response messages” depois de desabilitar a Responses API significa que pelo menos um dos seus subagentes conectados está retornando vazio/undefined quando o agente pai o chama. O protocolo de ferramentas da OpenAI REQUER que cada tool_call_id receba uma resposta de ferramenta, mesmo em caminhos sem resultado. A solução é fazer com que cada subagente sempre emita um output string, nunca um array vazio.
coloque este nó Code como o último nó em cada subagente (antes de retornar para o agente pai):
agora mesmo quando um subagente não tem nada a retornar (filtro rejeitou todos os itens, API retornou vazio, etc), o agente pai ainda recebe um campo output de volta e o tool_call_id fica satisfeito. a forma mais fácil de encontrar qual subagente está quebrando: desconecte-os um de cada vez do agente principal e execute — quando o erro desaparecer, esse é o que está faltando output.
@Ali4 fico feliz que conseguimos ajudar! Fique à vontade para marcar o post de quem resolveu o problema como a solução, e tenha um dia incrível! Se quiser ajuda e conseguirmos corrigir o do OpenAI, é só nos avisar!