← 所有文章

上下文压缩是一种决策,而非一道阈值

一段漫长的智能体轨迹触及了上下文上限,脚手架把目前为止的一切总结成一条简短的笔记,而这条摘要恰好落在一个尚未完成的证明的中途。智能体本已握有四条引理中的三条。如今它手里只剩一段写着自己”正在推进一个证明”的文字,以及四条不得不重新发现的引理。这次压缩失败并非因为摘要写得糟糕,而是因为它在错误的时刻触发。

大多数编码智能体按固定触发条件压缩上下文:当累积的token越过阈值时,就总结并继续。触发条件是数字化的,但压缩的代价却是结构性的。在推导中途触发会丢弃模型随后不得不重建的部分结果,而那正是最不该遗忘的时刻。 2026年6月的一篇论文《Self-Compacting Language Model Agents》提出,应当由模型来决定何时以及如何压缩,并表明这种基于决策的版本在质量上能够媲美甚至超越阈值方法,而其token成本仅为后者的一小部分。1

这一结果重新定义了一个我此前一直当作管道细节来处理的问题。上下文压缩不是一项由计数器触发的内存管理杂务。它是关于何时遗忘才安全的一种判断,而在做出这一判断上,智能体比token预算处于更有利的位置。

摘要

  • 包括Claude Code在内的智能体脚手架,会在接近窗口上限时压缩上下文。触发条件是token计数,因此它的触发不考虑智能体在工作中处于何种进度。
  • 在推导中途或搜索中途触发是最糟糕的情形:摘要会丢弃模型付出代价计算出来、随后又不得不重新计算的部分结果。
  • 《Self-Compacting Language Model Agents》(2026)将一个模型可调用的压缩工具,与一份告诉模型何时触发(子任务已解决、轨迹正在收敛)以及何时按兵不动(推导中途、陷入僵局)的评判准则配对在一起。两者缺一不可。
  • 该方法无需微调,也无需外部监督。在六个基准测试和七个模型上,它在数学上以最高18.1分、在智能体式搜索上以5到9分的优势击败了不做总结的基线,而每道题的成本降低了30%到70%。
  • 这一启示可以推广到总结之外:遗忘的正确触发条件是语义性的(工作是否处于安全边界?),而非数字性的(缓冲区是否已满?)。

阈值是错误的触发条件

压缩之所以存在,是因为漫长的轨迹会腐坏。思维链和工具调用层层堆积,陈旧的内容会锚定后续的生成,最终轨迹会超出窗口的容量。标准的解决办法是按固定间隔总结,当token总量越过阈值时触发。1 这是显而易见的工程做法,也正是生产环境的脚手架在会话拖长时所做的:Claude Code按其自身的文档所言,会”在你接近上限时自动压缩”。2

问题在于,阈值只知道上下文的大小,却对它的形态一无所知。token计数器无法分辨刚刚干净利落地结束一个子任务的轨迹,与一个已经走到五步推导中第三步的轨迹之间有何不同。对计数器而言,两者看上去完全一样:一个越过了某条线的数字。于是脚手架以同样的方式压缩两者,而在后一种情形下,它恰恰把智能体完成工作所需的中间结果总结掉了。

我在自己的自主循环中亲眼见过这种情况。一次长时间运行在多文件重构期间触及上限,脚手架进行了压缩,智能体回来后已经忘了自己之前已经编辑过哪些文件。这项工作并未在任何灾难性的意义上丢失,智能体重新推导出了它。但重新推导就是代价,而这一代价是阈值盲目地强加的,因为阈值看不到那个时刻有多糟糕。

这种失败与我在上下文复利中写过的那种不同。复利关乎一个项目跨会话保留下来的东西:那些让第500次会话比第1次会话更快的约定、钩子和记忆。压缩则关乎单次会话在其内部丢弃了什么。两者朝相反的方向拉扯,而压缩是无人去调校的那一个,因为阈值让它显得是自动完成的。

SelfCompact改变了什么

这篇论文的提案SelfCompact,把决策从脚手架转移到了模型身上。它将两个推理期的部件配对在一起。1

