大模型服务的主战场,正在从单轮聊天转移到检索增强问答、多文档摘要和长程Agent。这类新负载有一个共同特征:一条请求的prompt往往由几十到上百个语义独立的片段拼接而成,检索到的文档、技能说明、记忆文件、历史轮次被组装成数万乃至数十万token的超长上下文。
在这个长度下,预填充阶段主导了单请求的算力开销,成为服务商最显著的成本来源。更棘手的是,一旦发生缓存未命中,尾部首token延迟能冲到数十秒,直接拉垮交互体验。
两条降本路线,偏偏互不兼容
业界为此发展出两条技术路线
一条是位置无关缓存。它放开严格的前缀约束,让每个语义独立的片段只缓存一次、并能拼接到任意前缀之后,恰好贴合RAG与Agent的prompt组装方式。

另一条是混合注意力模型。用线性注意力替换大部分全注意力层,把注意力的二次复杂度压到线性,并将无界的历史压缩成固定大小的循环状态。近来的生产模型如MiniMax-M1、Ring-2.5、Qwen3.5、Kimi-Linear,普遍把75%以上的层线性化,仅保留少量全注意力层。以Qwen3.5-35B-A3B为例,40层里有30层是线性层。
矛盾恰恰出在这里:现有PIC操作的是逐token的KV缓存,而线性注意力层只向外暴露一个per-request的循环状态,没有任何逐token的抓手可供splice或correction。结果是,混合模型里的大部分层都落在了现有PIC的能力范围之外。在此之前,没有任何系统能为混合注意力大模型提供位置无关缓存。
HYPIC:三个机制,分而治之
小红书大模型推理团队联合北京大学、上海交通大学提出的HYPIC,是首个在混合注意力大模型上实现位置无关缓存的服务系统。核心思想是对混合注意力模型里的线性层和全注意力层分而治之,再用一层系统级并行把冷请求也一并加速。
第一,对线性层缓存“转移算子”,实现常数时间的状态组合
最直接的PIC方案是把两段各自的零初值末状态直接相加。这在朴素线性注意力下恰好成立,但在带衰减、门控、delta擦除的进阶线性注意力(RetNet、Mamba2、GLA、DeltaNet等)下会失效。真正被漏掉的关键量是段累积转移算子T_C——一段内所有token转移矩阵的连乘。真实的末状态应为S(C₁·C₂)=T(C₂)·S(C₁)+S(C₂),朴素相加恰恰丢掉了T(C₂)这一项。

HYPIC的关键洞察是:T_C和零初值末状态S(C|0)都只由片段内部的token决定,与前缀无关。因此它在片段首次prefill时把二元组(T_C, S(C|0))一并缓存,复用时按组合律左乘T_C再相加,即可在常数时间内近乎精确地还原任意前缀下的末状态。实测在Qwen3.5-35B-A3B上,组合后的状态在第0层与完全重算仅相差6×10⁻⁵,落在FP16噪声之内。
第二,对全注意力层用“缝合窗口”修复跨段注意力
混合模型中少数的全注意力层仍需要PIC,但以往的选择性重算无法直接迁移,因为下方的线性层仅保留末状态,非末尾token无法向上传递。HYPIC的观察是,KV拼接后的偏差高度集中在每个复用片段的开头部分,其余部分几乎不受影响。基于此,系统为每个内部片段开头w个token(默认w=8)构造缝合窗口,缓存时跳过这些token,复用时在完整前缀下重新计算以修复跨段注意力。
第三,系统级并行,把冷请求从尾部延迟变成可加速负载
HYPIC利用片段级的自包含特性,将缓存未命中的预填充并行化到多个实例上执行。这把长冷请求——在传统前缀缓存和已有PIC方案下都是尾部延迟的主要来源——变成了一个可加速的工作负载。
实测数据:首token延迟平均降3.25倍
HYPIC在4个生产级混合注意力模型、5个工作负载上的测试显示:
首token延迟平均降低3.25倍
相同SLO下可持续QPS提升1.66倍
任务质量与完全重算仅相差1.71分
峰值吞吐量较现有系统提升最高2.0倍
论文与代码均已开源。论文地址:arxiv.org/abs/2607.01299,代码仓库:github.com/redai-infra/HYPIC。
