上下文压缩三级策略

上下文窗口是有限资源。压缩策略决定哪些信息保留、哪些丢弃、如何压缩——这是 Agent 记忆管理的核心挑战。

为什么需要压缩?

问题影响
上下文窗口有限超长对话会被截断
Token 成本高长上下文 = 高成本
注意力稀释无关信息干扰 LLM 判断
检索效率低冗余信息降低检索精度

三级压缩策略

第一级:滑动窗口(实时)

 
保留最近 N 轮对话,丢弃更早的历史。
 
示例(N=5):
 
轮次1-3: [丢弃]
 
轮次4-8: [保留]
 
轮次9-10: [当前]
 
优点缺点
实现简单可能丢失重要早期信息
计算开销小窗口大小需要调优

第二级:摘要压缩(会话级)

用 LLM 对旧对话生成摘要,替代原始内容:

 
原始对话(10轮)→ LLM 摘要 → 保留摘要 + 最近3轮
 
示例:
 
摘要: 用户讨论了Python项目,决定用FastAPI框架,
 
      关注了性能优化和部署方案。
 
最近: [当前对话]
 
优点缺点
保留关键信息需要额外 LLM 调用
显著减少 token摘要可能丢失细节

第三级:重要性加权(智能筛选)

根据重要性分数筛选保留哪些记忆:

重要性因素权重
用户明确提及
决策相关
情感强度
时间近度
重复出现
闲聊内容

压缩后校验

压缩后需要校验是否破坏关键信息:

校验项说明
关键实体人名、地名、数字是否保留
决策记录重要决策是否在摘要中
任务状态当前进度是否清晰
约束条件用户设定的限制是否保留

▶ 对应实操:41-错误Patch回滚-验证-再尝试机制

▶ 对应实操:34-上下文压缩:任务摘要-文件摘要-过程笔记

速记卡(面试闪卡)

Q1:一句话讲清「上下文压缩三级策略」到底是什么?

A:上下文压缩分三级:滑动窗口丢旧、摘要压旧、重要性加权智能筛选保留。

Q2:一、为什么需要压缩 —— 怎么理解?

A:像手机内存有限:上下文窗口是有限资源,超长对话被截断、长上下文=高成本、无关信息稀释注意力、冗余降低检索精度。压缩决定哪些留、哪些丢、怎么压——这是 Agent 记忆管理核心挑战。

Q3:二、第一二级:滑动窗口与摘要 —— 怎么理解?

A:像聊天只留最近几页:第一级滑动窗口保留最近 N 轮、丢更早(简单但可能丢重要早期信息);第二级摘要压缩用 LLM 把旧对话生成摘要替代原文(省 token 但可能丢细节),保留摘要+最近几轮。

Q4:三、第三级:重要性加权 —— 怎么理解?

A:像给记忆打分排序:按用户明确提及、决策相关(高)、情感强度/时间近度/重复出现(中)、闲聊(低)加权筛选保留。压缩后还要校验——关键实体、决策记录、任务状态、约束条件是否还在。

Q5:四、压缩后校验 —— 怎么理解?

A:像搬家用清单核对:压缩后必须校验关键实体(人名/地名/数字)是否保留、决策记录是否在摘要、任务状态是否清晰、约束条件是否还在。避免”压完发现把客户需求压没了”的信息丢失事故。

Q6:核心速记主线有哪些?

  • 动机:窗口有限、成本高、注意力稀释、检索低效

  • 一级:滑动窗口,保留最近 N 轮,简单但有丢信息风险

  • 二级:LLM 摘要压缩,省 token,可能丢细节

  • 三级:重要性加权筛选 + 压缩后四项校验

口诀

A:上下文有限度,压缩三级护;

窗口滑近期,摘要代旧处。

重要加权筛,实体决策顾;

压完须校验,信息不迷路。

相关链接


快速问答

问题参考答案
上下文压缩的三级策略?第一级:滑动窗口(保留最近N轮);第二级:摘要压缩(LLM生成摘要);第三级:重要性加权(智能筛选)
压缩后如何校验?检查关键实体、决策记录、任务状态、约束条件是否保留。避免压缩导致信息丢失

相关链接