
SpargeAttn
让视频生成模型推理提速数倍,无需重新训练。
项目预览
项目数据
项目介绍
Star 增长趋势
本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整
数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 1267
使用教程
ℹ 本教程由 AI 依据该项目 README 整理,个别步骤可能需要按你的环境微调。
环境要求
- Python 环境与 PyTorch(示例代码使用 torch 张量)
- 支持 CUDA 的 GPU(库为 CUDA 内核实现)
- 先安装 ninja 以并行编译
- 需在项目源码根目录执行安装(依赖 setup.py)
安装与启动步骤
-
1安装编译依赖
ninja 用于并行编译 CUDA 扩展,必须先装,否则编译会变慢或失败。
pip install ninja -
2源码安装本包
在 SpargeAttn 源码根目录执行,两种方式二选一,均可完成编译安装。
python setup.py install -
3(备选)可编辑安装
需要修改源码或反复调试时,用可编辑模式安装替代上一步。
pip install -e . -
4验证导入
能成功导入核心 API 即说明编译与安装通过。
python -c "from spas_sage_attn import spas_sage2_attn_meansim_topk_cuda" -
5替换注意力调用
把原来的 scaled_dot_product_attention 换成 spas_sage2_attn_meansim_topk_cuda,参数保持一致。
from spas_sage_attn import spas_sage2_attn_meansim_topk_cuda attn_output = spas_sage2_attn_meansim_topk_cuda(q, k, v, topk=0.5, is_causal=False) -
6调节稀疏度
按需调整 topk:数值越高越精确,越低越稀疏、速度越快。
-
7(可选)自定义块稀疏
需要按注意力头指定稀疏掩码时,改用 block_sparse_sage2_attn_cuda 并传入 mask_id。
from spas_sage_attn import block_sparse_sage2_attn_cuda attn_output = block_sparse_sage2_attn_cuda(q, k, v, mask_id=None)
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
topk | 否 | 控制注意力精度与稀疏度平衡,越高越准、越低越快 | 0.5 |
is_causal | 否 | 是否为因果注意力,可设为 True 或 False | False |
mask_id | 否 | 逐头块稀疏掩码,仅 block_sparse 接口使用,由 0/1 组成 | None |
如何确认成功
执行导入命令无报错;将模型中的 SDPA 替换为该 API 后推理输出正常且速度提升。
常见问题
Q:安装时编译很慢或卡住怎么办?
A:确认已先执行 pip install ninja,ninja 用于并行编译 CUDA 扩展,可显著加快编译。
Q:topk 应该设多少?
A:topk 越高注意力越准确、稀疏度越低;越低则越稀疏、加速越明显。可按需在 0.5 附近调节。
Q:需要重新训练模型吗?
A:不需要。SpargeAttn 是训练无关的稀疏注意力,可直接即插即用替换原有注意力调用。
Q:mask_id 的形状要求是什么?
A:形状为 (batch_size, num_heads, ⌈seq_len/128⌉, ⌈seq_len/64⌉),取值 0 或 1,块大小为 128×64。
Q:能加速哪些模型?
A:可加速语言、图像与视频模型,只需将 scaled_dot_product_attention 替换为提供的 API。
注意事项
- 本库为训练无关方案,替换注意力调用即可,无需改动模型权重。
- 核心内核基于 CUDA,需在具备 GPU 的环境中编译与运行。
- 安装命令须在项目源码根目录执行,否则找不到 setup.py。
- 两种接口二选一:追求易用选 spas_sage2_attn_meansim_topk_cuda,需要自定义稀疏结构选 block_sparse_sage2_attn_cuda。
核心亮点
- 训练无关,直接加速现有模型,省去微调成本
- 针对视频生成场景优化,长序列下提速明显
- 与量化技术结合,降低显存占用,支持更大模型
不足之处
- 文档/社区待观察
- 对非稀疏注意力模型效果有限,需评估适用性
适用场景
- 视频生成模型(如 Sora 类)推理加速
- 长上下文 LLM 的推理优化
- 边缘设备上部署大模型时的内存与速度优化
替代项目
SageAttention、FlashAttention、Lightning Attention
同类项目推荐
agentsre
开源
给AI智能体装上SRE仪表盘,提前发现质量劣化
SRE reliability instrumentation for agentic AI — DQR, TIE, HER, AQD
btp-genai-starter-kit
开源
一键自动化配置SAP AI环境,快速启动你的生成式AI项目
This repo aims to help developers to get into the genAI topic quicker by automating ···
airweave
开源
各种数据源一次接好,智能体随时有料可查
Open-source context retrieval layer for AI agents
satoriDB
开源
把向量搜索嵌进你的应用,本地跑,快又省。
High performance embedded vector database
glide
开源
一个网关搞定所有AI模型,快速上线生产应用
A open blazing-fast simple model gateway for rapid development of production GenAI a···
self-hosted-ai-stack
开源
一行命令部署本地 AI 全家桶,数据不出门,隐私又安全。
Deploy a self-hosted AI stack with Docker Compose: local LLMs, chat, document parsin···
aegea
开源
一条命令搞定AWS日常操作,告别繁琐控制台
Amazon Web Services Operator Interface
leanctx
开源
不换代码,一键压缩提示词,立省 40-60% token 费用
Drop-in prompt compression for production LLM apps. Cut your token bill 40-60% witho···
Strata
开源
一键把大模型装进自己电脑,本地 API 即开即用
Qwen3.8-Flash-Next on any consumer hardware: one-click install for Windows / Linux. ···