随风
滑动窗口记忆一直都是Agent应用实现记忆的简单方法,它的机制原理是非常简单的,核心原理就是固定长度截断:维护一个固定大小的队列(窗口)来保存最近的N轮对话或最近的N个Token。当新数据进入时,最旧的记录被直接丢弃(“新进旧出”)。其机制基于一个朴素的理论,即模型对于较新的对话或者上下文注意层度更高,对于更旧的记忆则逐渐遗忘,因此可以选择丢弃旧的信息以节省有限的上下文窗口。对于复杂的长程Agent应用来说滑动记忆的副作用是显著的,即信息不可不变的丢失,即使加上摘要其丢失程度仍然是不可接受的,但对于聊天语音的应用来说似乎并非如此,这类应用追求极致响应,记忆可以通过分层系统保持偏好,无需保存整个轨迹,因此滑动窗口仍然是这类应用的优先选项。
但是随着百万级上下文窗口的普及,以及模型上下文缓存(Context Cache / KV Cache)技术的发展,滑动窗口这一传统记忆机制逐渐暴露出新的局限。过去它依靠限制上下文长度获得低成本和低延迟优势,但在现代大模型推理架构下,其不断删除旧上下文并引入新内容的机制会破坏请求之间的上下文连续性,使模型缓存难以有效复用。由于缓存命中率下降,Agent请求更多依赖完整推理过程,而无法充分利用缓存带来的低价格和低延迟优势,最终导致实际成本上升,同时响应速度也可能受到影响。以deepseek v4-flash模型为例子,其缓存价格和普通推理价格差距十分悬殊。

随着长上下文模型和上下文缓存技术的发展,传统滑动窗口由于频繁修改上下文结构,会降低缓存复用效率,因此其作为主要记忆机制的地位正在下降。相比之下,惰性摘要记忆通过延迟压缩,将上下文变化从每轮交互降低到低频事件,不仅提高KV Cache利用率,也允许模型在更完整的历史轨迹上生成高质量摘要。因此,即使是在强调低延迟的语音Agent场景,也应逐渐从主动截断转向“稳定上下文 + 惰性压缩 + 分层记忆”的架构。经过一系列的修改,ic平台实现了较高的缓存击中率,从原来8%到现在稳定在60%左右(使用知识库+知识图谱+agent)对话成本也得到了大幅下降,40轮的语音对话消耗的token费用约5分钱,真正做到将每一分钱花到刀刃上,与此同时其对话的记忆能力也得到了一定程度上升,长程任务明显改善,响应速度略有优化,未来社区将致力于不破坏智能水平的基础上进一步提高模型缓存率,使得成本进一步得到优化。

