ChatGPT 长对话上下文超出窗口

聊久了 ChatGPT 开始忘前面的内容。多半是当前套餐的 context window 满了、附件吃 token、或者被降级路由了。诊断 + 修复,附 2026 年 6 月各档位精确 token 上限。

聊了一个小时,对话 80 轮往上走,ChatGPT 突然开始自相矛盾,或者反问你「哪个文件?」——而那个 PDF 你十分钟前才传上去。回复读起来还是通顺的,但细节对不上,或者直接跳过你开头给的指令。模型没变傻,是这段对话超出了你这个套餐的 context window,ChatGPT 在悄悄丢掉最老的几轮、把请求塞进 token 上限里。没有横幅、没有报错,回答质量下降是唯一信号。

最快的修法: 在同一个对话里,让模型把「做出的决定、确认的事实、提到的文件、还没解决的问题」写成一段 300 字以内的编号摘要,把它复制到一个全新的对话里继续聊。新窗口 + 一段精心整理的「种子」,连贯性立刻就回来了。本文后面是帮你搞清楚「为什么会撞墙」,让它别再发生。

真正要看的那个数字(2026 年 6 月)

App 里的 context window 比你在宣传里看到的「1M tokens」小得多——因为那个 1M 是 API 的上限。在 ChatGPT.com 里能用多少,取决于你的套餐。截至 2026 年 6 月,默认的 GPT-5.5 模型:

套餐App 内 context window(GPT-5.5)
Free约 16K tokens
Go / Plus / Business32K tokens
Pro / Enterprise128K tokens
API(任何档位)1,000,000 tokens

也就是说,Plus 用户整段对话大约只有 32K tokens(约 24,000 个英文词,或 45-50 页)的工作空间——你的消息、模型回复、Custom Instructions、Memory、Project 文件、所有附件全挤在里面。它满得比大多数人想的要快。完整的 1M 窗口只存在于 API,以及 App 里的 $200 Pro 档位,并不是 $20 的 Plus 对话能拿到的。

常见原因

按命中率从高到低。

1. 总 token 超过你这档的 context window

GPT-5.5 在 API 里有 1M 窗口,但在 ChatGPT.com 里你被限制在上表那个数字(Plus 是 32K,Pro 是 128K)。长对话加上大附件会顶到这个上限,UI 就从最早那几轮开始砍。没有任何提示横幅。

怎么判断:问一句「我这段对话第一条消息说了什么?」如果模型转述的是更近期的内容、或者干脆瞎猜,那早期的轮次已经被砍掉了。

2. 大附件吃掉大部分预算

每个 PDF 或图片上传后都会被转成 token 并带在 context 里。一份 50 页 PDF 单独就能吃掉 30k+ token——这一个文件就已经超过整个 32K 的 Plus 窗口,留给实际对话的空间几乎为零。

怎么判断:数一下对话里的附件。在 Plus 上,哪怕只有一个大文件加一段长对话,几乎都是 context 压力;在 Pro 上则是两三个以上。

3. Custom Instructions 和系统提示占了一大块

很长的 Custom Instructions、Project 的系统提示、以及所有 Memory 条目,每一轮都会被前置注入。臃肿的「What traits should ChatGPT have?」/「Anything else?」栏目一不留神就 2-3k token / 请求,在 32K 的窗口里这是实打实的一口。

怎么判断:进 Settings -> Personalization -> Custom instructions。任意一栏超过约 500 字,就在拖累上下文。

4. Memory 是覆盖式的,不会扩展 context

ChatGPT 的 Memory 只是跨对话存几条短事实,单次对话里它并不会扩窗口。2026 年 6 月「Dreaming V3」记忆更新之后分成了两层(Saved memoriesReference chat history),有人因此误以为新记忆 = 无限上下文,并不是。Memory 是在请求开头注入几条事实,这其实还会消耗一点你的窗口,而不是给你加空间。

怎么判断:在一个对话里把 Memory 关掉(开关在 Settings -> Personalization -> Memory),看行为是否一致。一致就说明 Memory 从头就不是原因。

5. 工具调用(web search、code interpreter)偷偷塞 token

每次工具返回的结果都会追加到 context。一次很长的网页搜索结果、或者 code interpreter 里一个大 DataFrame,能把预算占掉一大半。

怎么判断:数一下对话里的工具调用次数。很多次 web search、或者一次很大的代码输出,几乎都是它们在压预算。

6. 推理模式或档位路由改变了你的实际窗口

模型选择器已经不再直接显示「mini」这个名字了。截至 2026 年 6 月,它在 GPT-5.5 家族上显示的是推理模式(InstantThinkingPro)。撞到用量上限时,付费账号可能被临时路由到更轻的模型(GPT-5.4 / GPT-5.5 Instant),而 Pro 模式会关掉 Memory 和 Apps、让推理链保持隔离。这些变化都会影响同一段对话实际占用多少 context。

怎么判断:看左上角的选择器。如果显示成 fallback 模型名、或者和你最初的模式不一样,那你的可用空间就变了。

开始前

  • 先决定:当前对话是要救回来,还是直接带摘要开新窗更快。Plus 上过了约 30 轮,通常带摘要开新窗更快。
  • 删之前先把当前对话里独有的内容存成纯文本,避免误伤。
  • 记一下你一开始用的是哪个模型、哪个模式,方便开新窗后对比。

