一、“越聊越笨”是真的吗?
最近在 大模型(01gpt.cn) 上跑长任务时,确实发现 GPT-5.5 在多轮对话后期输出质量有波动——偶尔忽略之前确认过的约束、回答变得笼统、甚至前后矛盾。但排查后发现,问题不在模型本身,而在上下文管理上踩了几个坑。256K 的超大窗口并不意味着可以无脑填鸭,恰恰相反,窗口越大,信息管理的精度要求越高。
二、为什么对话越长模型表现越差?
根因不是模型“记忆力”退化,而是注意力被稀释。当上下文累积到几十轮对话后,真正对当前任务有用的关键信息可能只占全部 Token 的一小部分,其余大量历史交互——闲聊、试探性提问、已废弃的思路——变成了噪音。
具体表现为三个数据:多轮对话到第十轮时,前九轮对话可能占了总 Token 的七成以上,其中大量是“嗯”“好的”“请继续”这类无信息量的交互。长上下文中,模型对首尾位置信息的遵循度最高,中间部分容易被稀释——关键约束如果埋在第十轮的位置,很可能被“位置偏见”削弱。更隐蔽的是,早期阶段已废弃的思路仍残留在上下文里,模型可能在后续对话中“旧事重提”,导致输出偏离当前方向。
三、三个核心策略
策略一:信息分层,首尾强调
把系统提示词和用户消息分成不同层级。全局约束放在系统提示词的最前面和最后面各强调一次,只放角色定义、输出格式、安全边界这些贯穿整个会话的内容。当前任务描述放在用户消息中,只写本次对话的具体需求和临时约束。历史对话定期压缩——每五到十轮触发一次摘要压缩,把历史对话浓缩成结构化的“背景记忆”。
背景记忆的提炼模板很简单:关键决策点、已确认的约束、待处理的问题、最近一轮的上下文线索。压缩后的上下文体积大幅缩小,但信息密度反而更高。
策略二:主动压缩,而非被动遗忘
不要等上下文窗口撑满才处理。每完成一个相对独立的子任务,就主动触发一次“记忆整理”。让模型自己用一段话总结当前状态——刚才做了什么、结论是什么、还有哪些未解决的问题。这份总结会自动替换掉冗长的原始对话历史,成为后续对话的“压缩上下文”。
如果人工判断更精准,也可以手动清理。当对话出现明显的思路切换时——比如从讨论方案A转向讨论方案B——先让模型总结方案A的结论,然后清理掉中间反复讨论的过程,只保留最终结论作为下一阶段的参考。
策略三:当前任务显式声明
每一轮提问时,在用户消息的开头用简短的一句话重申当前任务目标。格式可以很简单:“当前任务:为订单模块编写单元测试,覆盖正常路径、异常路径和边界条件。请基于上文确认的接口定义,生成测试用例。”这相当于给模型在庞杂的上下文中立了一个“当前锚点”,让它知道这一轮该关注什么。
四、对话轮次的配比建议
经过多次测试,一个比较稳定的上下文结构配比如下:
| 上下文组成部分 | 建议占比 | 说明 |
|---|---|---|
| 系统提示词(全局约束) | 10%-15% | 角色定义、输出格式、安全边界 |
| 背景记忆(压缩后的历史) | 15%-25% | 关键决策和已确认约束的摘要 |
| 本轮对话(当前任务) | 30%-40% | 当前具体需求和上下文细节 |
| 缓冲空间 | 20%-30% | 留给模型推理和生成的空间 |
五、两个容易忽略的细节
多轮对话中,早期达成的共识可能随着任务推进而失效。比如前几轮确认“使用方案A”,但后续讨论发现方案A有性能瓶颈,实际已转向方案B。如果不主动更新记忆,模型可能还在基于方案A思考。每次任务方向发生调整时,显式更新背景记忆——“已放弃方案A,当前方向为方案B”。
另外,历史对话中有些信息具有强时效性。“刚才报的那个错”只在当前调试会话中有意义,“我们项目的技术栈”则具有长期参考价值。压缩历史时,为每一条信息标注时效性权重。长期有效的信息保留完整描述,临时性信息只保留结论,过程性交互直接丢弃。
六、总结
GPT-5.5 不会“越聊越笨”,它只是忠实地反映了上下文被污染的程度。超大上下文窗口不是垃圾桶,而是档案柜——需要分类、编号、定期清理。信息分层、主动压缩、显式锚定,三个策略组合使用,能让多轮对话始终保持高质量的连续性和一致性。
这不是 Prompt 技巧,而是上下文管理的工程纪律。管好上下文,模型的表现会一直在线。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用。你还可以使用@来通知其他用户。