把这九篇放在同一张图上,最有解释力的两个维度不是「方法」而是缓存的生产者与消费者是否共享同一组参数,以及复用是精确还是近似。这两维一划开,本篇的位置就唯一确定了:
| 精确复用(质量不是变量) | 近似复用(质量成为变量) | |
|---|---|---|
| 同一组参数 | vLLM PagedAttention(block 级共享 + copy-on-write)[2309.06180];SGLang RadixAttention(树形前缀复用 + 最优性定理)[2312.07104];Marconi(把这一范式扩到 Hybrid SSM)[2411.19379] | KVCOMM(同模型、跨前缀,用 anchor 近似 KV 偏移)[2510.12872] |
| 不同参数 | PrefillShare(用训练把「近似」消灭掉:冻结 base 产 KV,微调 decode 去读它)[2602.12029] | 本篇(闭式线性映射,不训练、不改模型) |
外圈还有三篇不产生缓存、但决定缓存值多少钱的论文:RouteLLM 决定何时在强弱模型间切换,也就是何时凭空产生一次跨模型缓存需求 [2406.18665];GORGO 把 prefix overlap 折算成毫秒塞进路由代价函数,是「缓存价值」被真正定价的地方 [2602.11688];KV cache 综述提供三层 taxonomy 坐标系 [2412.19442]。
逐篇说清关系:
1. 把「要不要训练」当成实验变量,而不是设计前提。 本簇里所有跨表示复用工作都预设了某种训练:PrefillShare 训 decode 模块(cache-conditioned fine-tuning,且必须用冻结 base 现算的 $C_{\text{base}}$ 喂训练,否则精度崩塌)[2602.12029];本篇 Table 6 列出的 C2C / LatentAlign 也都要梯度 [2608.03893]。本篇的问题换成了「这个关系是否简单到根本不需要训练」,答案是六对里四对够、两对不够。这个提问方式本身是贡献,与「方法多好」无关。
2. 一个可迁移的负面结果:重构指标不预测可转移性。 校准域 $R^{2}_{K}$ 与 HellaSwag retention 的跨对相关是 $-0.20$(符号是反的),attention-output cosine 是 $+0.57$ [2608.03893]。这条结论的价值超出本篇,因为同一条定律在邻居那里被独立观测到过:KVCOMM 的主表显示固定重算比例的 CacheBlend 在 GSM8K/HumanEval 上明显退化,作者的结论是「高复用率本身不足以保证质量」[2510.12872]。「拟合得好 / 复用得多 ≠ 下游没坏」在两个不同层级(张量重构 vs 缓存命中比例)被分别撞见,这提高了该定律的可信度,也说明近似复用时代缺的是一个子空间感知的验收标准,而不是更大的复用率。
3. 方向性资产这个概念。 之前所有 KV 复用工作的产物都是无向的:radix tree 的节点、vLLM 的 block、Marconi 的 (SSM state + KV) 节点,都属于「某个前缀」而不属于「某对模型」[2411.19379]。本篇第一次引入按有序对索引的持久化资产,$P(P-1)$ 个、每个约 6.5 GB [2608.03893]。这是一个新的成本科目,不是既有科目的优化。
RoPE 处理:借来了一台为别的病设计的机器。 本篇的第三个部件(剥离 source RoPE → content 空间线性映射 → 重加 target RoPE)与 KVCOMM 的第一步机制上同构,但两处的实测价值相反:KVCOMM 的对齐消融显示三步(旋转对齐 + placeholder 偏移 + prefix 偏移)缺一不可 [2510.12872],而本篇 Table 2 的 "$-$ all RoPE" 行在每一列都落在 Full 的噪声内 [2608.03893]。
矛盾根源(两者在各自范围内都对):KVCOMM 的复用发生在同一模型的不同绝对位置上,误差里真有一项位置相位,去旋转把它精确消掉,所以是承重件——它的实现笔记甚至强调「否则偏移统计会被位置相位误差主导」[2510.12872]。本篇的 source 与 target 在同一 token 位置上,位置相位本来就是对齐的;对两端同时施加正交变换只是把回归问题做了一次相似变换,残差几乎不动,所以实测为零。这个调和给出一个具体预言:本篇的 content-space 映射只有在 source/target 的 RoPE base 或 scaling 不同、或缓存被在与校准不同的位置上重放时才开始付钱——也就是那个从未做过的「1k 拟合、8k/32k 测精度」实验($\S4.7$ 的 32k 只测了延迟)[2608.03893]。
「一个承重件」是不是本簇通病? 是分布性的,但本篇的位置最差:
| 论文 | 宣称部件数 | 被独立隔离出正贡献的部件 | 隔离手段 |
|---|---|---|---|
| Marconi | 2(admission / eviction) | 2 | 专门造了 SGLang+(=自己的 admission + LRU eviction)来单独量 eviction [2411.19379] |
| SGLang | 4(tree / cache-aware sched / frontend 并行 / fork hint) | 4 | 逐项移除均退化 [2312.07104] |
| KVCOMM | 3(旋转 / placeholder / prefix 偏移) | 3 | 任意删减都掉点 [2510.12872] |
| PrefillShare | 1(cache-conditioned FT) | 1 | 朴素共享在高共享比下崩塌 [2602.12029] |
| 本篇 | 3(ridge / cross-layer / content-space) | 1(cross-layer),且幅度被 $\lambda$ 失配放大 | 无对应控制组 [2608.03893] |
PrefillShare 同样只有一个承重件,但它把方法就定义为那一件,管线部分明说是工程。本篇的问题是presentational + 一处可修的实验缺口:Marconi 的 SGLang+ 正是本篇缺的那个控制组的模板——它把两个部件之一按住不动来量另一个。本篇的对应控制组是「$k{=}1$ 且 $\lambda$ 按 $k{=}1$ 的 Gram 尺度重新标定」,从未跑过,因此 Table 2 第 4 行的崩塌里有多少属于 cross-layer 信息丢失、多少属于过度收缩,目前无法拆开 [2608.03893]。
「把 prefix caching 从单模型推广到跨模型」这个 framing 与 SGLang 的性质结构冲突。 SGLang 的复用是精确的、带最优性定理的、零复用时开销 <0.3% 的,所以猜错的代价约等于零,可以无条件常开 [2312.07104]。本篇的复用是近似的、无保证的、需要 4–12 GB 常驻或换页的,六对里两对崩到 floor-normalized 11–15%(MMLU 甚至 $-0.5$%)[2608.03893]。事实层面不矛盾,但「推广」这个词掩盖了一次性质降级:prefix caching 之所以能成为默认开关,恰恰因为它精确。把同一个词用在一个必须先做 per-pair 准入筛选的机制上,会让读者按错误的风险模型去估算它。
对照基线的选择上,本篇与 PrefillShare 分道扬镳,而 PrefillShare 是对的那一边。 PrefillShare 的分母是 Full-FT——「如果你拒绝共享,你会部署的那个东西」[2602.12029]。本篇的分母是 target standalone——「如果你切换了并且重新 prefill,你会得到的那个东西」。后者是两个相关反事实中的一个,而被丢掉的那个(继续用手上的小模型)恰恰是 binding 的那一个。这直接通到 §可攻击面。
在综述的 taxonomy 里本篇无处安放,而这正是它的坐标。 综述的三层按「你改什么」组织:token-level 不改架构、model-level 要重训、system-level 只动基础设施 [2412.19442]。本篇不压缩 token、不重训、也不管内存——它做的是跨参数集的表示翻译。更本质的差别在成本结构:综述的复杂度模型里所有项都以 $t_c$(缓存 token 数)为尺度 [2412.19442],三层方法全都在削减某个与 $t_c$ 成比例的项;本篇引入的项与 $t_c$ 无关,只与车队组成 $P(P-1)$ 有关 [2608.03893]。综述里没有任何一个轴按车队组成索引,所以这不是「跨层集成」(综述 §8 指出的那个 gap),而是一个新维度。
顺带一处支持本篇构造的跨篇证据:综述记录 KVQuant 发现 key 的 outlier 在 RoPE 之前集中在特定 channel、RoPE 旋转后 magnitude 分布变得不规则,因此正确实现必须在 RoPE 之前做 per-channel 量化 [2412.19442]。这是一条完全独立于本篇的证据,说明 pre-RoPE 的 key 空间确实是结构更规整的那个。也就是说本篇 content-space 映射的动机得到了外部支持,尽管它的实测收益为零——这两件事可以同时为真,正确的表述是「构造上正确、当前实验设置下无法体现」。
这是最强的一条,因为它用的是本篇动机所属文献自己的度量。RouteLLM 的 PGR 分母同时含强弱两端:$\text{PGR}=(r(\text{route})-r(M_w))/(r(M_s)-r(M_w))$,PGR $=0$ 的含义是「你没比弱模型做得更好」,也就是路由没有价值 [2406.18665]。本篇 Table 13 的差值(transfer $-$ source standalone)显示四个 Tier 1 对的五项均值全为负:$-0.43$ / $-5.17$ / $-9.14$ / $-11.92$ pp [2608.03893]。换成 RouteLLM 的语言:一个升级到大模型并使用了转移缓存的 router,PGR < 0,比随机路由差,也比根本不升级差。
真正致命的不是均值为负,而是符号的分布与路由价值反相关。本篇的正收益全部落在 zero-shot 分类(ARC-C / HellaSwag / WinoGrande,$+0.5$ 到 $+3.7$ pp),退化全部落在 5-shot MMLU 与 8-shot CoT GSM8K,且随对子变远而放大(Llama 8B→70B 的 GSM8K 转移后 14.78,而 8B 自己有 56.10)[2608.03893]。而 RouteLLM 的整个价值主张是 CPT(50%) $=13.4\%$:只把 13.4% 的 query 送给强模型,送的是难的那些 [2406.18665];GSM8K 恰恰是 RouteLLM 里最难路由、必须靠 augmentation 才能翻到随机线以上的那个 benchmark [2406.18665]。也就是说:本篇的转移在 router 会升级的子群上失效,只在 router 本来就该留在小模型上的子群上有正收益。
替本篇辩护,以及为什么辩护不完全成立:(a) 可以说 PPL 证明信息确实转移了(Llama 8B→70B 转移 PPL 4.37 介于 5.58 与 2.47 之间)[2608.03893]——成立,但 PPL 不是任务度量,本篇自己的成功判据就下在指标层 [2608.03893]。(b) 可以说 CoQA 十轮切换漂移只 1.7 pp——但 CoQA F1 是短答案抽取,不是赤字所在的 CoT 生成 regime。(c) 可以说切换动机未必是质量——这条成立,且指向本篇真正的生态位,见 §生态位;代价是要放弃论文自己写的 cost-quality cascading 动机。
本篇的诊断量(K/V-concentration、attention-output cosine)要求同时拿到 target 的 per-head query 与真值 attention 权重,且必须在评测域而非校准域上算——同一个 mapper 校准域 $R^{2}_{K}{=}0.84$、评测域 $-7.81$,域选错结论整个翻过来 [2608.03893]。真值 attention 权重来自 target 自己的前向,也就是转移本来要省掉的那次计算。所以这套诊断只能离线做对级准入,永远不能做请求级门控。
对照本簇:KVCOMM 有显式的 verify → 失败回退 dense prefill,且 anchor 的更新/剪枝统一在「解码后验证」阶段提交,避免低质量样本污染 anchor 池 [2510.12872][2510.12872]。Marconi 的 admission 是每请求一次的判定(speculative insertion + 两类 reuse taxonomy)[2411.19379]。SGLang / vLLM 不需要门控,因为复用精确 [2312.07104]。本篇既是近似的、又没有门控,是九篇里唯一的组合。这个洞在攻击一的背景下变得严重:一个对子可以在五项均值上进 Tier 1,同时在 CoT 子群上崩掉,而没有任何机制在请求级把这些请求挡回 re-prefill。更糟的是,本篇的失效是不可事后补救的——等到发现输出不对时 prefill 已经被跳过、token 已经解出来了,而 KVCOMM 的回退发生在验证之后、污染之前。
本篇的 2.7–25$\times$ 明确不含把映射后的 cache 送到 target 进程的开销 [2608.03893]。两条邻居证据说明这不是可忽略的常数:
GORGO 提供了唯一的换算工具:$t_p=0.0938$ ms/token,因此 1000 token 的缓存只值 94 ms,常不及跨区 RTT [2602.11688]。用它来给本篇记账:
| 项 | 数值 | 来源 |
|---|---|---|
| mapper 应用(Qwen3 14B→32B, 8K token) | 67.8 ms(对应 re-prefill 1154.8 ms) | [2608.03893] |
| mapper 体积 / 换页 | 4–12 GB(fp32),换页 80–480 ms(算出来的,非实测) | [2608.03893] |
| $P=5$ 车队总量 | $\sim$131 GB(fp32;若改 bf16 减半) | [2608.03893] |
| GORGO-proxy median / P99 TTFT | 224 ms / 436 ms | [2602.11688] |
结论很直白:warm mapper 压倒性胜出(67.8 vs 1154.8 ms),cold mapper 的换页 80–480 ms 单独一项就横跨 GORGO 的整个 median TTFT 并逼近其 P99。 所以真正的隐藏变量是驻留概率,而它随 $P(P-1)$ 单调恶化:$P=5$ 时 131 GB 的 fp32 权重不可能与 32B、14B 模型同住一个 8$\times$H100 节点。没有任何一篇论文测过这个驻留率,本篇也没有把它写进延迟表的口径里。附带一条本篇未披露的杠杆:L2 由参数量与落盘 GB 反推出权重是 fp32 存储(前向却是 bf16),改存 bf16 可让体积与换页时间双双减半 [2608.03893]——这是目前账面上最便宜的一次改进,而论文里根本没提。
还有一个方向性问题被 GORGO 的架构原则点破:GORGO 的 LB 只维护 prefix trie 的轻量近似(hash → node),而非精确 KV state,理由就是路由侧状态必须便宜 [2602.11688]。本篇要求路由平面额外知道「这个有序对是不是 Tier 1」并保证对应的几 GB 权重可达。它把重状态推进了一个整个文献都在刻意保持轻量的平面。
映射后的 cache 与 target 自己算出来的 cache token 相同、数值不同。而 SGLang 的 radix tree 按 token 序列索引,GORGO 的 prefix trie 用 hash → node 近似同一件事 [2312.07104][2602.11688]。于是:一旦映射后的 cache 被插入 target 的前缀缓存,后续真正的同前缀请求会命中一份近似缓存,而它们本来享有的是精确复用。SGLang 的节点上有 lock_ref 管驱逐安全 [2312.07104],但没有任何「这份 KV 由别的模型产生」的 provenance 概念;vLLM 的 block table + refcount 同理 [2309.06180]。这是一条本篇、SGLang、vLLM 三方都未覆盖的正确性缺口,而且在多轮场景下会复利:近似 KV 成为后续轮次的前缀基底,L→S 那条 0.33 pp/turn 的线性漂移 [2608.03893] 就不再只是本次会话的事。对比 KVCOMM 明确用「验证后提交」防止低质量样本进入 anchor 池 [2510.12872]——同一个卫生问题,邻居解决了,本篇没有。
三个时代,本篇卡在第二和第三的交界。
本篇同时从第二个时代继承了「必须有请求级质量门控」的义务,从第三个时代继承了「必须进车队成本表」的义务,两项都还没结清。这不是说它站错了位置——它站的位置是真空的,而是说它的验收标准应当按这两个时代的规范来定,而不是按精确时代的「加速比」来定。
采纳证据的分布本身是一条结论。 精确时代的底座全部开源且已被生产采纳:SGLang 在 Chatbot Arena 跑了一个月、命中率 52.4% / 74.1% [2312.07104],并且是 GORGO 实测所用的运行时 [2602.11688];vLLM 已是事实标准推理引擎、被 HuggingFace / Ray Serve 等广泛集成 [2309.06180];Marconi 开源并附 artifact appendix [2411.19379],RouteLLM 开源 [2406.18665]。而近似 / 跨模型这一支整支都是闭源:本篇 [2608.03893]、PrefillShare [2602.12029]、KVCOMM [2510.12872]、GORGO [2602.11688] 都未公开实现。一个每篇结论都依赖「近似到什么程度还能用」的子领域,恰好整体不可复现——这使得跨篇校验(比如把本篇的 mapper 接到 KVCOMM 的 fallback 上)目前只能停在纸面。
本篇当下最站得住的生态位不是「替代 prefill」,而是「一台量具」。 它可迁移的资产是子空间感知诊断与那条负面结论(重构指标不预测可转移性)[2608.03893],而这条结论对整个近似时代都适用——KVCOMM 在缓存命中比例这个层级独立撞到了同一件事 [2510.12872]。
它作为方法的生态位则窄得多,但是真实的:切换不由质量驱动的场合。 容量故障转移、配额、模型下线迁移、灰度 A/B——这些场景里「继续用小模型」不是选项,于是攻击一赖以成立的那个缺失基线自动消失,target standalone 就是正确的分母。值得注意的是这个场景没有任何一篇路由论文覆盖:RouteLLM 是质量驱动的二元路由且单轮无状态 [2406.18665],GORGO 是延迟驱动的跨区路由 [2602.11688],两者都不建模会话中途的被迫迁移。本篇应该把自己放在这里。
与 PrefillShare 的分工可以精确划出来,靠的是访问权限而不是精度。 本篇需要对 source 与 target 的只读白盒访问(要拿 target 真值 KV 当回归目标)但不改任何权重;PrefillShare 需要对 decode 模块的写权限(微调)并且要求把拓扑改成「单一冻结 base 占 prefill pool」[2602.12029]。所以:能跑但不能改 target 时用本篇,能改时用 PrefillShare。后面 §未探索方向 会说明为什么在「能改」的情况下几乎总该选 PrefillShare 那一侧。
1. Provenance-tagged 缓存(技术上今天就能做)。 给 SGLang 的 radix 节点 / vLLM 的 block table 加两个字段:产出模型 id 与 fidelity 标记,使近似 KV 不会被后续同前缀请求当成精确缓存命中(攻击五),并让驱逐优先淘汰近似块。可行性有先例:Marconi 已经把节点 schema 扩成 (SSM state + KV) 并用 FLOP-per-byte 而非 recency 打分 [2411.19379],把效用扩成 $\text{FLOP saved / byte} \times \text{fidelity}$ 是同构改动。这同时给出一个本簇缺失的旋钮:在缓存压力下,近似块应该比精确块更早被丢掉,因为重算它反而恢复了精度。
2. 不需要 target 前向的请求级门控。 本篇的诊断量做不到(攻击二),但失效模式的结构给了一条便宜路子:赤字集中在 5-shot 与 CoT,而校准数据是 1,024-token 的 FineWeb-Edu 散文,域敏感性也已被量化(CodeAlpaca $-5.24$ pp)[2608.03893]。于是可以用prompt 分布而非 cache 质量做门控:检测 few-shot 模板 / CoT 触发词 / 代码域,命中则走 re-prefill。代价接近零、可离线校准、且直接对准已知的失效子群。更进一步的混合体是「映射为基底 + 选择性重算」:KVCOMM 已证明固定比例重算不稳定 [2510.12872],但按 K/V-concentration 挑位置重算是完全不同的策略,没人试过。
3. 车队规模决定了应该训消费者、而不是训翻译器。 本篇用 per-head MLP 修好了两个失败对($+24.3$ / $+36.8$ pp),代价是放弃 gradient-free 这个差异点 [2608.03893]。既然梯度反正要付,就该问付在哪一侧更划算——而答案由标度律给出,不由精度给出:翻译器侧的成本按有序对 $P(P-1)$ 增长、每个 1.01–3.36 B 参数 [2608.03893];消费者侧(PrefillShare 的路线)是每个模型微调一次 decode 模块,成本 $O(P)$,且它已经证明在 1.7B/8B/14B 三档上都能追平 Full-FT、无需 base 与微调模型间的参数同步 [2602.12029][2602.12029]。这条推论两篇论文都没写出来:一旦要付梯度,$O(P)$ 的消费者侧适配在车队尺度上支配 $O(P^2)$ 的翻译器侧适配。未探索的中间点是把本篇的闭式 mapper 当作初始化或蒸馏目标,只对 target 的前若干层做 cache-conditioned 微调——用最小梯度预算换掉 6.5 GB/对 的资产。
4. 带 fidelity 项的路由代价模型。 GORGO 的加性模型是 $\text{Cost}=\text{NetLatency}+t_p\cdot\text{PrefillCost}+\hat q_s\cdot\text{QueueWait}$ [2602.11688]。接入跨模型 mapper 后需要两项新东西:把 residual prefill 换成 $\min(t_p\cdot L,\ \text{MapperApply}(L)+\text{PageIn}\cdot\mathbb{1}[\text{cold}])$,以及一个质量损失项 $\lambda_q\cdot\mathbb{E}[\Delta\text{quality}\mid \text{pair},\text{prompt class}]$。第二项是全新的:到目前为止每一个路由代价模型都隐含假设缓存复用是质量中性的——这在精确时代为真,在近似时代为假。RouteLLM 把质量放在路由目标里但假设缓存无关 [2406.18665],GORGO 把缓存放在代价里但假设质量无关 [2602.11688]。同时含两项的模型不存在,而本篇的数据恰好是构造它所需的第一批经验分布。
5. Hybrid 架构上的跨模型 state 映射(结构上更有利,且难在别处)。 本篇明确把 hybrid / attention-recurrent 排除在外,Marconi 解释了为什么这不是顺手扩展:SSM state 就地更新、不可回滚、尺寸恒定、比单 token KV 大 10–100$\times$ [2411.19379]。但换成跨模型映射这个任务,同样这些性质反而变成优势:state 尺寸恒定意味着映射是 state → state、参数量与序列长度无关,本篇那条「mapper 体积不随 cache 大小增长」的性质会变得更强;而 Marconi 证明 SSM 条目的 FLOP-per-byte 随 $L$ 线性发散而 state 尺寸固定 [2411.19379],意味着同一份映射资产的收益/存储比远好于本篇的 per-token matmul。难点会转移:没有 per-token 监督信号(state 是压缩摘要),而且「残差落在 attention 读不到的子空间」这条逃生通道不存在——recurrence 会把整个 state 都消费掉。这使 hybrid 版本同时是更好的工程标的和更严酷的机制检验,恰好能检验本篇「误差落点决定成败」这一解释框架是否只是 attention 的偶然性质。
6. 让「双端点 retention」成为该子领域的报告规范。 这是一条方法论修正而非研究方向,但它便宜且能立刻改变结论的可读性:任何跨模型 / 近似复用工作都应同时报 source 与 target 两个 standalone 端点,即 RouteLLM 的 PGR 形式 [2406.18665]。PrefillShare 事实上已经做对了(分母是 Full-FT,即拒绝共享时你会部署的东西)[2602.12029],本篇没有,而 Table 13 的原始数据其实已经在附录里、只差一次相减 [2608.03893]。