AI 智能体的长任务跑到一半开始变笨,多半该给上下文减负了。清理的要点是次序:什么必须留、什么可以摘成摘要、什么直接丢,一步都不能乱。这篇把优先级与替换细节讲清。
该丢就丢:清理的基本原则
清理的目标并非越短越好,而是在有限空间里保留对后续决策最有用的信息。三条原则排个序:任务约定与用户要求最优先,删了会跑偏;已完成的中间过程次之,留结论即可;原始大材料最后,通常摘要化或外移。任何一步清理动作,都要能回答「为什么它值得留下」,答不上来的删除就是在赌运气。
什么留下、什么先丢
留下的是「将来还要用」的:任务目标、关键决定、用户偏好、尚未执行的计划。先丢的是「只服务过去」的:已经处理完的报错、被推翻的旧方案、重复的示例。模糊地带是大段原始材料——现在的对话用不上,但说不准后面要引用,处理办法是移出窗口存档,留一个引用路标,需要时再取回,存档机制见长任务的状态是怎么保存的。
三类内容的去留,按「将来还要不要用」分得很清楚:
| 类别 | 包含什么 | 为什么这样处理 | 处理办法 |
|---|---|---|---|
| 留下 | 任务目标、关键决定、用户偏好、尚未执行的计划 | 将来还要用 | 原样留在窗口里 |
| 先丢 | 已处理完的报错、被推翻的旧方案、重复的示例 | 只服务过去 | 直接删掉 |
| 模糊地带 | 大段原始材料 | 现在用不上,但说不准后面要引用 | 移出窗口存档,留引用路标,需要时取回 |
摘要替换与原样归档
摘要替换并非简单删减,而是把几十轮对话压成一页纪要:保留结论、悬而未决的问题和关键数字,丢掉措辞与过程。DeepSeek 与智谱清言的长对话里都能手动触发这类整理,效果立竿见影。压完接着做一次自检——拿着纪要问「接下来的下一步是什么」,答得上来才算合格。原样归档的部分则进入外部存储,与检查点放在一起管理,恢复任务时一并加载。
清理之后模型还认得路吗
合理的清理不会让它迷路,因为任务的主线信息被显式保留或写进了纪要。会迷路的清理只有两种:把任务约定当成了闲聊删掉,或摘要时丢了关键数字。所以清理后通常跑一个轻量核对:让模型复述当前目标与下一步,对得上就继续,对不上就从归档里补回。膨胀的预防则要靠入口把关,见Agent 的上下文膨胀是怎么发生的,两边配合才周全。
清理自查清单:任务约定是否原样保留;关键数字是否进了纪要;外移材料是否留了引用路标;清理后是否做过复述核对。四条都过,瘦身不减智力。
最后强调一个观念:清理是保留的艺术,删得狠不如留得准。窗口腾出来的每一寸,都该花在还会被用到的信息上——这是长任务保持状态稳定的成本最低的手段。
清理时机的选择与冷启动
清理时机有三个天然节点:一个大阶段刚收尾时,中间产物最没价值,删起来最放心;换话题或换材料时,旧内容大概率不再被引用;窗口占用逼近预算线时,被动但必要。要避开任务约定刚成立的时段——那时模型对边界的理解最浅,清理动作容易误伤关键前提。清理后还有一个冷启动问题:被摘掉的细节如果突然又要用,模型要重新读一遍归档,这里会有一段短暂的质量回落,属于正常现象,只要引用路标准确,回落很快过去。判断:宁可提前在阶段末尾清,也别等到回答开始跑偏才清。团队里还可以沉淀一份清理模板:哪些内容默认留、哪些默认摘要、哪些默认外移,新任务直接套用,清理质量不再取决于当次操作的随手程度。模板本身也要定期回顾,按任务类型的实际效果增删条目。
关于上下文清理再多问三句
- 清理应该自动做还是手动做?:高频长任务适合设定阈值自动做,偶尔跑一次的手动整理更稳妥。
- 清理会影响正在等待的任务吗?:不会,清理安排在步骤间隙执行,进行中的调用不受影响。
- 工具说明书能清理吗?:挂载的工具越少窗口越清爽,用不上的可以先卸载,见工具描述是怎么影响选择的。


