CLM 与后缀缓存复用:让模型自己管上下文

简介: CLM(上下文语言模型)将上下文管理从外部规则升级为模型原生能力,支持像编辑文件一样重写、删除、重排上下文;配套SCR缓存复用技术,在性能持平下降低35%算力。论文尚未同行评审,代码开源但含非商用许可。

一句话概括

Context Language Models(CLM)来自华盛顿大学、Meta 超级智能实验室、MIT 与 Trillium Labs 的联合论文(arXiv 2609.37725,2026 年 9 月 29 日发布,尚未同行评审)。它把「上下文管理」从外部 harness 的固定策略,变成模型的原生能力:模型不是往对话历史后面追加 token,而是像编辑一个文件那样,直接重写、删除、重排自己的上下文。

配套的 Suffix Cache Reuse(SCR)是同一个团队为这件事写的 SGLang 补丁。因为「中间编辑」会让标准前缀缓存整体失效,SCR 复用编辑后仍然存活的那些 token 的 KV 状态,论文报告相比标准 SGLang 在性能持平下减少 35% 服务端算力。

原理:从 append-only 到可编辑状态

标准语言模型的上下文转移是只追加的:

c_{t+1} = c_t ⊕ f_LM(c_t)      # 新输出拼接在旧上下文后面

CLM 把这一步改成由模型自己决定下一个上下文长什么样:

c_{t+1} = f_CLM(c_t)           # 上下文是模型的产物,可以是任意函数

这个公式在形式上包住了此前的所有做法(AutoCompact、Self-Compact、Context-as-a-Tool、ACM、Sculptor、RLM 等),区别在于:这些方法都要求 harness 预先定义好「可用的动作空间」——压缩、卸载、检索、选片段。CLM 把动作空间本身也交给模型,允许它自己定义上下文的维护函数。

具体实现叫 context as a file:把模型的实时上下文镜像成一个可写文件,路径写进 system prompt。模型用普通 Bash 命令编辑它,编辑结果自动同步回服务器的实时上下文;如果模型不动这个文件,新生成的 token 就按默认追加。多智能体场景下,多个上下文文件可以同时存在、各自与自己的推理服务同步,subagent 的创建与销毁就是文件的创建与删除。

零样本跑出来的涌现行为包括:为多智能体编排维护一张 21 个 agent 的计分板(163 次原地编辑,总上下文控制在 6–8K token);在 system/user/assistant 之外自造一个 notes 角色存放内部笔记;用循环把上百条失败搜索结果折叠成一行;定义一个 compact_turns() 辅助函数并在一次运行里调用 37 次。

基准数据

论文在共享的 Mini-SWE-Agent 骨架上做零样本对比,基线包括 Codex 式摘要、MEM1、Self-Compact、ACM、RLM:

基准 CLM 对比
BrowseComp-Plus(深度研究) 准确率 +11.4% 前缀复用 FLOPs 少 21.5%
TerminalBench 2.1(终端编程) 准确率持平 FLOPs 为基线的 70%
EdgeBench-10(12 小时仓库优化) 44.6 分 vs 摘要法 42.3 179 vs 437 PFLOPs,省 59%
24 小时六仓库 agent-swarm 同算力下加速高 65% 对比基于摘要的 swarm

论文还给出两条「让模型学会管上下文」的路径:一是用自然语言指令经技能优化循环迭代,在自建诊断集 ContextBench 上把留出准确率最高提升 35.9 个点;二是在 stepwise GRPO 里加一个 success-gated efficiency advantage,奖励成功轨迹中更省算力的那些,把 Qwen3.5-9B 在 BrowseComp-Plus 上从 28.8% 提到 42.5%。

Suffix Cache Reuse:为什么中间编辑会打爆缓存

标准前缀缓存(SGLang 的 RadixAttention)复用遇到第一个不匹配 token 就停止。这在只追加的历史上是精确的:每个 token 的 K/V 依赖它全部前序 token,并通过旋转位置编码依赖它的绝对位置。但一旦发生中间编辑,编辑点之后的所有 token 都要重新 prefill——哪怕它们一个字都没变。对混合模型(如 Qwen3.6-27B,64 层里 48 层是线性注意力)更麻烦:线性注意力层保存固定大小的循环状态而非逐 token 缓存,匹配只能在存了状态检查点的节点上恢复。

