音乐
暂未播放
WorldAttention 完全拆解:分层 KV 缓存如何支撑长时交互式视频生成
一道不能靠滑动窗口回避的系统难题#
交互式视频世界模型不是一次性生成固定时长的视频,而是按块持续向前生成:用户可以在中途改变文本指令,模型既要接住刚发生的动作,又要在新指令重新提到旧场景时恢复几十秒前的主体、背景和空间关系。自回归扩散把视频分成若干 chunk;当前 chunk 产生 Query,已经生成的 chunk 则提供缓存的 Key 与 Value。这个结构把长视频生成变成了一个不断增长的在线推理问题。
WorldAttention 由阿里巴巴达摩院、浙江大学、香港科技大学等团队在 2026 年 9 月公开,官方项目页标注为 NeurIPS 2026 reviewed/accept。它不是单独替换一个注意力公式,而是把注意力近似、KV 存储层次和 GPU Kernel 当作同一个系统问题联合设计。论文的出发点可以压缩成一句话:完整历史必须可访问,但完整历史不必全部常驻 GPU,也不必全部参加高精度注意力计算。
为什么常见的滑动窗口不能算真正的答案?设第 t 个视频块产生 nt 个视觉 token,窗口只保留最近 W 个块,那么 GPU 上的 KV 占用被约束为 O(Wntd),注意力计算也不会随整段视频无限增长。但被滑出窗口的 Key 与 Value 已经永久消失。若用户先让角色走进工坊,几十秒后切到街道,再要求“回到刚才工作台旁那把红色扳手”,模型面对的不是“算得慢”,而是“证据已经不存在”。窗口再快,也无法从被删除的状态里恢复细节。
另一条路线是保存全历史。若每个注意力层有 Hkv 个 KV 头、头维度为 d、数值宽度为 b 字节,累计 N 个 token 时,仅一条样本的 KV 体积近似为
MKV=2LlayerNHkvdb式中因子 2 对应 K 与 V,Llayer 是层数。存储随 N 线性增长;而当前 chunk 若与全部历史做稠密注意力,计算量约为 O(NqNd),Nq 是当前 Query 数。视频 latent 同时展开时间、高度和宽度,单帧就可能有上千 token,因而“只增长一秒”会同时放大容量、PCIe 搬运和注意力计算三笔账。
这形成三种互相牵制的目标:历史可恢复性要求不删除旧 KV;实时性要求每一步不能扫描完整历史;有限 HBM 又要求旧 KV 不能全部常驻显卡。WorldAttention 的答案是三层协同:HKV(Hierarchical KV Cache)决定“历史放在哪里、当前取哪些页”,HSA(Hybrid Sparse Attention)决定“取回后哪些关系值得精算”,定制 Kernel 则负责把动态稀疏真正变成连续、并行的 GPU 工作,而不是只停留在 FLOPs 账面上。
本文只讨论推理与部署机制。论文以 Wan2.1-T2V-1.3B 为基础获得交互式自回归视频模型,这里把模型适配视为背景,不展开训练配方;真正关心的是一次在线生成如何检索历史、组织 KV、执行注意力,以及论文中 14.02× 和 2.21× 两个加速数字为什么不能混为一谈。
从视频注意力到长时交互:先把计算对象说清楚#
WorldAttention 服务的对象是自回归扩散视频模型。它与语言模型“每次产生一个 token”的解码不同:模型每一步生成的是一个视频块,而块内仍要进行若干次扩散去噪。设视频 latent 的形状为 (T,H,W),展平后序列长度为
L=T⋅H⋅W对某个注意力头,当前块的隐藏状态投影成 Q∈RNq×d,历史缓存给出 K,V∈RNk×d。标准缩放点积注意力为
O=Softmax(dQK⊤)VNq 是当前块的 token 数,Nk 是可见历史 token 数,d 是每头维度。分母 d 把点积方差控制在稳定范围;Softmax 后每个 Query 都得到一组对历史 token 的归一化权重。只要 Nk 随视频长度增长,单次去噪里的矩阵乘与 KV 读取就随历史增长,而一次视频块还要重复多次去噪,代价会被再次放大。
KV Cache 的作用也需要准确理解。缓存不是把最终视频帧存一遍,而是保存各注意力层由历史 latent 计算出的 K、V,避免后续块反复对历史执行线性投影。它节省了重复计算,却把“历史状态”变成必须长期管理的多层张量。对于闭环世界模型,KV 还承担连续视觉记忆:旧场景能否被再次注意,取决于对应 K、V 是否仍可寻址。动作条件世界模型怎样把真实观测回灌缓存,可参考站内的动作条件世界模型完全拆解;WorldAttention 处理的是另一侧问题——当历史不再只有几秒,怎样让这份记忆既保留又可负担。
交互又比普通长视频多一层语义不连续。普通长视频往往沿同一提示自然延伸,“最近”与“相关”大致同向;交互式序列的提示会切换,当前最相关的视觉证据可能来自很早的某个 chunk。于是单纯按时间顺序保留最近窗口,本质上把 recency 当成 relevance;而一个有效的检索器必须把两者分开。
可以把历史选择拆成两个尺度:
- chunk 回答“当前指令大致在谈哪段历史”,适合用文本提示的语义向量做粗检索;
- page 回答“那段历史里的哪些连续帧真正含有当前 Query 所需的视觉证据”,适合用视觉 Query 与历史 Key 做细检索;
- block 回答“已经取回的页面中,某个注意力头究竟需要计算哪些局部关系”,这是 HSA 在 GPU 内部解决的计算稀疏性。
这三个尺度不能互相替代。只做 chunk 检索,取回的整段视频仍含大量无关空间 token;只做全局 page 检索,每一步要扫描所有历史页,检索元数据本身会随视频无限增长;只做 block-sparse attention,则全部历史仍要留在 HBM,容量问题没有消失。WorldAttention 的核心不在某个单点技巧,而在于用粗到细的路径逐级缩小工作集。
WorldAttention 的三层协同架构#