一个压缩工具。 模型获得了一个可供调用的工具来总结其累积的上下文,方式与它调用任何其他工具一样。压缩成了智能体主动采取的一个动作,而不是运行时强加的一次中断。

一份关于何时触发的评判准则。 一条轻量级的指令告诉模型何时适合压缩(一个子任务已解决,或轨迹正在收敛),以及何时应当抑制压缩(模型正处于推导中途,或陷入僵局)。这份准则正是token计数器所缺乏的判断力。

论文直言两个部件缺一不可,而其缘由正是最有意思的部分。开放权重模型对这个工具的使用并不均衡:它们要么在无益的时刻调用它,要么干脆完全跳过。任由自身的直觉行事,模型在察觉自身上下文腐坏方面并不可靠。准则单凭自己什么也做不成,因为它只是指令,没有可据以行动的机制。两者结合,便在无需任何微调或外部监督的情况下产生了自适应的压缩。1 模型本就具备出色总结的能力;它所缺乏的,是判断何时总结才值得付出损失代价的那种元认知意识。准则正是提供了这种意识。

这一框架之所以重要,是因为它区分了人们往往混为一谈的两种能力。知道如何压缩一段轨迹是一种生成技能,而前沿模型在这方面很在行。知道何时压缩才安全则是一种自我监控技能,而模型在无人提示时对此很不擅长。SelfCompact并不试图让模型在总结上变得更聪明。它给模型提供了一份清单,用于做出那个它本来会做错的时机决策。

数据

这项评估涵盖了横跨竞赛数学与智能体式搜索的六个基准测试,跨越七个模型。1 比较的参照点是一个不做总结的基线,以及固定间隔的阈值方法。

相对于不做总结,SelfCompact在数学上将结果提升了最高18.1分,在智能体式搜索上提升了5到9分,而每道题的成本降低了30%到70%。1 那道差距正是上下文腐坏的代价:一个淹没在自身陈旧轨迹中的模型,其表现可量度地更差,而付出的成本也比一个聪明地修剪的模型更高。

相对于固定间隔总结,最引人注目的是效率。SelfCompact以仅相当于阈值方法token成本一小部分的代价,达到或超越了它的质量。1 凭判断而非凭时钟来压缩,意味着智能体压缩的频率更低、时机更佳,因此它为更少的总结过程付费,也重建更少被丢弃的结果。阈值方法并非偶尔失准,而是在质量相当或更差的情况下系统性地更为昂贵。

在长周期任务上削减30%到70%的成本,可不是一个舍入误差。对任何大规模运行智能体的人来说,压缩策略是一项成本科目,而这篇论文表明,大多数脚手架默认搭载的那套策略,正在为它本不需要的总结过程付费。

这对运行智能体的人意味着什么

实用的启示并不是”现在就去实现SelfCompact”。大多数操作者并不能直接控制其智能体的压缩触发条件。真正的启示是,压缩是一项可调的策略,带有实实在在的质量与成本后果,而那个阈值默认值值得质疑。

把压缩边界当作语义性的,而非数字性的。 当你为一项长任务搭建结构时,给智能体留出自然的停止点:完成一个文件、结束一个子任务、抵达一个检查点。在子任务边界压缩的智能体不会丢失任何它所需要的东西。在token边界压缩的智能体则会丢失它恰好正握着的一切。操作者的工作部分在于塑造轨迹,使安全的时刻与压缩的时刻彼此对齐。

把重新推导当作一种症状来留意。 如果一个智能体从压缩中回来后重做了它已经做完的工作,那就是触发条件在错误的地方触发了。重新推导是压缩失准的可观察特征,而只要你留心去找,它就是一项你能在轨迹中看见的成本。

预期触发条件将转移到模型内部。 SelfCompact无需微调,这意味着它是一种任何脚手架都能采纳的提示加工具模式。它在开放权重模型上的干净结果表明,这将成为一种默认做法:智能体自行决定何时压缩,而不是等着运行时来强制。回过头看,阈值会显得像是一种把上下文当作待清空的缓冲区、而非待管理的工作记忆来对待的产物。