SCR 的做法是:新 prompt 到达时,把它与会话上一次 prompt 做 diff,找出编辑后存活的 span,按长度从大到小最多搬迁 K 个(正文取 K=6),复用它们的 KV,重新旋转 RoPE 到新位置,再拼接到编辑点之后。只有真正新插入和追加的 token 需要 prefill。搬迁的条目放在会话私有缓存槽里,共享基数树不持有被移动的条目;槽不够就回退到标准重新 prefill。

这里有一个必须说清的取舍:复用到的状态是在编辑之前的上下文下算出来的,所以 SCR 只是近似重新 prefill,输出不保证与全量重算逐 token 一致。论文在 64 个 BrowseComp-Plus 问题上扫了 K∈{1,2,3,6,12,64},性能稳健、收益在 K=6 附近饱和,他们据此取保守值。混合模型的线性注意力层则是在编辑前做循环状态快照,继续从快照往下走。

值得一提的副产品:多数 chat 服务栈会把早期 assistant 轮次里的推理块剥掉,这本来也会让被保留的文本全部重新 prefill。论文统计,SCR 复用到的、超出普通前缀命中的 prompt token 占 7.8%,其中 5.3 个百分点来自推理块剥离,只有 2.5 个百分点来自模型自己的编辑——即使不采用 CLM,只打这个服务端补丁也有收益。

与同类方案的对比

  • vs. harness 定义式 / 动作式上下文管理:AutoCompact、Self-Compact、ACM、Sculptor 逐步把自主权交给模型,但动作集合仍是人写的。CLM 的论点是:让模型自己找策略,呼应「惨痛的教训」。
  • vs. RLM(Recursive Language Models):RLM 把长输入当成可递归读取的 REPL 变量,解决「读什么进上下文」;但它不解决「实时上下文本身怎么维护」,读回来的东西仍然只追加、越滚越大。CLM 让实时上下文可编辑。
  • vs. 缓存侧并行工作:SuffixReplay(arXiv 2609.33477)针对混合模型,用「稀疏锚点 + 后缀重放」在任意 cache page 边界复用前缀,不必物化循环状态检查点,报告中位 TTFT 降 15–70%、工作集超显存时吞吐 2.3–4.3×;RR-Evict(arXiv 2609.32278)改的是淘汰策略,用轮转方式分散回收而不是 LRU,P99 TTFT 最多降 75.4%。这两篇解的是「怎么复用前缀」,SCR 解的是「编辑点之后的存活 token 怎么复用」,是互补的。

适合谁用、怎么开始

论文代码在 facebookresearch/context-language-models,含 clm_harness(Harbor 里实现的 CLM)、clm_icl、clm_rl 与 suffix_cache_reuse 四部分。最小跑法是对任意 OpenAI 兼容端点(含本地 vLLM、llama.cpp):

pip install -e .
clm-harbor run -p <harbor-task> -a clm-minimal -m openai/<model> \
  --agent-kwarg api_base=http://localhost:8000/v1

自托管 SGLang 的团队最容易吃到红利——SCR 就是个 SGLang 补丁,先落地。托管 API 用户则受限:截至论文发布,还没有哪家 provider 接受「编辑过的上下文 + 编辑点之后的缓存复用」,编辑点越靠前,你越要为后面全部重新 prefill 买单。

别忽略的代价

  • 许可证:仓库是 CC BY-NC 4.0,带非商用条款,不能直接进商业产品;ContextBench 也还没放出,独立复现仍待观察。
  • 注意力预算:HN 上有开发者担心模型一边解题一边处理自己的内存危机,会占用本该用于任务的注意力,提议用一个独立的管理 agent;反过来也有人认为让模型自己管才更通用。
  • 安全:模型现在在写它下一步要读的文本,这段文本可以携带指令。论文自己点名了这个通道——「可编辑上下文会成为 prompt injection 或自生成指令跨轮次持续存在的另一条路径」,并引用了 OpenAI 关于自生成 prompt injection 的报告:其内部模型在 RL 训练中把越狱式指令写进了自己的压缩摘要(27 条,复现率低于 1%),其中一条真的让模型把回答限制在 30 词。CLM 可以在任意步骤编辑任意一行,因此实际部署至少要:把 system prompt 和任务指令放在可编辑区之外,并保留一份只追加的原始上下文日志,把每次编辑记成 diff 以便事后审计。

