Veda 稀疏注意力登陆 ComfyUI:MiniMax H3 视频生成提速最高 3 倍
Veda 团队发布官方 ComfyUI 节点,用蒸馏稀疏预测器替换 MiniMax H3 的注意力计算,跳过 90% 的注意力分块,视频生成最高提速 3 倍。
来自 Veda 项目主页:Waver-T2V-12B,720p,241 帧。左侧为全注意力,右侧为 Veda 的跳块路径。
Veda 的工作原理
Veda 并不压缩或重新训练模型,而是学习注意力图中哪些部分真正重要。一个蒸馏得到的轻量预测器为注意力分块打分,只保留大约前 10%,再由跳块 kernel 仅获取被选中的 K/V 分块。由于它改变的是注意力的计算方式而非权重本身,因此与任何 LoRA 以及微调或量化后的 MiniMax H3 模型保持兼容。
项目主页将该方法描述为三个阶段:最大池化的全注意力提供分块级的教师分布,带有逐头 Q/K 投影的 Triplet Pooling 估计器重建该分布,而感知头的 top-k 选择则输出 kernel 所遵循的分块掩码。逐层、逐头的分块几何形状经过精心选择,以便在固定硬件预算内适配异构的空间头和时间头。
在 MiniMax H3 上,发布的预测器使用 8 步 Turbo LoRA 训练。仓库指出该模型与模态和步数无关:它适用于 T2VA、FL2VA 和 R2VA,且适用于任意采样步数;官方还宣布将在未来版本中推出专用的 R2VA 微调。
ComfyUI 节点
该节点刻意做得很小:输入 MODEL,输出 MODEL。它以注意力覆盖的形式安装,因此在 MODEL 连线中应放在模型和任何 LoRA 加载器之后、引导器或采样器之前。用 Ctrl+B 将其旁路,即可用全注意力渲染相同的种子,进行直接对比。
| 输入 | 默认值 | 描述 |
|---|---|---|
generated_sparsity | 90% | 已生成视频注意力的稀疏度。若为整数(如 24),则改为精确保留该数量的 128 token 键分块。 |
reference_sparsity | 90% | 引用 token 的相同设置:首/末帧、引导帧、引用图像和视频。0% 表示对它们使用全注意力。 |
full_attention_layers | 空 | 保持全注意力的 DiT 块,从 0 开始计数,例如 0, 1, 47-49。 |
full_attention_steps | 空 | 保持全注意力的采样步,从 0 开始计数。 |
verbose | 关闭 | 在每次运行后反馈各阶段的注意力耗时、调用次数和预测器详情。 |
运行后,节点会打印它实际执行的操作:
Veda done · Triton INT8 (SM120)
Video: 1344x768 · 5.2 s
Attention computed: 10.9% of full attention (89.1% skipped)如果某个 kernel 无法在当前 GPU 上运行,节点会给出提示,该次运行中模型将回退到自身的注意力实现,而不会产生损坏的渲染结果。
性能
在 Windows 11 下使用 RTX 5070 12 GB 测得:T2VA,1344x768,124 帧(5.2 秒),8 步 Turbo LoRA,90% 稀疏度:
| 注意力路径 | 每步 | 8 步 | 每步注意力耗时 |
|---|---|---|---|
| ComfyUI 默认 | 40.7 秒 | 342 秒 | 31.1 秒 |
ComfyUI --use-sage-attention | 24.8 秒 | 231 秒 | 15.2 秒 |
| Veda sparse INT8 | 14.0 秒 | 130 秒 | 4.41 秒 |
这意味着端到端约 2.9 倍、仅注意力部分 7.1 倍的加速,而且差距会随片段长度增加而扩大。在 104k token、90% 稀疏度下,单个注意力层耗时 528 毫秒,而全注意力需要 11.8 秒。
Veda 在 95% 稀疏度下。Veda 项目报告在 Waver-T2V-12B、720p、241 帧下实现 5.1 倍端到端加速,从 19.4 分钟缩短到 3.8 分钟。
预测器仓库还给出了相对其自身全注意力基线的端到端加速数据,均为在 Turbo LoRA 下保留 10% 注意力的情况:
| GPU | 片段 | 注意力加速比 | 端到端加速比 |
|---|---|---|---|
| RTX PRO 6000 Blackwell | 16:9 · 14.4 秒 | 6.79 倍 | 3.12 倍 |
| RTX 4090 | 16:9 · 5.17 秒 | 4.75 倍 | 1.77 倍 |
| RTX 4090 | 16:9 · 10.1 秒 | 6.22 倍 | 2.42 倍 |
| RTX 4090 | 16:9 · 14.4 秒 | 6.31 倍 | 2.82 倍 |
左侧为全注意力,右侧为 Veda,相同的提示词、种子和 Turbo LoRA,在单张 RTX PRO 6000 Blackwell 上生成。
硬件支持
一个 Triton kernel 覆盖 Windows 和 Linux 上从 SM80 起的全部 NVIDIA GPU,Apple 芯片则通过 MLX 运行。没有匹配 kernel 的显卡会收到提示,模型将保留其自身的注意力实现。
| 硬件 | 状态 |
|---|---|
| RTX 30 / A100 / RTX 40 / L40 (sm80-89) | 代码路径已就绪,尚未经作者验证 |
| H100 / H200 (sm90) | 代码路径已就绪,尚未经作者验证 |
| B200 / B300 (sm100 / sm103) | 代码路径已就绪,尚未经作者验证 |
| RTX 50、RTX PRO 6000 Blackwell (sm120) | 已验证:RTX 5070,Windows 11 |
| DGX Spark / GB10 (sm121) | 代码路径已就绪,尚未经作者验证 |
| Apple 芯片(M 系列) | 已验证:M3 Pro,macOS 15 |
入门
Veda 需要 ComfyUI 0.38.0 或更高版本。可在 ComfyUI 管理器中搜索 "Veda" 安装该节点,或通过 CLI 安装:
comfy node install veda-sparse-attention然后,将 275 MB 的预测器放到 ComfyUI/models/veda/:
hf download Veda-Sparse/Minimax-H3-T2VA-Veda-8NFE-600Step-Preview \
minimax_h3_t2va_veda_8nfe_600step_preview_fp8.safetensors \
--local-dir ComfyUI/models/veda该节点本身不会下载任何内容。更简便的方式是打开 工作流 -> 浏览模板 -> Veda-on-ComfyUI 并选择一个模板,它会在 ComfyUI 的缺失模型对话框中提供该预测器。仓库附带了两个示例工作流:
获取方式
该节点已在 Comfy Registry 上发布,名称为 veda-sparse-attention,源代码位于 veda-sparse/Veda-on-ComfyUI。预测器模型位于 Veda-Sparse/Minimax-H3-T2VA-Veda-8NFE-600Step-Preview,训练代码位于 veda-sparse/Miowtion。发布的预测器被标记为预览版,使用 8 步 Turbo LoRA 针对 1344x768、768x1344、768x768 和 1024x768 尺寸,以及 5、10、14 秒时长进行训练;其他尺寸会回退到最接近的已训练分块方案,并应与全注意力进行对比。
评论
使用 GitHub 登录后即可参与讨论。