我在与智能体打交道时反复遇到一个更宽泛的模式。难点很少在于能力。前沿模型能够出色地总结一段轨迹。难点在于元认知:知道何时去做那件它本就知道怎么做的事。压缩时机,正如知道何时该请求确认何时该停止一个研究循环一样,是一种自我监控的决策,而自我监控正是当前这一代最薄弱的地方。每一种情形下的解法都是SelfCompact所采用的同一种形态:别再指望模型自己注意到,直接递给它一份用于做出判断的明确评判准则。

关键要点

对智能体操作者: - 审查你的脚手架在何时压缩。如果它在token阈值上触发,那它的触发就没有考虑智能体是否正处于任务中途。 - 围绕明确的检查点来组织长任务,让压缩边界落在安全的时刻,而非任意的时刻。 - 把压缩之后的重新推导当作触发条件中的一个缺陷,而不是模型的一种怪癖。

对构建脚手架的人: - 一个压缩工具加上一份触发/抑制评判准则,能以更低的成本击败固定间隔,且无需任何微调。 - 把两种能力分开:模型总结得很好,但对时机的判断很差。把你的设计精力花在时机准则上,而不是总结器上。

对任何在为智能体运行做预算的人: - 压缩策略是一项成本科目。在该研究中,一个基于判断的触发条件将每道题的成本削减了30%到70%,且质量相当或更佳。

常见问题

什么是上下文压缩?

上下文压缩是把智能体累积的轨迹(其思维链和工具调用)总结成一种更简短的形式,使轨迹不至于超出模型上下文窗口的容量。它以细节换取空间。做得好,它会在保留智能体仍然需要的东西的同时移除陈旧的内容。在错误的时刻去做,它会丢弃智能体不得不重新计算的部分结果。

为什么token阈值是一个糟糕的压缩触发条件?

token阈值衡量的是上下文的大小,而非其结构。它无法分辨智能体究竟是刚刚完成了一个子任务,还是正进行到一个推导的一半。在后一种情形下触发会丢弃模型付出代价计算出的中间结果,迫使代价高昂的重新推导。触发条件应当反映智能体在工作中所处的位置,而这是计数器看不到的。

SelfCompact如何决定何时压缩?

它将一个模型可调用的压缩工具,与一份明确规定何时触发(子任务已解决、轨迹正在收敛)以及何时抑制(推导中途、或陷入僵局)的评判准则配对在一起。模型本就总结得很好;准则提供了它在无人提示时所缺乏的时机判断。该方法无需微调或外部监督。

这需要一个特殊的模型吗?

不需要。这篇论文评估了七个模型,包括开放权重模型,而这一模式仅凭提示和工具使用就能奏效。这使得任何脚手架都能在无需重新训练的情况下采纳它。

基于判断的压缩能省下多少?

在该研究中,SelfCompact达到或超越了固定间隔总结,同时每道题少花30%到70%,并在数学上以最高18.1分、在智能体式搜索上以5到9分的优势击败了不做总结的基线。


来源


  1. Li et al., “Self-Compacting Language Model Agents,” arXiv:2606.23525 (June 22, 2026)。摘要报告了工具加准则的设计、两个组件的必要性、无需微调的结果、六个基准测试与七个模型的评估,以及量化收益:相对于不做总结的基线,在数学上最高18.1分、在智能体式搜索上5到9分,且每道题成本降低30%到70%;并以仅相当于token成本一小部分的代价达到或超越固定间隔总结。 

  2. Anthropic, “Explore the context window,” Claude Code文档:”Claude Code compacts automatically as you approach the limit, so a full context window doesn’t end your session.” code.claude.com/docs/en/context-window 

相关文章

复合上下文:为什么AI项目越做越顺手

你用AI智能体解决的每一个问题,都会沉淀下上下文资产,供下一次会话连本带利地提取。这就是上下文复利效应。

1 分钟阅读

交接文档:跨会话的智能体记忆

一份诊断经历四天内三次修正后仍然存活,并指导了一项将页面加载从14秒缩短至108毫秒的修复。交接承载着智能体无法自行获得的上下文。

1 分钟阅读

你的AI智能体写代码的速度远超你的阅读速度

本周有五个研究团队发表了关于同一问题的研究:AI智能体生成代码的速度远快于开发者理解代码的速度。债务积累在你的脑中。

4 分钟阅读