AI智能体上下文管理新方案:LLM智能筛选记忆

长期运行的AI智能体常常会通过总结或删除最早的历史内容来压缩上下文窗口,但这种简单的处理方式很容易丢失后续任务需要的关键信息。近期有研究团队提出了一种更具选择性的智能体上下文管理方法,能够更精准地保留有用信息。
这套被称为自主管理上下文(Self-GC)的方案,会建立包含用户请求、工具调用、结果链接和文件路径等内容的上下文数据库。和普通智能体不同的是,它会在将上下文发送给主大语言模型之前,先通过另一个大语言模型来判断每条历史内容应该保留、删减还是直接丢弃。
核心判断逻辑:仅依靠输入输出类型或者保留期限的固定规则,无法准确判断哪些信息后续会被用到。比如较早的工具输出可能包含之后需要重新访问的链接,而较新的输出反而可能已经过时。大语言模型可以随着上下文累积读取历史信息,灵活判断哪些细节对未来任务更有价值。
具体工作流程:当输入的token数量超过主LLM上下文窗口的30%时,Self-GC会将历史记录发送给规划模型(默认使用Qwen3.6-Plus),要求其针对每条用户请求或工具调用及其结果制定处理策略。规划模型可以选择保留条目,也可以从三种操作中选择其一:第一种是Fold,将该条目内容移动到独立存储中,并附上简短的位置说明,方便智能体后续需要时完整取回;第二种是Mask,就地缩短条目内容,保留开头和结尾的文本,删除中间的重复内容,适合处理较长的日志记录;第三种是Prune,直接删除任务不再需要的条目,比如失败的命令日志。
在执行操作前,Self-GC会先在历史记录的副本上进行处理,丢弃会干扰当前请求或后续响应的操作,随后计算可以节省的输入token数量。只有当预计能够降低未来调用模型的总成本(包括缓存输入的节省)时,才会执行上下文压缩,研究团队发现当压缩比例至少达到30%时,该方案的收益最为明显,因此在测试中采用了这一判断标准。
实测性能表现:研究团队在一个能够浏览网页、运行shell命令并编辑文档的智能体上测试了Self-GC,并与基于固定规则的压缩方法(比如删除最早的消息或工具输出)进行对比。为了验证效果,团队回放了真实用户与智能体的完整对话,在对话进行到一半时暂停,对截至当前的历史记录应用Self-GC,再通过另一个大语言模型判断压缩后的历史是否保留了后续对话需要的所有细节。
在33段难度较高的对话测试中,Self-GC删除了43.95%的输入token,并且在84.85%的场景中保留了全部必要细节;而基于规则的方法删除了61.90%到69.87%的token,保留必要细节的比例仅为54.55%到69.70%。
在更大规模的332段对话测试中,Self-GC删除了31%到34%的输入token,在三种不同的规划模型(Qwen3.6-Plus、Qwen3.7-Max和GLM-5.1)上都能实现91.27%到94.58%的必要细节保留率,证明该方案可以适配多种大语言模型;而基于规则的方法删除了40.19%到47.76%的token,保留必要细节的比例为77.71%到87.46%。在真实用户账号的在线运行测试中,使用Self-GC的智能体可以减少10%到15%的输入token消耗。
现有局限:当前的评估仅测试了Self-GC保留重要细节的能力,并未验证其生成高质量输出的效果。使用压缩上下文的系统,虽然可能包含与完整上下文相同的细节和结果,但未必能达到同样的使用价值。
实际应用价值:为了节省成本而压缩智能体上下文,往往会伴随着遗忘关键信息的风险。精准掌握保留、删减和移除内容的策略,能够让长期运行的智能体既保持成本可控,又不会出现健忘的问题。这一思路也呼应了早期软件工程的理念,比如在1959年左右创造“人工智能”一词的John McCarthy,同时还发明了计算机垃圾回收机制,让程序员无需手动管理内存。将大语言模型视为操作系统,妥善管理智能体的记忆,正是软件工程基础在AI应用构建中的重要体现。