上图来自 WorldAttention 论文 Figure 1。沿箭头从左到右读,可以看到两条并行的数据路径。
下方路径是精确历史路径。L2 CPU DRAM 与 L3 NVMe 保存历史 KV 及其索引,当前 prompt 先经过 prompt-level retrieval,选出语义上最相关的历史 chunk;随后当前 Query 对该 chunk 中的 page 做 page-level retrieval,少数活动页被搬到 L1 GPU HBM。进入 HSA 后,dynamic selection 再生成每个头的 block 稀疏模式,最后在 L0 GPU SRAM 附近完成 sparse block attention。
上方路径是全局摘要路径。历史 K、V 沿序列维经过低秩投影,得到压缩 KV;HSA 的 linear global attention 对这份摘要做稠密注意力。它不保证保留每个像素级细节,却提供覆盖完整可见上下文的低成本通路。这样即使稀疏分支没有选中某个细节块,全局结构也不至于完全断开。
两条 HSA 输出不是简单平均。每个注意力头从当前隐藏状态预测两个门值,用逐元素加权融合线性分支与稀疏分支。于是“广而粗”的全局通路和“窄而细”的稀疏通路可以随 token、随头改变占比。
图中 L0 到 L3 不是四份彼此独立的缓存,而是一组不同管理主体和访问成本的层级:
| 层级 | 介质 | 主要内容 | 谁负责 | 角色 |
|---|---|---|---|---|
| L0 | GPU SRAM | 当前 tile 的 Q/K/V 与中间量 | Kernel | 计算工作集 |
| L1 | GPU HBM | 被选中的活动 KV 页与索引 | 设备侧运行时 | 注意力输入 |
| L2 | CPU DRAM | 当前未激活的历史 KV chunk/page | 主机运行时 | 容量缓冲层 |
| L3 | NVMe | 全历史备份 | 存储层 | 最终回退 |
这里有一个很重要的系统判断:把 NVMe 画进架构不等于注意力 Kernel 会直接从 SSD 随机取数。真正执行前,被选页仍需物化到连续的 HBM 缓冲区;NVMe 只保证远古历史没有被永久遗忘。若一次请求命中 L3,其延迟会受到 SSD、PCIe、主机页缓存以及是否能预取的共同影响。论文展示的是“可恢复性与 HBM 有界”这条机制,不应把它理解为所有命中都具有相同延迟。
这个分工与 LLM 系统里的 PagedAttention 有相似外形,却解决不同层次的问题。PagedAttention 完全拆解中的分页主要消除动态序列的显存碎片,通过块表把逻辑 KV 块映射到 HBM 物理块;HKV 进一步把 page 变成跨 HBM、DRAM、NVMe 迁移的语义检索单位。前者首先是地址管理,后者同时是语义检索与分层驻留。
HSA:全局线性通路与头自适应稀疏通路#
HKV 把数百万级的全历史收缩成活动页,但论文默认四页仍有 49,920 个 token。若直接在活动页上做稠密注意力,检索只解决了容量,没有充分解决计算。HSA 继续利用两个事实:视频注意力的全局结构往往可低秩近似,像素级精细相关性又高度稀疏;两者适合不同的计算通路。
线性全局分支:压缩序列轴,不是压缩头维度#
对第 h 个头,原始 K(h),V(h)∈RL×d 沿序列维投影到秩 r:
K(h)=(EK(h))⊤K(h),V(h)=(EV(h))⊤V(h)其中 EK(h),EV(h)∈RL×r,且 r≪L;压缩结果的形状是 r×d。这与把每个 token 的通道从 d 降到更小维度不同:它把 L 个历史位置混合成 r 个序列基。注意力输出为
Olin(h)=SoftmaxdQ(h)(K(h))⊤V(h)原始计算约为 O(L2d),投影后是 O(Lrd);固定 r 时随 L 线性增长。WorldAttention 采用 Linformer 式显式低秩投影,而不是把无界历史不断累积进一个固定递归状态。对于动态增长的历史,论文把检索到的 KV 划成固定长度 segment,各段独立投影后再拼接。这么做保留了 chunk/page 的时空锚点,避免所有历史在单一状态里叠加造成注意力稀释。
这一分支“全局”的含义是覆盖范围广,不是结果精确。它擅长传递主体、场景、颜色等低频结构,但低秩混合可能抹平精细局部与尖锐注意力峰,因此还需要原分辨率的稀疏分支补偿。
稀疏分支:每个头按累计注意力质量选块#

