ChatGPT 中途断掉和”卡住不出”、“被限流”是三件事。截断是指 token 正常往外流,然后突然停——有时停在词中间,有时停在一段干净的换行处。最快的解法几乎总是一样:打一个 continue 发出去(更稳的写法:continue from "<它写出的最后一整行>")。但搞清楚它为什么断,下次跑长任务才不会再踩。
按命中率从高到低:模型提前吐了结束 token → 单次输出预算用光 → 网络流中断 → 安全过滤中途触发。在 GPT-5.5 Instant(2026 年 4 月起的默认模型)上,现在最常见的是第一种——模型在还没真写完时就判定自己”说完了”——因为 App 里的单次输出预算够大,普通文字很少会撞到硬性 token 上限。
症状
- 输出停在词中间、代码块里、列表项中
- 长输出(代码、翻译、表格)总是在差不多的长度停下来
- “Stop generating” 按钮没出现,你也没点
- 模型说”我下条继续”,结果不继续
- 代码块开了
```但没闭合
你属于哪一类
| 你看到的现象 | 最可能的原因 | 第一步怎么做 |
|---|---|---|
| 停在一个”自然”的位置(列表/函数结尾),但你明明要更多 | 模型提前吐了结束 token | 打 continue |
| 每次都停在差不多的很大长度,且停在词中间 | 单次输出预算用光 | 提前拆分任务 |
| 切走标签 / VPN 切了 / 笔记本休眠后立刻停 | 网络流断了 | 重发上一轮,稳住网络 |
| 消息上方出现橙色/红色”may violate our policies”提示条 | 安全过滤 | 改写触发点 |
| 只在某一个 Custom GPT 里发生 | 它的系统指令卡了长度 | 拿默认对话测一遍 |
常见原因
1. 模型提前吐了结束 token(最常见)
模型在判断”答得够完整”时会自己输出结束 token。GPT-5.5 Instant 在 2026 年专门往更简洁的方向调过——更紧凑、更少过度排版——所以遇到结构化长输出(表格、编号列表、多文件代码)时,它比老模型更容易提前把列表截掉、或者写几个文件就停。这是完成度的取舍,不是硬上限。
如何判断:输出停在一个看起来自然的位置(列表最后一项、函数结尾),但 prompt 明明要更多。直接问”你写完了吗?没写完就继续”,基本都能把剩下的要回来。
2. 单次输出预算用光了
每条回复同时受一个 token 预算的约束。在 API 端,GPT-5.5 单条回复上限是 128K 输出 token(截至 2026 年 6 月),装在它约 1M token 的 context window 里。在 ChatGPT App 端,实际天花板更小,跟你的套餐工作上下文挂钩——GPT-5.5 Instant 下大约 Free 16K、Plus 32K、Pro 128K(Thinking 模式窗口更大)。一旦撞上就停——不报错,就是没了。普通文字很少会到;它咬的是超大代码 dump、整本书翻译、超长表格导出这类。
如何判断:数一下输出长度。代码 dump 或翻译每次都停在同一个很大的长度附近、而且停在词中间(不是自然结尾),那就是预算到顶了。一个粗略换算:1K token ≈ 750 个英文词 ≈ 4 KB ≈ 1000–1500 个汉字。
3. 网络流中途断了
浏览器靠 SSE 流接收 token。网络抖动、VPN 切节点、笔记本休眠都会让 SSE 断开;UI 显示的就是断之前已经流到的部分。服务端这边可能其实已经生成完了,只是你后半截没收到。
如何判断:打开 DevTools → Network → 筛 conversation 那个请求(类型显示为 eventstream/SSE)。如果它提前 closed,或者你看到 net::ERR_NETWORK_CHANGED / net::ERR_INCOMPLETE_CHUNKED_ENCODING,就是流断了。刷新页面经常能看到服务端其实已经写完的完整答案。
4. 安全过滤中途触发
不常见但真的会发生:模型开头写了一段,中间生成的内容触发了 post-filter,回复被截。UI 通常会显示”该内容可能违反政策”的橙条/红条——但手机上很容易看漏。
如何判断:往上滚到那条截断的消息。有橙色/红色警告条 = 是这个原因。
5. 浏览器后台标签被节流
部分浏览器会节流后台标签的 JS 计时器。SSE 连接没断,但渲染暂停,某些版本超过一段时间后连接也会被关。重新切回标签后渲染恢复——但没渲染出来的就没了。
如何判断:截断是不是发生在你切走标签之后?同样 prompt 在保持标签前台时能完整跑完,就是这个原因。
6. Custom GPT 的 system prompt 限制了长度
如果你在用 Custom GPT,它的指令里如果写了”回答控制在 300 字以内”或者”每次以下一步问题结尾”,模型会比裸 ChatGPT 更早停。
如何判断:同样 prompt 拿去开一个普通的 ChatGPT 新对话试。能跑完整 = 是 Custom GPT 的系统指令把长度卡掉了。
最短修复路径
第 1 步:打 continue 发出去
最稳的兜底。ChatGPT 会从断点接着写——一般会接上下一段、下一个代码块或者下一条列表。除了安全过滤(原因 4),其他情况都管用。
光打 continue 有时会重启当前块、或者跳掉几行。加锚点更稳:把它写出的最后一整行贴回去,说 continue from "<那一行>"。代码场景:continue from where you stopped, do not repeat any lines, keep the same code block。长表格:continue the table from row N, headers omitted。
第 2 步:长输出,开始前先拆
不要一句 prompt 要”整套 30 个文件全部重构”。先要 1–3 号文件,再要 4–6 号。提前拆好的好处:
- 完全绕开单次上限
- 任何一段失败都有恢复点
- 每次调用的 prefill 时间也短
翻译:按章节或每 2000 源词拆。表格:每次只要 30 行。
第 3 步:如果在 Custom GPT 里,切回普通 ChatGPT
Custom GPT 的上下文会显示在输入框上方。点 “New chat” → 留在默认 ChatGPT。同样 prompt 现在能用到完整的输出预算,不会被 GPT 自己的指令裁掉。
第 4 步:查安全过滤的提示条
往上滚到那条被截的消息。如果有橙色/红色政策提示,重写一下 prompt 把触发点去掉(通常是某个具体姓名、被标成”exploit”的代码、或者匹配到敏感模式的措辞)再发。
第 5 步:长生成时把网络稳住
- 跑 20 分钟的长生成时插网线,别用 Wi-Fi
- 临时关掉 VPN 的自动重连
- 标签留在前台——不要切桌面、不要让笔记本休眠
- 手机上保持屏幕常亮
第 6 步:模式选对,别用错档
ChatGPT 的模式选择器就在输入框里:Instant / Thinking / Pro(Pro 限付费套餐)。Thinking 和 Pro 会在给你可见答案之前,先花时间和 token 做隐藏推理,在一轮预算紧的情况下,留给正文输出的空间反而更少。如果任务是”写得多”而不是”想得深”,就选 Instant——它的预算全花在可见输出上,2026 年这版调校让它跑批量生成又快又能写更长。Thinking/Pro 留给真正需要推理的问题。
怎么确认修好了
- 数一下。 把输出贴进任意字数统计工具。如果你要了约 4000 字、实际拿到完整的约 4000 字(或者全部 30 行 / 全部 6 个文件),就是写完了。
- 看结尾。 写完的答案会以闭合的代码围栏(
```)、最后一项你要的内容、或者一句明确的收尾结束——而不是停在词中间。 - 再跑一遍。 如果你拆分任务或切到 Instant 之后,同样的 prompt 第二次能干净跑完,那原先的截断就是预算或模式问题,不是偶发。
容易误判成
- 被限流 / Message cap——那个会显示横幅(“You’ve reached your limit”)。截断不会。见 ChatGPT 消息上限。
- 卡住 / 不出 token——卡住是 token 从头到尾都没出。截断是流过一阵之后才停的。见 ChatGPT 加载卡住。
- 回答变慢——慢是还在出。截断是确实停了。见 ChatGPT 回答变慢。
怎么避免下次再断
- 任何预期大概会超过 3000 字的输出,事先就规划成 2–3 条消息
- 长代码 dump:一次只要一个文件,不要整工程
- 长生成挑稳定的网络——网线优于酒店 Wi-Fi
- 整个生成过程标签别切走
- 如果某个 Custom GPT 总是触发截断,进去把指令里的”长度限制”删掉
- 批量写作就留在 Instant;Thinking/Pro 留给真正需要推理的任务
常见问题
打 continue 会丢上下文或掉质量吗?
不会。对话历史还在 context 里,所以 continue 接的是同一个答案。唯一别扭的是代码:光打 continue 可能会重开或稍微重复当前块,所以用 continue from "<最后一行>", do not repeat 加锚点更干净。
为什么每次都断在差不多同一个位置? 那指向的是单次输出预算,而不是随机掉线。App 里的天花板跟你的套餐挂钩(GPT-5.5 Instant 下大约 Free 16K、Plus 32K、Pro 128K context,截至 2026 年 6 月)。把任务拆到每一轮都明显低于这个值,截断就没了。
升级到 Plus 或 Pro 能解决吗?
只对预算这一类有用。套餐越高,工作上下文窗口越大,超大的单次输出能写更长。但它对”提前吐结束 token”(用 continue/拆分)和”网络流断了”(修网络)都不起作用。
代码块开了 ``` 却一直没闭合——我的代码是不是坏了?
没坏,只是生成在闭合围栏前停了。发 continue from where you stopped, do not repeat any lines, keep the same code block,然后检查结尾有没有补上闭合的 ```。
我切了下标签,回复就没了——是丢了吗? 通常没丢。你标签被节流时,服务端可能已经写完了。刷新一下这个对话,完整答案经常会重新出现,因为它是服务端保存的,只是你的流停止渲染了而已。