目录

一、为什么需要记忆压缩?

二、记忆压缩的分类

2.1 按照压缩方法分类

2.1.1 规则压缩类

2.1.2 智能抽取类

2.1.3 生成式摘要类

2.2 按照压缩对象分类

2.3 按照压缩触发时机分类

三、压缩质量评估指标

四、压缩选型决策矩阵


一、为什么需要记忆压缩?

Agent系统在长期运行过程中会积累大量记忆信息,这些信息如果全部保留会导致存储成本急剧上升、检索效率下降、上下文窗口污染等问题。记忆压缩与摘要是解决这些问题的核心技术,其本质是在信息保留量存储成本之间寻求平衡。

记忆压缩的核心目标有三个层面。第一,控制存储规模。通过压缩冗余信息,将长期积累的记忆压缩到可控范围内,避免存储线性增长。第二,提升检索效率。压缩后的摘要信息更加精炼,便于快速匹配和返回,减少无效计算。第三,保持关键信息。好的压缩策略能够保留记忆的核心语义和关键细节,确保Agent决策质量不因压缩而显著下降。

二、记忆压缩的分类

2.1 按照压缩方法分类

分类维度 压缩类型 核心技术 是否依赖LLM 实现复杂度 压缩效果
规则压缩 固定长度截断 条目数量限制、字符数限制 ❌ 否 ⭐ 低 适中
规则压缩 时间衰减压缩 基于时间的权重衰减 ❌ 否 ⭐ 低 一般
规则压缩 重要性分层 优先级Tag + 分层保留策略 ❌ 否 ⭐ 低 良好
抽取压缩 关键信息抽取 NER、关键词提取、事件抽取 ⚠️ 可选 ⭐⭐ 中 良好
抽取压缩 语义去重合并 向量相似度计算 + 聚类 ⚠️ 可选 ⭐⭐ 中 优秀
生成压缩 多粒度摘要 LLM生成不同长度摘要 ✅ 是 ⭐⭐⭐ 高 优秀
生成压缩 增量摘要 多记忆递归合并生成 ✅ 是 ⭐⭐⭐ 高 优秀
选择压缩 访问频率加权 统计访问频率 + 重要性计算 ❌ 否 ⭐⭐ 中 良好
选择压缩 检索反馈压缩 基于检索命中率调整 ⚠️ 可选 ⭐⭐⭐ 高 优秀
2.1.1 规则压缩类
压缩策略 工作原理 适用场景 优点 缺点
固定长度截断 保留最近N条或前N字符,超出部分丢弃 资源受限场景、简单对话系统 实现简单、性能稳定、可预测 可能丢失重要历史信息、无法智能判断价值
时间衰减压缩 按时间逐步降低记忆权重,超阈值后淘汰 需要时序追溯的系统 自然淘汰过期信息、与人类记忆曲线吻合 重要信息可能随时间被错误淘汰
重要性分层压缩 为记忆打Tag分层,不同层级不同压缩策略 知识密集型应用 保留核心知识、层次清晰 需要预先定义重要性标准
LFU-K淘汰策略 保留频率最高的K条记忆,其余压缩 高频访问场景 保证热点记忆、简单高效 可能忽略新产生的临时重要信息
FIFO窗口压缩 固定大小窗口,新进旧出 实时性要求高的场景 实现简单、内存可控 完全忽略历史积累
2.1.2 智能抽取类
压缩策略 工作原理 适用场景 优点 缺点
关键信息抽取 提取实体、事件、结论等结构化信息 知识密集型对话 保留核心语义、结构化便于检索 抽取质量依赖NLP模型能力
语义去重合并 计算记忆向量相似度,合并相似记忆 重复内容多的场景 消除冗余、保留多样性 计算开销大、相似度阈值难调
主题聚类压缩 按主题聚类后分别提取摘要 多话题混合记忆 保留话题多样性、便于按话题检索 主题边界可能模糊
事件链压缩 提取因果链条,压缩中间状态 任务执行过程记忆 保留决策逻辑、压缩率高 事件关系抽取复杂
2.1.3 生成式摘要类
压缩策略 工作原理 适用场景 优点 缺点
固定粒度摘要 按预设长度生成摘要(百字/千字) 对话总结、报告生成 输出可控、质量稳定 无法自适应内容复杂度
自适应压缩摘要 动态调整压缩比直到目标比例 存储空间敏感的端侧设备 自适应压缩、空间可控 可能需要多次迭代
增量摘要 新记忆与已有摘要合并生成新摘要 长期对话系统 增量计算效率高、上下文连贯 误差可能累积放大
层次化摘要 生成多级摘要树(详细→摘要→一句话) 多层级检索需求 支持多粒度回溯、按需展开 构建和维护成本高
查询导向摘要 根据潜在查询意图生成针对性摘要 RAG增强场景 检索命中率高、答案相关性强 需要预判查询意图
对话式压缩 通过问答对形式保留关键信息 知识传承类场景 问答形式便于后续回忆 信息可能碎片化

2.2 按照压缩对象分类

分类 压缩对象 实现策略 示例
内容压缩 文本内容本身 摘要生成、关键词提取 对话内容压缩为"用户询问退货流程,客服已发送处理链接"
结构压缩 元数据结构 选择性保留字段 只保留时间戳、对话ID、摘要文本
频率压缩 重复出现的模式 模式抽象、模板化 将"用户每次打开APP都看天气"抽象为"习惯性行为"
关系压缩 记忆间的关系 关系图压缩、核心实体保留 保留核心实体及关系,压缩冗余描述
时序压缩 时间序列数据 关键时间点提取、趋势摘要 将一年的每日数据压缩为月度统计

2.3 按照压缩触发时机分类

触发类型 触发条件 执行时机 优点 缺点
定时压缩 定时任务触发 每日/每周固定时间 可控、可预测 可能影响系统活跃时段
阈值触发 存储超限触发 达到存储上限时 存储可控 压缩时机不可预期
访问触发 访问时评估压缩 记忆被访问时 动态适应使用模式 实现复杂度高
对话触发 新对话开始时 开启新对话上下文 清理过期上下文 可能中断正在进行的任务
主动触发 用户指令触发 用户手动执行 灵活可控 需要用户参与
混合触发 多条件组合触发 多种条件满足时 综合考虑多因素 配置和维护复杂

三、压缩质量评估指标

评估压缩策略的效果需要从多个维度进行衡量。

评估维度 指标名称 计算方法 理想值
压缩效率 压缩比 原始大小 / 压缩后大小 越高越好
语义保留 语义相似度 Embedding余弦相似度 > 0.85
信息完整度 关键信息召回率 保留关键信息数 / 总关键信息数 > 0.8
检索效果 检索命中率 相关检索成功次数 / 总检索次数 不显著下降
决策质量 任务成功率 压缩后Agent任务成功率 不下降超过5%
计算成本 压缩耗时 单次压缩平均耗时 越低越好

四、压缩选型决策矩阵

需求优先级 推荐策略类型 核心特点 典型场景
资源受限优先 规则压缩类 实现简单、计算量小 嵌入式设备、移动端
语义保留优先 生成压缩类 压缩质量高、语义完整 知识管理、RAG增强
实时性优先 规则压缩+增量摘要 响应快、增量计算 实时对话、在线客服
存储成本优先 高压缩比规则 压缩比高、可控性强 海量日志、长周期存档
检索效果优先 语义去重+访问加权 热点突出、冗余少 高频检索场景
任务完成优先 生成式层次摘要 多粒度支持、按需展开 复杂任务助手
综合平衡 混合策略 多策略组合取长补短 企业级Agent系统

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