要收集的信息

  • 对话大致的轮数和附件数量。
  • 现在选择器显示的是哪个模型、哪个推理模式。
  • Memory 是否开启、Saved memories 里有多少条。
  • Custom Instructions 总字数(贴到字数统计里数一下)。
  • 这个对话是否在某个 Project 里(Project 会叠一层系统提示和共享文件)。
  • 套餐档位(Free / Go / Plus / Pro / Business / Enterprise),以及最近是否撞过用量上限。

一步步修

Step 1: 让模型自己总结当前对话

在同一个对话里发:

帮我把这段对话里所有重要内容编号列出来:
做出的决定、确认过的事实、提到的文件、还没解决的问题。
控制在 300 字以内。

把这段摘要复制出来,它就是开新窗的「种子」。(趁对话还没进一步退化时做——一旦早期轮次被砍掉,模型也总结不出它已经看不到的东西了。)

Step 2: 开新对话,把摘要作为开场

新开一个对话,把摘要作为第一条消息贴进去,加个「上轮对话上下文」的小标题,然后继续你的任务。新窗口、原连贯。

Step 3: 重新上传前先精简附件

如果还得带文件干活,就只重传你真正需要的那几页或几张表。用 PDF 工具抽出关键 5 页,别整本 80 页报告全塞进来。在 32K 的 Plus 窗口里,光这一步往往就能让可用空间翻倍。

Step 4: 精简 Custom Instructions 和 Memory

Settings -> Personalization(或者直接跳到 chatgpt.com/#settings/Personalization)。把 Custom Instructions 控制在约 300 字以内。打开 Manage memories,删掉过期、不再适用的 Saved memories 条目;真要开一个全新项目时就用 Clear all。这两笔节省,在以后每个对话里都生效。

Step 5: 长期任务用 Project

跨多次对话的工作,开一个 Project,把参考文件挂在 Project 上,然后在 Project 里聊。每次对话都是新窗,但 Project 文件和 Project 指令是干净继承的,实际对话就不用花 token 装它们。

Step 6: 想要更大窗口,就换档位重跑

如果你在 Plus 上、又经常做文档密集型工作、动不动就撞 32K 的墙,那针对窗口大小真正的修法是换档位,而不是动选择器:Pro(App 内 128K)给你 4 倍空间,而完整的 1M 窗口只存在于 App 里的 $200 Pro 档位或 API。在当前套餐内,难题选 Thinking 而不是 Instant,并确认撞上限后选择器没把你悄悄路由到 fallback 模型。把刚才失败的问题再问一遍,对比答案质量。

Step 7: 把复杂任务拆成多个短对话

不要憋一个超长对话,按阶段拆(调研 / 大纲 / 草稿 / 修订),一个阶段一个对话。每个都远低于上限,回答也更锐利。

怎么确认修好了

  • 在新对话里让模型复述一下种子摘要的前 3 条。能复述上就说明 context 健康。
  • 把刚才失败的那个问题再问一次。能给出连贯答案,就是窗口的事。
  • 精简完 Custom Instructions 后再开一个新对话,确认基线行为有改善。
  • 如果你为了空间升到了 Pro,拿你最大的真实对话再跑一遍;要是它撑过 100+ 轮还没忘掉开头,那瓶颈就是档位。

长期预防

  • 记住自己的数字:Plus 约 32K tokens,Pro 约 128K。把 50 轮、或一个大附件(Plus)/ 三个(Pro)当软上限,再多就总结 + 重启。
  • Custom Instructions 控紧,两小段顶天。
  • 每月清理一次 Memory,删掉过期的 Saved memories 条目。
  • 调研类工作走 Project,源文件挂一次,不要每次对话都拖进去。
  • 写代码时一个 feature 一个对话,不要一周一个长对话。

常见坑

  • 以为「1M context」这个宣传数字在 App 里也适用。那是 API 的数,Plus 是 32K、Pro 是 128K。
  • 以为 Memory 能在单次对话里扩窗口。并不能,反而还吃掉一点窗口。
  • 每条新消息都重传同一个 PDF。每次都重新算 token。
  • 一整坨日志贴进来。砍到相关那 50 行就够。
  • 撞上限后没注意到选择器显示成了 fallback 模型、或换了推理模式。
  • 想通过把早期对话再贴一遍来「提醒」模型,反而更费 token。

FAQ

  • ChatGPT 的 context window 到底多大? 截至 2026 年 6 月,App 内 GPT-5.5 在 Free 约 16K tokens、Go/Plus/Business 是 32K、Pro/Enterprise 是 128K。那个 1,000,000 token 的窗口属于 API 和 App 里的 $200 Pro 档位,不是普通 Plus 对话。
  • 为什么到处写着 1M tokens,我的对话还是会忘? 那个 1M 是 API 上限。ChatGPT.com 按档位把 App 内窗口压得低得多,所以不管 API 数字多大,一段 Plus 对话在 32K 左右就没空间了。
  • Memory 会扩大窗口吗? 不会。Memory 是跨对话的小型事实库(现在是 Saved memoriesReference chat history)。它往请求里注入事实,反而略微减少单次对话的空间,而不是增加。
  • Project 会给我更多 context 吗? Project 让附件和指令存在对话外,实际对话就不用花 token 装它们,相当于可用空间变大——但每档位的硬窗口不变。
  • 为什么对话变差却没有任何报错? ChatGPT 超容量时是静默砍掉最老几轮的,不会有横幅。回答质量下降是唯一信号。
  • 能不能看到 token 计数? ChatGPT.com 里看不到。只有 API 会按请求暴露 token 用量。粗估的话,约 0.75 个英文词 / token。

标签: #ChatGPT #排查 #memory #gpt-5