返回指南
故障排查·2026年9月15日·阅读约 6 分钟

ChatGPT 中的“消息流错误”——原因和解决方案

当 ChatGPT 通过逐段传送响应的连接在响应完成前被切断时,就会显示“消息流错误”。这几乎从来不是您输入的内容导致的:常见原因是 OpenAI 端过载、连接不稳定、浏览器扩展,或对话变得过长。重新生成响应可以解决大多数情况;如果仍然无效,只需进行一次检查即可判断问题是否出在您这边。

当 ChatGPT 通过逐段传送响应的连接在响应完成前被切断时,就会显示“消息流错误”。这几乎从来不是您输入的内容导致的:常见原因是 OpenAI 端过载、连接不稳定、浏览器扩展,或对话变得过长。重新生成响应可以解决大多数情况;如果仍然无效,只需进行一次检查即可判断问题是否出在您这边。

错误

在 ChatGPT 对话中显示
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.)

原因和解决方法一览

原因解决方法
OpenAI 端过载或发生故障。同时影响所有套餐,包括 Plus 和 Pro;当错误每隔几分钟就重复出现时,这是最可能的原因。查看 status.openai.com。发生故障期间,您在本地进行的任何更改都不会改变结果——等待才是解决办法。
连接不稳定:Wi-Fi/4G 切换、VPN 或企业代理、移动信号较弱。流式传输会长时间保持单个连接打开,因此它可能在普通页面加载能够通过的位置断开。关闭 VPN 或代理,然后通过另一条连接重试(Wi-Fi ⇄ 移动网络)。
浏览器环境:向页面注入内容的扩展、过期缓存、会话已过期。在无痕浏览中重试。如果在那里正常,原因就是扩展或缓存——停用扩展、清除网站数据,然后重新登录。
对话过长或附件过大。每一轮都会重新发送完整历史记录,因此生成时间更长,也更容易中断。将要点转移到新对话中。请拆分大文件,而不是完整上传。

前 90 秒的三个操作

重新生成响应 → 重新加载页面(在移动设备上,完全退出应用并重新打开)→ 退出登录后重新登录。一次性中断通常可以通过这三个操作之一解决,而一次性中断才是正常情况。但如果每次都在完全相同的位置停止,这说明下面列出的某个具体原因正在起作用,而不是随机故障。

先确定问题是否出在您这边

这是其他故障排除清单会跳过的一步,也是最节省时间的一步。打开 status.openai.com。如果正在发生故障,任何本地设置都不会改变结果,等待是唯一选择。如果没有报告故障,原因就在本地,下一步即可缩小范围。在调整设置之前进行这项检查,可以避免在服务中断期间花 20 分钟清理缓存。

从外部到内部隔离本地原因

请按此顺序操作,每一步都会排除前一步之前的所有因素:(1) 关闭 VPN 和代理;(2) 打开隐私浏览窗口——这会一次性移除扩展程序和缓存;(3) 尝试使用其他浏览器或其他设备;(4) 切换网络。从哪一步开始恢复正常,就说明原因在哪里。如果错误只出现在长对话中,则四项都不是原因:将要点转移到新对话中。

面向开发者:API 侧的相同中断

使用 stream: true 调用 API 时,同一故障会表现为 Server-Sent Events 连接在没有 finish_reason 的情况下结束。HTTP 状态为 200——发送响应标头时一切正常——因此只检查状态码无法检测到它;在负载较高时,还会出现 429 和 529 overloaded_error。三点可以让它更易处理:(1) 将没有 finish_reason 就结束的流视为需要重试,而不是完整响应;(2) 对 429、500 和 529 使用带抖动的指数退避重试;(3) 如果位于代理之后,请检查其 idle timeout,并禁用响应缓冲——会缓冲响应的代理会把正常工作的流变成长时间阻塞。为缩小范围,请先不经过代理进行流式传输:

stream-test.sh
# 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"}]}'

如果你通过 Kunavo 调用

Kunavo 是 AI API 网关,流中断是其预期运行状态,而不是异常。当为某个模型配置了多个上游通道且第一次尝试失败时,请求会在同一次调用内部改由另一个通道重试:短暂的上游故障会变成稍慢一些的成功,而不是错误。失败的请求绝不会收费。由于 GPT 和 Claude 可以使用同一把密钥访问,绕过过载模型等同于更改模型名称,而不是更改集成方式。 流式传输场景下的重试和退避方案详见 LLM API 流式传输错误.

常见问题

“消息流中的错误”:是我的问题吗?

几乎从来不是。该消息表示承载响应的连接在完成前被切断。你写入的内容不是原因。原因可能是 OpenAI 侧负载过高、网络不稳定、浏览器扩展或会话已过期,也可能是对话已经足够长,导致响应超时。

如果重新生成仍然不行,该怎么办?

先检查 status.openai.com——发生故障时,本地操作都没有帮助。如果没有故障,请在另一个网络上打开隐私窗口:仅此测试就能一次性移除扩展程序、缓存和你平时使用的网络连接。如果这样可以正常工作,就逐项恢复这些因素,直到问题再次出现。如果在所有地方都失败,并且只发生在长对话中,请将要点转移到新对话中。

其他 AI 也会发生这种情况吗?

这种表述来自 ChatGPT,但任何以流式方式传输响应的助手都可能以同样方式中断。Claude 会显示一条消息,说明它无法生成完整响应;直接调用 API 时,则表现为 SSE 流在没有 finish_reason 的情况下结束,或者在负载较高时出现 529 overloaded_error。

为什么长对话中更容易反复出现此错误?

每一轮都会重新发送整个对话串,因此长对话意味着要在一条保持打开的连接上维持更长时间的生成。连接保持打开的时间越长,代理超时、网络切换或上游短暂抖动就越有机会将其切断。使用要点摘要重新开始一个新对话,通常比任何浏览器设置都更能改变结果。

相关指南

更多错误语义请参阅 错误参考;通过 注册 和 身份验证指南 获取密钥只需一分钟。