上图来自论文的注意力头可视化。左侧头的权重分散,中央带有明显局部块结构,右侧几乎只剩少数对角线。若给所有头统一 Top-K,K 小会截断分散头,K 大又会浪费尖峰头的计算。HSA 因而先把 Query 与 Key 划成 tile,在池化后的粗粒度注意力图上为每个头、每个 Query block 决定实际保留多少 Key block。
令 pi,:(h)∈RN 表示第 h 个头中第 i 个 Query block 对 N 个 Key block 的归一化权重,σi(h) 是按权重降序排列的索引。选择的块数定义为
Ki(h)=min{k:m=1∑kpi,σi(h)(m)(h)≥τh}τh 是该头要求覆盖的累计注意力质量。这个定义不问“固定选多少块”,而问“至少选多少块才能覆盖规定质量”:尖峰分布可能一两个块就越过阈值,平坦分布则必须保留更多块。最终稀疏连接集合为
S(h)=i⋃{(i,j):j∈[σi(h)(1),…,σi(h)(Ki(h))]}稀疏分支只执行集合 S(h) 指定的 block:
Osp(h)=SDPAblock(Q(h),K(h),V(h);S(h))这里的 SDPA 仍是正常的缩放点积注意力,只是掩码具有可由 Kernel 跳过的块结构;这点非常关键。元素级不规则稀疏即使 FLOPs 更少,也常因索引开销和非合并访存比稠密 Kernel 更慢。
Gini 系数如何把“头的形状”映射成阈值#

论文先用 Gini 型统计量度量第 h 个头的集中程度:
G(h)=Ei[N1m=1∑N(N−2m+1)pi,σi(h)(m)(h)]Ei 表示对所有 Query block 求平均,m 是降序后的名次。权重越集中在靠前位置,带正系数的前几项贡献越大,G(h) 越高;均匀分布的正负项则趋于抵消。阈值再按
τh=τmin+G(h)(τmax−τmin)映射到 [τmin,τmax]。论文最终配置为 τmin=0.35,τmax=1.00。高集中头获得更高质量覆盖要求,但因为其累计曲线上升快,仍可能只需很少的块;分散头虽然阈值较低,达到阈值仍需多个块。这样既不因统一高阈值拖累所有头,也不因统一低 Top-K 截断关键关系。
为什么历史块用 128,当前块用 64#
HSA 对 inter-chunk 历史采用 Binter=128,三维 tile 为 (Ct,Ch,Cw)=(4,8,4);对当前 intra-chunk 采用 Bintra=64,tile 为 (4,4,4)。历史页是辅助上下文,粗块能降低索引与调度开销并提高连续吞吐;当前块直接决定眼前帧的细节,较小的 tile 能减少把无关 token 一并带入的“块内假阳性”。两者又都取 16 的倍数,以适配 Hopper Tensor Core 的 MMA/WGMMA tile,而不是追求算法上最细的粒度。
门控融合:让全局覆盖与局部细节同时存在#
两条输出按头融合:
O(h)=Olin(h)⊙Glin(h)+Osp(h)⊙Gsp(h)门值由当前隐藏状态经过可学习投影并施加 Sigmoid 得到,⊙ 表示逐元素乘。消融能看出互补性:只用线性分支时主体一致性为 0.9021;只用最佳稀疏配置时为 0.9365;双分支并采用 (1.00,0.35) 阈值时升到 0.9472,同时背景一致性、运动平滑度与图像质量也取得该表最佳值。它说明 HSA 的价值不只是把两个近似拼起来,而是让一个分支补另一个分支的结构性盲区。
HKV:让完整历史可访问,而不是全部常驻 GPU#

