Skip to content

什么是上下文压缩(Context Compaction)?有哪些常见的压缩策略? ​

  • 标签:

🏛 业务架构师 ​

上下文压缩(Context Compaction)指当对话或任务上下文逼近模型窗口/成本上限时,用摘要、结构化提炼等方式把历史内容"有损压缩"为高密度版本,腾出空间让任务继续。与"逐轮裁剪"不同,Compaction 是整体重写——通常由 LLM 把全部历史改写为结构化纪要。

常见压缩策略对比:

  1. 滚动摘要:早期历史压缩成一段纪要常驻。实现简单;缺点是摘要质量依赖模型、细节有损。适合中短任务对话;
  2. 结构化纪要(推荐):按固定 schema 提炼——任务目标、已完成步骤与结论、关键数据、待办、用户偏好。信息保真度和可用性最好,Agent 续跑无缝;实现成本略高;
  3. 选择性保留:按信息类型分级处理——用户确认的关键数据/合规承诺原样保留、过程讨论摘要、寒暄丢弃。质量最优,需要分类机制配合;
  4. 外置状态:关键事实抽到结构化存储,上下文只留指针按需查回。几乎不占窗口、精确可审计,但架构最重——超长任务(项目级)的最佳解。

压缩设计的业务准则:有损压缩必须风险分级——"错不得"的内容(合规承诺、确认过的数字)要外置保真,绝不能赌摘要质量;压缩前后原始记录归档(审计可回溯);压缩触发要有余量(80% 阈值),别贴着上限触发导致截断。

成本账:压缩本身花一次 LLM 调用,换来后续每轮的 token 节省和任务不中断——长对话场景下是稳赚的交易,关键在"压什么、保什么"的策略质量。

🏗 系统架构师 ​

上下文压缩 = 在 token 预算内把上下文重构为信息密度更高的形式。常见策略我按有损程度排:

  • 滑动窗口:只留最近 N 轮原文。零成本零延迟;早期信息硬丢失。适合短会话兜底;
  • 滚动摘要:旧对话段异步压缩成"会话纪要"(决策、事实、承诺、待办)。信息保留较好、一次摘要多次复用;细节有损、关键事实需白名单保护。适合多轮对话与中长任务;
  • Compaction(结构化重构):全历史重组为结构化状态快照(目标/事实/决策/待办/资源引用)。密度最高、任务连续性最好;压缩本身要一次大上下文调用(留预算)、schema 要按任务域设计。适合 Agent 长任务;
  • 选择性外置:工具结果、中间产物落盘,上下文留指针 + 概要。可逆可回查、窗口零占用;增加回取延迟与判断逻辑。适合 Agent 工作区;
  • 检索式记忆(RAG 化):历史全量向量化按需检索。窗口最省、跨会话;上下文不连续、漏检即"失忆"。适合长期用户记忆;
  • token 级压缩(LLMLingua 类):小模型对 prompt 做 token 级删减,压到 1/4~1/2。自动化程度高;可能误删关键约束,需回归验证。适合成本敏感的批量场景。

我的生产组合拳:System Prompt 与目标永不动 + 最近 5~10 轮原文 + 更早滚动摘要 + 工具结果一律外置 + 85% 水位触发 Compaction。

权衡铁律:压缩是用计算换 token、用有损换容量——每引入一种压缩,必须配"压缩前后任务指标回归"验证,防止省了 token 丢了效果。

💻 全栈开发专家 ​

上下文压缩(Context Compaction):在上下文窗口预算内,用更少 token 保留更多有效信息的一组技术。为什么需要:Agent 多轮循环 token 平方级增长、长文档塞不下、无关内容稀释模型注意力。

常见策略与优缺点:

  1. 滑动窗口截断:只留最近 N 轮。
  • 优点:零成本零延迟;缺点:硬丢早期信息(任务目标可能被丢掉)。
  1. 滚动摘要(Summarization):旧历史 LLM 压缩成结构化摘要(任务目标/已确认事实/未决问题),最近几轮保原文。
  • 优点:信息保留好,生产主力;缺点:压缩有延迟和成本、有损、需要触发与增量机制。
  1. 选择性检索(外置记忆):历史全部外置(向量库),每轮只检索相关片段注入。
  • 优点:窗口永远最小、可跨会话;缺点:漏召回风险、每轮检索延迟。
  1. 工具结果瘦身:大结果摘要+落盘引用、字段裁剪、分页。
  • 优点:对 Agent 场景收益立竿见影(工具结果常占 50%+);缺点:摘要可能丢细节,需提供「按需读全量」的路径。
  1. Token 级压缩(LLMLingua):困惑度打分删冗余 token。
  • 优点:保语义连续、压缩比高;缺点:不可解释、处理慢。

组合配置(我的生产模板):system+安全规则+最近 2 轮永不压缩;中间层滚动摘要;工具结果摘要+句柄;跨会话事实进长期记忆。关键纪律:压缩策略变更必须过评测集(任务成功率回归),省 token 掉准确率就是负优化。