遗忘问题:无限膨胀的 Agent 记忆如何拖垮性能
一个记住所有事情的 agent,最终什么有用的都记不住。这听起来像是悖论,却是每个在没有遗忘策略的情况下上线长期运行 AI agent 的团队的亲身体会。记忆存储不断膨胀,检索质量持续下降,某一天你的 agent 开始自信地引用用户的前雇主、一个已废弃的 API 端点,或者一个六个月前就已放弃的项目需求。
行业在赋予 agent 记忆能力上投入了大量精力,却很少关注那个更难的问题:教会 agent 如何遗忘。
一个记住所有事情的 agent,最终什么有用的都记不住。这听起来像是悖论,却是每个在没有遗忘策略的情况下上线长期运行 AI agent 的团队的亲身体会。记忆存储不断膨胀,检索质量持续下降,某一天你的 agent 开始自信地引用用户的前雇主、一个已废弃的 API 端点,或者一个六个月前就已放弃的项目需求。
行业在赋予 agent 记忆能力上投入了大量精力,却很少关注那个更难的问题:教会 agent 如何遗忘。
大多数生产环境中的 AI agent 失败并不是因为模型耗尽了上下文。它们发生的原因是模型在达到限制之前很久就已经发生了 漂移 (drift)。Forrester 将 “agent 漂移” 称为 AI 加速开发的隐形杀手 —— Forrester 2025 年的研究显示,近 65% 的企业级 AI 失败都可以追溯到多步推理过程中的上下文漂移或记忆丧失,而不是单纯的 token 耗尽。
这种区别至关重要。硬性的上下文限制是很清晰的:API 拒绝请求,agent 停止,你会收到一个可以处理的错误。上下文腐烂 (Context rot) 则是隐蔽的:模型继续运行,继续生成输出,但性能却在悄然下降。仅根据信息在上下文窗口中所处的位置,GPT-4 的准确率就会从 98.1% 下降到 64.1%。你不会收到错误信号 —— 你只会得到微妙的错误答案。
本文涵盖了在生产级 agent 中管理上下文的三种主要工具 —— 压缩 (compaction)、工具结果清理 (tool-result clearing) 和外部记忆 (external memory) —— 以及在你的 agent 发生漂移之前应用它们的实际策略。