上图来自论文 Figure 3。橙色页是当前活动页,灰色页是未活动页;底部每个视频 chunk 都带有生成它时的 prompt。HKV 的关键抽象不是“把一个大张量切小”,而是让同一个 page 同时成为三种单位:语义检索单位、跨层迁移单位和 HSA 的连续输入单位。
全局 KV Bank 与 page 粒度#
设全部历史 KV Bank 为
B={C1,C2,…,CM}Cm 表示第 m 个视频 chunk。每个 chunk 又切成 J 页:
Cm={Pm,1,…,Pm,J},Pm,j=(Km,j,Vm,j)论文固定每页含 8 个连续视频帧。页太大,召回一处细节会顺带搬入大量无关 token;页太小,页索引、相似度计算、DMA 描述符和碎片化开销都会放大。8 帧不是普适常数,而是该模型 480p tokenization、检索预算与传输粒度下的折中。
第一级:prompt 语义检索定位 chunk#
生成第 t 个 chunk 时,系统计算当前 prompt embedding 与各历史 chunk prompt embedding 的余弦相似度,取 Top-1 chunk 进入第二阶段。若当前提示为 et,历史提示为 em,粗检索分数可写为
smprompt=∥et∥2∥em∥2et⊤em这一步用很小的文本向量把搜索空间从全部页面收缩到一个 chunk。选择 Top-1 的理由不是它在理论上能覆盖所有语义,而是固定四页预算下,把四页集中在最相关 chunk 比从多个候选各取一页更能保住完整视觉细节。论文消融中,Top-1 chunk × 4 pages 的质量分为 85.53;Top-2 × 2 pages 为 85.31;Top-4 × 1 page 为 84.91,吞吐也从 22.0 FPS 依次降到 21.2 和 20.4 FPS。
代价同样明确:若一个提示同时引用多个历史事件,Top-1 可能在第一阶段就截断正确候选。论文测试集中的每个样本主要指向一个语义 chunk,因此结果支持的是该工作负载下的选择,并不证明 Top-1 对任意复合指令最优。
第二级:用视觉 Query 与页面 Key 精排#
在候选 chunk 内,系统把当前块 Query 在 token 维求平均得到 Qˉ∈Rd,每个历史页的 Key 同样求平均得到 Kˉm,j,页面分数为
αm,j=dQˉ⊤Kˉm,j这里不用 Softmax,因为目的只是排序;d 仍用于控制不同头维度下点积分布的尺度。系统选出 Top-Kp 页,论文取 Kp=4。每页 8 帧、每帧 1,560 token,因此活动历史固定为
Nactive=4×8×1,560=49,920选中页的 K、V 按顺序拼成连续活动缓冲区:
Kactive=ConcatPm,j∈PselKm,j,Vactive=ConcatPm,j∈PselVm,j平均 Query/Key 是便宜的页面代理,不等价于真实注意力最大值。细小物体只占一页少数 token 时,其信号可能被平均稀释;这也是 HSA 不能弥补的前置风险——第二级没召回的页,后续再精确的稀疏 Kernel 也看不到。
驻留、迁移与有界 HBM#
当 L1 HBM 超过容量,未选页降级到 L2 DRAM;L2 继续超限时,按 LRU 把冷页迁往 L3 NVMe,而 L3 保存全历史备份。访问频度与介质速度对齐:热页享受 HBM 带宽,温页借 DRAM 容量,冷页用 NVMe 换取“没有永久删除”。

上图来自论文的 HKV footprint 分析。横轴是已生成视频时间,纵轴是 KV 占用;GPU L1 在约 9.4 GB 附近趋于稳定,而 CPU L2 随历史从约 18 GB 增长到 50 GB。这正是“有界 GPU 驻留”的含义:总历史并没有变小,增长只是从昂贵的 HBM 转移到了更大、更慢的层级。因此 HKV 解决的是设备容量瓶颈,不是让存储复杂度从 O(N) 变成 O(1)。长到 DRAM 也放不下时,NVMe 容量与换入延迟仍会成为下一道边界。
检索消融也支持页面分数确实在找视觉证据,而非随机碰运气。在相同四页预算下,HKV 质量分 85.53,最近页 83.74、随机页 82.86、故意错配页 80.96;到 50–60 秒片段,CLIP 分数分别为 25.01、21.48、20.12、17.36。优势随着目标历史变远而放大,正符合“相关性不等于最近性”的设计动机。
定制 CUDA Kernel:稀疏算法怎样落到硬件上#
把注意力矩阵中的大部分元素标成零,并不会自动带来同等比例的加速。GPU 需要规则 tile、连续地址和足够多的并行工作;动态稀疏却天然带来变长索引、离散页面和每个头不同的块数。WorldAttention 的 Kernel 工作,实质上是在算法产生的“逻辑稀疏”与 GPU 需要的“物理规整”之间加一层编排。
论文的稀疏 Kernel 从 VSA 的硬件友好块稀疏实现改造而来,并给出 Triton 与 ThunderKittens 两种后端。一次 HSA 执行可拆成六个阶段:
- 线性分支对分段 KV 做低秩投影并计算全局注意力;
- dynamic selection 在池化注意力图上产生每头的块集合;
- index mapping 把“页号、块内坐标、头号”翻译为实际 KV 地址;
- contiguous copy 把离散页中的入选 KV 重排进连续缓冲区;
- block-sparse Kernel 只对选中 tile 执行 QK、在线 Softmax 与 PV;
- fusion 用门值合并线性与稀疏输出。
第 3、4 步看似是额外成本,却决定了第 5 步能不能高效。若让每个 warp 直接追逐 page table,访问地址既不连续又因头而异,HBM transaction 难以合并,Tensor Core 还会因不完整 tile 闲置。先重排再计算相当于用一次显式 copy 换取后续矩阵运算的规则性。HKV 的 page 布局与 HSA 的 block 布局因此必须一起设计;任意替换页大小或 tile 形状,都可能让索引与搬运开销吃掉稀疏收益。
在 Hopper 上,Binter=128 与 Bintra=64 都是 16 的倍数,可映射到 MMA/WGMMA 友好的 tile。Kernel 采用 FlashAttention 式分块思路:Q tile 驻留片上,按入选 Key/Value tile 流式更新每行最大值 m、指数和 ℓ 与输出累加器,而不把完整注意力矩阵写回 HBM。对新 tile 分数 Sj,稳定在线 Softmax 的状态更新可概括为
mj=max(mj−1,maxSj)ℓj=emj−1−mjℓj−1+k∑eSj,k−mjoj=emj−1−mjoj−1+k∑eSj,k−mjVj,kmj 是处理到第 j 个 Key tile 时的行最大值,ℓj 是稳定归一化分母,oj 是尚未除以 ℓj 的输出累加量。指数前的重缩放因子把旧状态换到新的最大值基准,避免溢出。稀疏版本与稠密 FlashAttention 的数学结果差别来自“哪些 tile 被访问”,而不是 Softmax 在 tile 间被错误地分开归一化。