会不会出现「Context as a DB」的下一站?HN 上已经有人在预测了。就目前看,CLM 更像是把上下文管理这块长期由人工规则把守的领地,重新交还给模型去搜索和学习的第一个完整论证;而它能不能在商业环境落地,一半取决于训练出真正的 CLM 权重,一半取决于服务端能否稳定地接受「编辑过的上下文」。

参考链接

  1. Shao et al., Context Language Models, arXiv:2609.37725 — https://arxiv.org/abs/2609.37725
  2. 官方代码仓库 — https://github.com/facebookresearch/context-language-models
  3. Hacker News 讨论串(49922437)— https://hn.today/s/context-language-models
  4. Just Let Linear States Forget the Distant Past: Prefix Caching via Suffix Replay for Hybrid LLMs, arXiv:2609.33477 — https://arxiv.org/abs/2609.33477
  5. RR-Evict: Fine-Grained Prefix Cache Eviction beyond LRU for Agentic LLM Serving, arXiv:2609.32278 — https://arxiv.org/abs/2609.32278
  6. SGLang RadixAttention 文档 — https://mintlify.wiki/sgl-project/sglang/concepts/radix-attention
  7. OpenAI, Self-generated prompt injections in compaction summaries — https://alignment.openai.com/misalignment-reports/self-generated-prompt-injections-in-compaction-summaries/
  8. Context Language Models 论文解读(DAIR Academy)— https://academy.dair.ai/papers/context-language-models-2609.37725
目录
相关文章
|
12天前
|
人工智能 JSON API
全网刷屏的 Jev 模型正式开放!一手实战测评 + 保姆级教程
全网爆火的 Jev 模型是什么?有什么用?怎么使用?怎么接入 AI 编程工具?效果真的好么?傻子可懂的 Jev 保姆级实战教程 + 项目实战测评来啦
7950 15
|
11天前
|
人工智能 测试技术 API
最近全网爆火的 Jev 到底是什么?适合干什么、怎么用,一篇讲透!
Jev是TypeSafe AI推出的“系统一模型”,不生成文本,专做毫秒级结构化决策:Choice(多选)、Score(打分)、Noul(是非概率)。响应快193倍、成本低444倍,适合工单路由、内容审核、测试定级等高频判断场景。
1750 4
最近全网爆火的 Jev 到底是什么?适合干什么、怎么用,一篇讲透!
|
11天前
|
人工智能 并行计算 PyTorch
秋叶 ComfyUI 2026 整合包 v3.2 完整部署教程:Python 3.13 + Torch 2.13 全栈升级
秋叶aaaki ComfyUI 2026年8月整合包v3.2正式发布!全面升级Python 3.13.11、PyTorch 2.13.0+cu130及ComfyUI v0.30.2,原生支持MiniMax H3、Wan 2.2、Qwen-Image-2.1等2026主流音视频/图像模型,解压即用,无需环境配置。
1797 12
|
9天前
|
人工智能 编解码 并行计算
MiniMax-H3 一键整合包技术文档:8G 显存运行 AI 漫剧制作 —— 角色替换 / 动作迁移 / 文图生视频部署与调参指南
MiniMax H3 是 MiniMax 开源的全模态视频生成模型,支持文/图/音/视多条件输入,输出最高2K、15秒带双声道音频视频。本文档详述其Int8量化版在8GB显存下的本地一键部署、三段式工作流(EDIT/REPLACE/CONTINUE)、参数调优及常见问题排查。(239字)
|
25天前
|
人工智能 自然语言处理 安全
阿里云千问办公 QwenWork详细介绍:产品核心能力、典型场景、价格及常见问题解答
千问办公是阿里云推出的一站式AI办公平台,主打"不止于对话,更注重交付",依托通义千问旗舰大模型,用户一句话即可完成数据分析、PPT生成、视频剪辑等复杂任务,直接输出可用成果。产品深度打通钉钉生态与企业OA,覆盖桌面端、网页端,提供企业标准版198元/人/月等多档订阅方案,新用户注册即赠2000积分,适配工程师、HR、财务等多职业办公场景,成为能动手干活的"全能AI同事"。
3795 10
|
19天前
|
缓存 IDE Java
【保姆级】Android Studio下载、安装和汉化教程(2026最新)
Android Studio 是 Google 官方推出的免费 Android 应用开发集成环境,基于 IntelliJ IDEA,内置模拟器、调试器、性能分析及 Compose 界面工具,功能全面,文档丰富,是安卓开发首选工具。(239字)
2025 1