V4 里的 SWA是什么?

← 返回 CSA/HCA 一句话 · §4 异构 KV · KV Layout §State · 磁盘 Prefix §SWA 三档 · 答疑目录


一句话

SWA 保存最近约 $n_{\text{win}}$个 token 的 精确、未压缩 K/V,给当前 query 提供 局部因果邻域;与 CSA/HCA 压缩 entry 分池(State cache),eviction 与 磁盘 prefix 策略独立——部署上 SWA 常常是 per-token KV 体积大头

0. 四模块表里的 sliding window 指什么

Raschka 表 8-1演进总览 §1.2Attention 行业链 中,sliding windowSliding Window Attention(SWA,滑动窗口注意力)

维度说明
机制每个 query 只 attend 最近 $W$ 个 token 的 K/V(固定局部窗口),复杂度随序列长度 线性 而非 $O(L^2)$
行业语境Mistral 等长上下文模型常用此路数,介于 GQA(减 KV 头)与 MLA(低秩 latent 压缩 KV)之间
DeepSeek 落点V1–V3 主线走 MLA → DSA → CSA/HCAV4 把 SWA 作为 五类 KV 之一 与压缩 entry 分池KV Layout §State),保证最近邻域 不丢 token 级精度

即:表里的 sliding window 是 行业演进节点;DeepSeek 在 V4 才将其 显式工程化 进异构 cache,而非 V2 引入 MLA 时的同代产物。


1. 在 V4 五类 KV 里的角色

维度SWACSA / HCA
表示每 token 一条 精确 K/V按块压缩 后的 entry(4:1 或 128:1)
覆盖范围最近 窗口内 局部远距 稀疏(CSA)或 全局摘要(HCA)
存放池State cache(per-request 块)Classical KV cache(对齐 $\mathrm{lcm}(4,128)$)
是否可落盘共享体积大、策略复杂(见 §3)CSA/HCA 压缩块易落盘

CSA/HCA 把历史 压短;SWA 保证 紧邻上下文 不丢精度——二者 互补,不是替代关系。


2. 为何不能只用压缩 entry

块压缩(4:1 / 128:1)会 损失 token 级精度。最近几十个 token 对语法、指代、工具调用格式等 极敏感;SWA 用 滑动窗口 保留这部分 dense 局部,与 CSA top-$k$、HCA dense 摘要 并行参与 同一层 attention 融合。


3. 推理 infra:体积与 prefix 策略

现象说明
体积Together 早期:全量 SWA 时 per-token KV 可 高于 仅 MLA 路径;瓶颈常在 SWA state 而非 CSA/HCA 本体(HiSparse 专文
Eviction与 C4 inactive offload 正交;可只保留 高复用 SWA 检查点
磁盘 Prefix论文 §3.5.2:Full / Periodic Checkpointing / Zero 三档——在 存储带宽 vs 命中重算 间取舍(专文

4. 与 V3.2 DSA 的对比

V3.2V4 SWA
局部性主要靠 顺序滑动 + indexer top-$k$显式 SWA state + CSA/HCA 压缩
Cache 类型Indexer-Cache + Latent-Cache五类异构对象之一

5. 相关阅读

文档内容
V4 KV LayoutClassical vs State 双池;SWA 进 State
V4 磁盘 Prefix CacheSWA 三档落盘策略
V4 HiSparseSWA 与 C4 offload 的容量权衡