论文图中 HSA 的 ThunderKittens 后端(HSAtk)相对 FlashAttention-3 的稀疏分支 Kernel达到峰值 14.02×,Triton 后端约 9.94×。这个数字很亮眼,但它不是整条视频生成流水线的加速比。论文给出的单次 HSA 延迟分解更能说明瓶颈:
| 阶段 | 延迟(μs) | 占比 |
|---|---|---|
| 线性分支 | 251.934 | 39.78% |
| 动态选择 | 83.359 | 13.16% |
| 索引映射 | 79.135 | 12.50% |
| KV 连续拷贝 | 196.254 | 31.00% |
| 稀疏块注意力 Kernel | 11.776 | 1.86% |
| 门控融合 | 10.784 | 1.70% |
被加速 14.02× 的稀疏块 Kernel 最终只占 HSA 总延迟的 1.86%;线性分支与 KV 连续拷贝合计超过 70%。这解释了为什么 Kernel 微基准不能直接外推端到端收益,也给出下一步优化方向:页面预取与计算重叠、减少重排 copy、让检索直接产出 Kernel 可消费的布局,可能比继续压榨那 11.776 μs 更有价值。
端到端执行流程与复杂度#
把前面的模块串起来,一次新视频块的推理主线如下。这里的“当前块”仍会经历扩散去噪;流程描述的是注意力侧如何为这些前向准备历史工作集。
1输入:当前 prompt、当前 noisy latent、全局 KV Bank2
31. 编码当前 prompt,与历史 prompt 索引比较42. 选 Top-1 历史 chunk53. 从当前隐藏状态形成 Q,并计算页级平均 Query64. 对候选 chunk 的页面平均 Key 打分,选 Top-4 pages75. 若活动页不在 HBM,从 DRAM/NVMe 恢复并重排为连续 KV86. 线性分支读取压缩 KV,形成全局低秩输出97. 稀疏分支构造每头 block mask,执行选中 block108. 门控融合两分支输出,继续当前去噪前向119. 当前 chunk 完成后,把新 K/V 分页写入 KV Bank1210. 按容量与活跃度在 HBM、DRAM、NVMe 间迁移页面第 3 步揭示了一个依赖关系:页面精排需要当前 Query,因此不能只靠 prompt 在请求到达时一次性完成全部工作;至少视觉相关的第二级选择要等隐藏状态可用。工程上可以提前完成 prompt 粗检索与候选页预取,再让 Query 精排决定最终四页,以便把一部分 I/O 藏在 GPU 计算后面。论文展示了逻辑组件,但没有把所有异步预取策略定义成唯一实现,因此部署时仍有调度空间。
复杂度可以按三次收缩来理解。全历史稠密注意力对当前 Nq 个 Query、历史 N 个 KV token 的计算量为
Cdense=O(NqNd)HKV 把活动历史固定到 Na=KpFpNf,其中 Kp=4 是页数,Fp=8 是每页帧数,Nf=1,560 是每帧 token 数;于是活动集上的稠密上界变为 O(NqNad)。注意这是计算工作集有界,不是总存储有界。
HSA 再把这部分分成两项。若线性分支投影秩为 r,稀疏分支最终执行 Rh 个 Query-Key block 对,块边长近似为 B,则单头主要计算近似为
CHSA=O(Nqrd)+O(RhB2d)第一项随低秩宽度增长,第二项随真正入选的块对增长。它不再直接由 NqNa 决定,但 Rh 是运行时数据依赖量:平坦注意力头需要更多块,最坏情况下仍会退化接近稠密。动态稀疏不是严格的固定复杂度保证,而是利用真实视频注意力分布换取平均收益。
系统总延迟还必须加上检索与迁移:
Tstep=Tretrieve+Ttransfer+Trepack+Tlinear+Tsparse+Tfusion只有当省下的稠密计算大于前三项额外成本,方案才有正收益。短视频、历史本来就驻留 HBM、或注意力不够稀疏时,WorldAttention 的复杂控制面未必划算;越长的视频、越大的模型、越高的分辨率,KV 与注意力占比越高,协同设计的收益才越容易显现。
实验结果应该怎样解读#
论文以 Wan2.1-T2V-1.3B 为基础,在 480p、16 FPS 设定下评测。质量部分有两套协议:VBench-Long 被扩展为 160 个 60 秒交互视频,每 10 秒切换一次提示;InterVBench 用细粒度 chunk 标注测量长视频漂移。论文正文称 InterVBench 含 1,000 个视频,附录报告实际评测使用其中 200 个超过 50 秒的测试视频,因此引用结果时应把“基准规模”和“测试子集规模”分开。
质量数字验证了什么#
VBench-Long 上,WorldAttention 的主体一致性为 0.9472、背景一致性 0.9691、运动平滑度 0.9915、动态图程度 0.7758、图像质量 0.7259;InterVBench 上主体一致性为 0.9668。与滑动窗口相比,最有解释力的不是某个总分,而是时间趋势:滑动窗口的分段 CLIP 分数从 0–10 秒的 25.46 下降到 50–60 秒的 17.59,HKV 则从 29.04 到 25.01,远端片段没有出现同量级坍塌。
但这组主表不是严格的系统消融,不同方法的模型与生成配方并不完全相同。能更直接支持机制的证据来自同一框架内的三组对照:
- 把滑动窗口重新缓存 32 帧,可把 50–60 秒 CLIP 从 17.59 拉到 24.47,但吞吐从 22.1 FPS 降到 7.10 FPS;HKV 为 25.01 与 22.0 FPS,说明按语义取页优于无差别扩大回看范围。
- HSA 只用线性分支、只用稀疏分支、双分支的主体一致性分别为 0.9021、0.9365、0.9472,支持“全局结构与局部细节互补”,而非任一分支单独包办。
- 在相同四页预算下,把页故意错配会把质量分从 85.53 降到 80.96,说明收益不只是“少读一些 KV”,而依赖检索确实找对内容。
论文还构造了语义近似的历史 chunk:没有人为相似 chunk 时质量分为 85.53,增加三个相似 chunk 后为 85.18,50–60 秒 CLIP 从 25.01 变为 24.74。下降不大,但测试仍是人工构造的 200 条提示,不能等价为开放世界中的检索鲁棒性保证。
14.02×、2.21× 与 22 FPS 是三个不同口径#
这三个数字分别回答三个问题:
| 数字 | 比较对象 | 覆盖范围 | 不能推导出的结论 |
|---|---|---|---|
| 14.02× | HSAtk 对 FlashAttention-3 | 稀疏注意力 Kernel 累计时间 | 整个模型快 14.02× |
| 2.21× | 完整 WorldAttention 对 FA-3 + Naive KV | 分钟级视频端到端 | 任意硬件、任意视频长度都固定 2.21× |
| 22.0 FPS | 单张 H100 上 1.3B、480p | 30 秒单提示 VBench-Long 协议 | 60 秒交互与 L3 miss 下仍恒定 22 FPS |
端到端增益是逐层累积的:仅加入 HKV 为 1.15×,再加入 HSA 为 1.91×,最后加入定制 Kernel 为 2.21×。HKV 单独只有 15% 提升并不意外,因为它主要控制驻留与搬运;HSA 才大幅削减注意力计算;定制 Kernel 则把理论稀疏兑现为可测延迟。
跨硬件结果给出了收益趋势而非单点:H100、1.3B、480p、60 秒是 2.21×;B200 同设定为 2.06×;把 B200 视频拉到 90 秒为 2.35×;换成 14B、720p、60 秒为 2.46×。越长、越大、分辨率越高,注意力与 KV 管理在总时间中的占比越高,优化空间随之放大。B200 基础 Kernel 更快,短一些的 1.3B 场景反而只有 2.06×,也说明加速比由瓶颈占比决定,不由方法名称决定。
22 FPS 的效率表采用 30 秒、单提示视频,WorldAttention 的质量分为 86.55;60 秒多提示表用于长程交互质量,HKV 配置的吞吐同样报告 22.0 FPS,但两张表的 prompt 结构与评分口径不同。把它们并列能说明系统兼顾效率与交互质量,却不应把所有数字拼成一个未经定义的综合指标。
与相邻技术路线的边界#
WorldAttention 很容易被概括成“视频版 PagedAttention”或“把 Quest 加到世界模型”,但这些类比只覆盖一部分。把几条路线放在同一坐标系中,差别会更清楚。
| 路线 | 全历史是否保留 | 主要选择粒度 | 是否跨内存层级 | 主要优化目标 |
|---|---|---|---|---|
| 滑动窗口 | 否 | 最近若干 chunk/frame | 通常否 | 固定容量与延迟 |
| PagedAttention | 是,直到请求回收或抢占 | 物理 block | 可 swap,但无语义检索 | 显存碎片与动态分配 |
| Quest | 是 | Query 感知的 KV page | 论文核心不在跨层存储 | LLM decode 的 KV 读取 |
| BIFE | 是 | prompt 相关的稀疏 chunk | GPU/CPU memory | 交互视频语义召回 |
| Kimi Delta Attention | 历史压入固定状态 | 递归状态 + 局部窗口 | 不依赖全历史页 | 从模型结构上约束状态增长 |
| WorldAttention | 是 | prompt→chunk→page→block | SRAM/HBM/DRAM/NVMe | 视频推理的容量、计算与 Kernel |
与 Quest 的区别。Quest 同样根据当前 Query 在页级选 KV,核心是为每页维护 Key 的逐维 min/max,用上界估计找 Top-K 页;它保留全部 KV,主要减少 LLM decode 每一步从 HBM 读取的字节数。WorldAttention 的页面分数是平均 Query 与平均 Key 的点积,并在此之前加 prompt→chunk 粗检索,同时把冷页放到 DRAM/NVMe。Quest 的选择器更强调关键 token 召回上界,WorldAttention 更强调视频语义层级与跨介质驻留。前者可参考站内的 Quest 完全拆解。
与 PagedAttention 的区别。PagedAttention 的 page/block 是逻辑地址抽象,关注多个动态请求怎样共享、分配与回收 HBM;它不会因为当前 Query 内容不同而把一个历史块判为“语义相关”。HKV 借用了分页思维,却把 prompt embedding、页面 Key 摘要、层级迁移策略都放进控制面。两者可以组合:底层块管理器负责可靠映射,HKV 在更高层决定哪些逻辑页应当成为活动页。
与 BIFE/WorldKV 的区别。BIFE 已经展示用语义稀疏 KV 支持分钟级交互,但 chunk 级取回仍偏粗,历史缓存也继续增长。WorldAttention 用 chunk 粗筛、page 精排把召回单位细化,再用 HSA 去掉页内计算冗余。WorldKV则把 world retrieval 与压缩结合,用相机/动作对应关系找回被逐出的 chunk;它更偏动作条件与缓存压缩,WorldAttention 当前主要以文本 prompt 为控制信号。
与线性/递归注意力的区别。固定状态方法从根本上把历史容量压成常数,换来稳定吞吐,却可能发生记忆叠加与细节不可逆丢失。WorldAttention 没有押注单一路线:HSA 的线性分支承担“总能看见全局”的低秩摘要,HKV 与稀疏分支保留可恢复的精确旁路。站内的 Kimi Delta Attention 完全拆解展示了另一端——用循环状态替代不断增长的 KV;两者分别选择“固定状态、有限精度”和“全历史可恢复、分层存储”的权衡点。
这些比较揭示了 WorldAttention 最鲜明的设计哲学:它没有声称一种近似足以覆盖所有注意力模式,而是接受不同信息有不同价值、不同访问频度与不同精度需求,再让存储层次和计算层次一一对应。
局限、适用条件与工程启示#
检索错误发生在计算之前#
HSA 只能在 HKV 送进来的活动页里找细节。若 prompt 粗检索选错 chunk,或平均 Key 把小物体信号冲淡,后面的线性分支、稀疏 Kernel 和门控都无法重建缺失证据。部署时至少应分别记录 chunk recall、page recall 与最终质量,而不是只看端到端视频分数。对于同时引用多个历史事件的提示,Top-1 应改造成预算感知的 Top-k,或允许候选数随提示歧义度变化;代价是更多索引扫描、更多页面搬运以及固定四页预算被摊薄。
“全历史可访问”不等于“任意历史访问都快”#
冷页命中 DRAM 需要 PCIe 传输,命中 NVMe 还会叠加存储 I/O。平均 22 FPS 不能描述尾延迟,更不能保证突然回忆极早场景时无卡顿。真实服务应把页面状态纳入调度:prompt 粗检索一旦产生候选,就提前发起异步预取;GPU 继续处理当前去噪步时,DMA 在独立 stream 上搬运下一步候选;若 deadline 前未完成,可先使用线性摘要或最近活动页降级,而不是阻塞整条流水线。
还应区分容量 miss与语义 miss:前者是页面找对了但不在 HBM,优化方向是预取、带宽与驻留策略;后者是索引从一开始就选错了,增加 PCIe 带宽毫无帮助。把两类 miss 混成一个“检索慢”,会让系统优化走偏。
页面大小不是越小越精确#
小页降低召回冗余,却增加页面数、索引体积、Top-K 成本与 DMA 碎片;大页有更高传输效率,却把无关 token 一起搬入。论文消融很能说明这种非单调关系:在不同页面配置中,8 帧 × 4 页获得 85.53 质量分与 22.0 FPS;2 帧 × 16 页质量为 85.38、吞吐 21.9 FPS;8 帧 × 2 页虽升到 24.0 FPS,质量却降到 83.05。页粒度必须与模型 token 密度、命中局部性和硬件最小高效传输量联合调参。
动态稀疏的上限由预处理决定#
HSA 的稀疏 Kernel 只占 1.86%,重排与线性分支才是大头。继续把 14.02× 提到 20×,对总延迟的改善上限很小;真正值得投入的是减少中间格式转换。例如让 page 内 KV 原生按 Kernel tile 顺序存放、让选择器直接输出压缩后的物理 tile 描述符、对常用页维护已打包副本,或用 TMA/异步 copy 把重排与前一计算阶段重叠。这些优化会增加写入成本和副本一致性复杂度,需要用真实命中分布判断是否值得。
当前控制信号仍偏“视频生成”,不是完整物理智能#
论文明确把文本 prompt 作为主要交互信号,尚未系统覆盖动作、控制轨迹、机器人本体状态等条件。文本相似不一定等于动力学相关:两个提示都说“回到桌边”,但相机姿态、执行动作或物体状态可能完全不同。要成为动作条件世界模型的通用记忆层,chunk 索引需要融合 prompt、视觉状态、相机位姿与动作轨迹,而页面相关性也不能只用平均 Query-Key 点积。
评测覆盖仍小于部署空间#
论文结果集中在 1.3B/14B、480p/720p、H100/B200 与最长 90 秒的组合,且世界模型本身经过特定适配。尚未回答的包括:数十分钟历史下 NVMe miss 的 P99 延迟,多租户竞争 PCIe 与 DRAM 带宽时的隔离,页面压缩或量化后检索排序是否稳定,以及 prompt embedding 在同义、否定、组合指令下的错误分布。它们不否定现有结论,却限定了结论的外推范围。
对工程实践最可迁移的启示,不是照抄“8 帧一页、选四页”这些常数,而是建立三本账:
- 信息账:哪些历史必须可恢复,哪些只需低秩摘要,哪些可以彻底删除;
- 存储账:每类状态应驻留 SRAM、HBM、DRAM 还是 NVMe,命中与迁移的尾延迟是多少;
- 执行账:理论减少的 FLOPs 是否真的减少了 HBM 字节、索引跳转和 Kernel launch。
只有三本账同时闭合,稀疏注意力才会从论文里的掩码变成线上吞吐。
小结#
WorldAttention 解决的不是单一注意力算子太慢,而是长时交互视频中的三重矛盾:旧视觉证据不能删除,全部 KV 不能常驻 HBM,全部历史又不能每次都参与稠密计算。它用一条粗到细的收缩链把矛盾拆开:prompt 先找 chunk,视觉 Query 再找 page,HSA 再按头选择 block;冷 KV 依次下沉到 DRAM 与 NVMe,活动页才回到 HBM;线性分支保全局覆盖,稀疏分支保原分辨率细节,最后由门控融合。
这套设计最有价值的地方是把算法近似与硬件代价放在同一张账表里。14.02× 是稀疏 Kernel 的峰值加速,但 Kernel 只占 HSA 延迟的 1.86%;真正的端到端提升是 2.21×,其中页面检索、连续拷贝和线性分支仍占主要成本。22 FPS 又是特定单 H100、1.3B、480p 协议下的系统吞吐,不能脱离工作负载复用。
HKV 也没有把总历史变成常数:它把增长从 GPU 移到了 CPU 与 NVMe,并以检索正确率和冷页恢复延迟作为交换。HSA 同样没有给出最坏情况恒定计算:注意力越平坦,需要的块越多。WorldAttention 的贡献恰恰不是消灭这些代价,而是让代价显式分层、按信息价值支付,并通过统一布局把理论稀疏尽可能兑现成真实硬件收益。
对于后续系统设计,最值得保留的原则是:不要只问“KV 留多少”或“注意力稀疏多少”,而要同时问“未来还能不能找回”“从哪一级存储找回”“找回后 GPU 能否连续高效地算”。这三个问题共同决定长时世界模型能否真正实时运行。
参考资料#
- WorldAttention: An Efficient Attention Architecture for Interactive Video World Models
- WorldAttention 官方项目页
- WorldAttention 官方代码仓库
- WorldAttention 的 NeurIPS 2026 OpenReview 页面
- Linformer: Self-Attention with Linear Complexity
- Faster Video Diffusion with Trainable Sparse Attention(VSA)
- FlashAttention-3: Fast and Accurate Attention with Asynchrony and Low-precision
- BIFE: Better Interaction, Fewer Errors for Minute-Long Video Generation
- WorldKV: Efficient World Memory with World Retrieval and Compression
- VBench: Comprehensive Benchmark Suite for Video Generative Models
文章分享
如果这篇文章对你有帮助,欢迎分享给更多人!
评论区
分享你的想法,与大家交流讨论
音乐
暂未播放



