« Erro no fluxo de mensagens » aparece quando a conexão pela qual o ChatGPT entrega sua resposta parte por parte é interrompida antes que ela termine. Quase nunca é causado pelo que você escreveu: as causas habituais são uma sobrecarga no lado da OpenAI, uma conexão instável, uma extensão do navegador ou uma conversa que ficou longa demais. Regenerar a resposta resolve a maioria dos casos; quando isso não basta, uma única verificação informa se o problema vem do seu lado.
O erro
Erreur dans le flux de messages
(Même panne, autres formulations : « Streaming interrompu.
En attente du message complet », « Hmm...quelque chose semble
avoir mal tourné. » Le symptôme est identique — la réponse
s'arrête en cours de route et ne se termine jamais.)Causas e soluções em resumo
| Causa | Solução |
|---|---|
| Sobrecarga ou incidente no lado da OpenAI. Afeta todos os planos ao mesmo tempo, incluindo Plus e Pro, e é a causa mais provável quando o erro retorna a cada poucos minutos. | Consulte status.openai.com. Durante um incidente, nada do que você alterar no seu lado modifica o resultado — esperar é a solução. |
| Conexão instável: alternância entre Wi-Fi/4G, VPN ou proxy corporativo, sinal móvel fraco. O streaming mantém uma única conexão aberta por muito tempo, então ela falha onde um carregamento comum de página passaria. | Desative a VPN ou o proxy e tente novamente em outra conexão (Wi-Fi ⇄ móvel). |
| Ambiente do navegador: uma extensão que injeta conteúdo na página, cache desatualizado, sessão expirada. | Tente novamente no modo de navegação privada. Se funcionar, a causa é uma extensão ou o cache — desative as extensões, limpe os dados do site e faça login novamente. |
| Conversa longa demais ou anexos pesados demais. Cada turno reenvia todo o histórico, então a geração demora mais e falha com mais facilidade. | Leve o essencial para uma nova conversa. Divida arquivos grandes em vez de anexá-los inteiros. |
As três ações dos primeiros 90 segundos
Regenerar a resposta → recarregar a página (no celular, sair completamente do aplicativo e abri-lo novamente) → sair da conta e entrar novamente. Uma interrupção pontual é resolvida por uma dessas três ações, e o caso pontual é o normal. Se, porém, parar exatamente no mesmo ponto todas as vezes, isso indica que uma das causas específicas abaixo está envolvida, e não uma aleatoriedade.
Determine primeiro se o problema vem do seu lado
Esta é a etapa que outras listas de solução de problemas pulam e a que mais economiza tempo. Abra status.openai.com. Se houver um incidente em andamento, nenhuma configuração local mudará isso e esperar é a única opção. Se nada for reportado, a causa é local e a próxima etapa a delimita. Fazer essa verificação antes de alterar configurações evita passar vinte minutos limpando caches durante uma falha.
Isole a causa local de fora para dentro
Siga esta ordem, com cada etapa descartando tudo o que veio antes: (1) desative VPN e proxy; (2) abra uma janela de navegação privada — isso remove extensões e cache de uma só vez; (3) tente outro navegador ou dispositivo; (4) altere a rede. A etapa a partir da qual volta a funcionar identifica a causa. Se o erro aparecer apenas em conversas longas, nenhuma das quatro é a causa: leve o essencial para uma nova conversa.
Para desenvolvedores: a mesma interrupção no lado da API
Ao chamar a API com stream: true, a mesma falha aparece como uma conexão Server-Sent Events que termina sem finish_reason. O status HTTP é 200 — tudo estava bem no momento do envio dos cabeçalhos — portanto uma verificação apenas do código de status não a detecta; sob carga, acrescentam-se 429 e 529 overloaded_error. Três medidas a tornam tolerável: (1) tratar um fluxo encerrado sem finish_reason como algo a repetir, não como uma resposta completa; (2) repetir 429, 500 e 529 com backoff exponencial e jitter; (3) atrás de um proxy, verificar seu tempo limite de inatividade e desativar o buffering de respostas — um proxy que armazena em buffer transforma um fluxo funcional em um longo bloqueio. Para delimitar, faça o streaming primeiro sem proxy:
# Streamer directement, sans proxy sur le chemin, et voir où ça s'arrête.
curl -N https://api.kunavo.com/v1/chat/completions \
-H "Authorization: Bearer $KUNAVO_API_KEY" \
-H "content-type: application/json" \
-d '{"model":"claude-sonnet-5","stream":true,
"max_tokens":300,
"messages":[{"role":"user","content":"compte lentement de 1 à 20"}]}'Se você estiver chamando pela Kunavo
O Kunavo é um gateway de API de IA, e um fluxo interrompido é um estado operacional previsto, não uma exceção. Quando vários canais upstream são configurados para um modelo e a primeira tentativa falha, a solicitação é repetida em outro canal dentro da mesma chamada: um incidente upstream passageiro vira um sucesso um pouco mais lento em vez de um erro. Solicitações com falha nunca são cobradas. Como GPT e Claude podem ser acessados com uma única chave, contornar um modelo saturado equivale a alterar o nome do modelo, não a integração. O esquema de repetição e backoff para o caso de streaming é detalhado em Erros de streaming de APIs de LLM.
Perguntas frequentes
« Erro no fluxo de mensagens »: a culpa é minha?
Quase nunca. A mensagem indica que a conexão que transportava a resposta foi interrompida antes do fim. O que você escreveu não é a causa. As causas são carga no lado da OpenAI, uma rede instável, uma extensão do navegador ou uma sessão expirada, ou uma conversa que ficou longa o bastante para que as respostas expirassem.
O que fazer se regenerar não for suficiente?
Verifique primeiro status.openai.com — durante um incidente, nada local ajuda. Se não houver incidente, abra uma janela privada em outra rede: esse único teste remove de uma vez as extensões, o cache e sua conexão habitual. Se funcionar, reative cada elemento um por um até falhar novamente. Se falhar em todos os lugares e apenas em uma conversa longa, leve o essencial para uma nova.
Isso acontece em outras IAs?
A formulação é a do ChatGPT, mas qualquer assistente que transmita respostas por streaming pode falhar da mesma forma. O Claude exibe uma mensagem indicando que não conseguiu gerar a resposta completa; em uma chamada direta à API, isso aparece como um fluxo SSE que termina sem finish_reason ou, sob carga, como um 529 overloaded_error.
Por que o erro retorna com mais frequência em conversas longas?
Cada turno reenvia toda a conversa, então uma conversa longa significa uma geração mais longa mantida em uma única conexão aberta. Quanto mais tempo essa conexão permanece aberta, mais oportunidades há para um tempo limite de proxy, uma mudança de rede ou um soluço upstream interrompê-la. Recomeçar em uma conversa nova com um resumo do essencial geralmente muda mais as coisas do que qualquer configuração do navegador.
Guias relacionados
- Erros de streaming de LLM — cortes de SSE, streams travados e uso ausente
- Erro 529 overloaded_error da API Claude — o que é e como absorvê-lo
- Preços da API do Gemini 2026 — tarifas por modelo, exemplos e acesso mais barato
Mais detalhes sobre o significado dos erros estão em referência de erros; obter uma chave leva um minuto por meio de cadastro e da guia de autenticação.