flash_attn目前官方只发布了Linux版本whl没有发布windows对应版本,但是windows上时常需要使用,因此github仓库futureflsl/flash_attn_chinese_mirror发布了一系列对应国内下载版本,不用担心网速问题即可下载。版本目前汇总如下:
flash_attn-2.8.3+cu128torch2.9.0cxx11abiFALSE-cp313-cp313-win_amd64.whl
flash_attn-2.8.3+cu128torch2.9.0cxx11abiFALSE-cp312-cp312-win_amd64.whl
flash_attn-2.8.3+cu128torch2.9.0cxx11abiFALSE-cp311-cp311-win_amd64.whl
flash_attn-2.8.3+cu128torch2.9.0cxx11abiFALSE-cp310-cp310-win_amd64.whl
flash_attn-2.8.3+cu128torch2.8.0cxx11abiFALSE-cp313-cp313-win_amd64.whl
flash_attn-2.8.3+cu128torch2.8.0cxx11abiFALSE-cp312-cp312-win_amd64.whl
flash_attn-2.8.3+cu128torch2.8.0cxx11abiFALSE-cp311-cp311-win_amd64.whl
flash_attn-2.8.3+cu128torch2.8.0cxx11abiFALSE-cp310-cp310-win_amd64.whl
flash_attn-2.8.3+cu128torch2.7.0cxx11abiFALSE-cp313-cp313-win_amd64.whl
flash_attn-2.8.3+cu128torch2.7.0cxx11abiFALSE-cp312-cp312-win_amd64.whl
flash_attn-2.8.3+cu128torch2.7.0cxx11abiFALSE-cp311-cp311-win_amd64.whl
flash_attn-2.8.3+cu128torch2.7.0cxx11abiFALSE-cp310-cp310-win_amd64.whl
flash_attn-2.8.3+cu124torch2.6.0cxx11abiFALSE-cp311-cp311-win_amd64.whl
flash_attn-2.8.2+cu128torch2.8.0cxx11abiFALSE-cp313-cp313-win_amd64.whl
flash_attn-2.8.2+cu128torch2.8.0cxx11abiFALSE-cp312-cp312-win_amd64.whl
flash_attn-2.8.2+cu128torch2.8.0cxx11abiFALSE-cp311-cp311-win_amd64.whl
flash_attn-2.8.2+cu128torch2.8.0cxx11abiFALSE-cp310-cp310-win_amd64.whl
flash_attn-2.8.2+cu128torch2.7.0cxx11abiFALSE-cp313-cp313-win_amd64.whl
flash_attn-2.8.2+cu128torch2.7.0cxx11abiFALSE-cp312-cp312-win_amd64.whl
flash_attn-2.8.2+cu128torch2.7.0cxx11abiFALSE-cp311-cp311-win_amd64.whl
flash_attn-2.8.2+cu128torch2.7.0cxx11abiFALSE-cp310-cp310-win_amd64.whl
flash_attn-2.8.2+cu124torch2.6.0cxx11abiFALSE-cp313-cp313-win_amd64.whl
flash_attn-2.8.2+cu124torch2.6.0cxx11abiFALSE-cp312-cp312-win_amd64.whl
flash_attn-2.8.2+cu124torch2.6.0cxx11abiFALSE-cp311-cp311-win_amd64.whl
flash_attn-2.8.2+cu124torch2.6.0cxx11abiFALSE-cp310-cp310-win_amd64.whl
flash_attn-2.7.4.post1+cu124torch2.6.0cxx11abiFALSE-cp313-cp313-win_amd64.whl
flash_attn-2.7.4.post1+cu124torch2.6.0cxx11abiFALSE-cp312-cp312-win_amd64.whl
flash_attn-2.7.4.post1+cu124torch2.6.0cxx11abiFALSE-cp311-cp311-win_amd64.whl
flash_attn-2.7.4.post1+cu124torch2.6.0cxx11abiFALSE-cp310-cp310-win_amd64.whl
flash_attn-2.7.4.post1+cu124torch2.5.1cxx11abiFALSE-cp312-cp312-win_amd64.whl
flash_attn-2.7.4.post1+cu124torch2.5.1cxx11abiFALSE-cp310-cp310-win_amd64.whl
flash_attn-2.7.4.post1+cu124torch2.4.0cxx11abiFALSE-cp312-cp312-win_amd64.whl
flash_attn-2.7.4.post1+cu124torch2.4.0cxx11abiFALSE-cp311-cp311-win_amd64.whl
flash_attn-2.7.4.post1+cu124torch2.4.0cxx11abiFALSE-cp310-cp310-win_amd64.whl
flash_attn-2.7.4+cu126torch2.6.0cxx11abiFALSE-cp312-cp312-win_amd64.whl
flash_attn-2.7.4+cu126torch2.6.0cxx11abiFALSE-cp311-cp311-win_amd64.whl
flash_attn-2.7.4+cu126torch2.6.0cxx11abiFALSE-cp310-cp310-win_amd64.whl
flash_attn-2.7.4+cu124torch2.6.0cxx11abiFALSE-cp312-cp312-win_amd64.whl
flash_attn-2.7.4+cu124torch2.6.0cxx11abiFALSE-cp311-cp311-win_amd64.whl
flash_attn-2.7.4+cu124torch2.6.0cxx11abiFALSE-cp310-cp310-win_amd64.whl
flash_attn-2.7.4+cu124torch2.5.1cxx11abiFALSE-cp310-cp310-win_amd64.whl
flash_attn-2.7.1.post1+cu124torch2.5.1cxx11abiFALSE-cp39-cp39-win_amd64.whl
flash_attn-2.7.1.post1+cu124torch2.5.1cxx11abiFALSE-cp312-cp312-win_amd64.whl
flash_attn-2.7.1.post1+cu124torch2.5.1cxx11abiFALSE-cp311-cp311-win_amd64.whl
flash_attn-2.7.1.post1+cu124torch2.5.1cxx11abiFALSE-cp310-cp310-win_amd64.whl
flash_attn-2.7.1.post1+cu124torch2.4.0cxx11abiFALSE-cp39-cp39-win_amd64.whl
flash_attn-2.7.1.post1+cu124torch2.4.0cxx11abiFALSE-cp312-cp312-win_amd64.whl
flash_attn-2.7.1.post1+cu124torch2.4.0cxx11abiFALSE-cp311-cp311-win_amd64.whl
flash_attn-2.7.1.post1+cu124torch2.4.0cxx11abiFALSE-cp310-cp310-win_amd64.whl
flash_attn-2.7.1.post1+cu124torch2.3.1cxx11abiFALSE-cp39-cp39-win_amd64.whl
flash_attn-2.7.1.post1+cu124torch2.3.1cxx11abiFALSE-cp312-cp312-win_amd64.whl
flash_attn-2.7.1.post1+cu124torch2.3.1cxx11abiFALSE-cp311-cp311-win_amd64.whl
flash_attn-2.7.1.post1+cu124torch2.3.1cxx11abiFALSE-cp310-cp310-win_amd64.whl
flash_attn-2.7.0.post2+cu124torch2.5.1cxx11abiFALSE-cp39-cp39-win_amd64.whl
flash_attn-2.7.0.post2+cu124torch2.5.1cxx11abiFALSE-cp312-cp312-win_amd64.whl
flash_attn-2.7.0.post2+cu124torch2.5.1cxx11abiFALSE-cp312-cp312-win_amd64.whl
flash_attn-2.7.0.post2+cu124torch2.5.1cxx11abiFALSE-cp311-cp311-win_amd64.whl
flash_attn-2.7.0.post2+cu124torch2.5.1cxx11abiFALSE-cp311-cp311-win_amd64.whl
flash_attn-2.7.0.post2+cu124torch2.5.1cxx11abiFALSE-cp310-cp310-win_amd64.whl
flash_attn-2.7.0.post2+cu124torch2.5.0cxx11abiFALSE-cp312-cp312-win_amd64.whl
flash_attn-2.7.0.post2+cu124torch2.5.0cxx11abiFALSE-cp311-cp311-win_amd64.whl
flash_attn-2.7.0.post2+cu124torch2.4.1cxx11abiFALSE-cp312-cp312-win_amd64.whl
flash_attn-2.7.0.post2+cu124torch2.4.1cxx11abiFALSE-cp311-cp311-win_amd64.whl
flash_attn-2.7.0.post2+cu124torch2.4.1cxx11abiFALSE-cp310-cp310-win_amd64.whl
flash_attn-2.7.0.post2+cu124torch2.4.0cxx11abiFALSE-cp39-cp39-win_amd64.whl
flash_attn-2.7.0.post2+cu124torch2.4.0cxx11abiFALSE-cp312-cp312-win_amd64.whl
flash_attn-2.7.0.post2+cu124torch2.4.0cxx11abiFALSE-cp312-cp312-win_amd64.whl
flash_attn-2.7.0.post2+cu124torch2.4.0cxx11abiFALSE-cp311-cp311-win_amd64.whl
flash_attn-2.7.0.post2+cu124torch2.4.0cxx11abiFALSE-cp311-cp311-win_amd64.whl
flash_attn-2.7.0.post2+cu124torch2.4.0cxx11abiFALSE-cp310-cp310-win_amd64.whl
flash_attn-2.7.0.post2+cu124torch2.4.0cxx11abiFALSE-cp310-cp310-win_amd64.whl
flash_attn-2.7.0.post2+cu124torch2.3.1cxx11abiFALSE-cp39-cp39-win_amd64.whl
flash_attn-2.7.0.post2+cu124torch2.3.1cxx11abiFALSE-cp312-cp312-win_amd64.whl
flash_attn-2.7.0.post2+cu124torch2.3.1cxx11abiFALSE-cp311-cp311-win_amd64.whl
flash_attn-2.7.0.post2+cu124torch2.3.1cxx11abiFALSE-cp310-cp310-win_amd64.whl
flash_attn-2.6.3+cu123torch2.4.0cxx11abiFALSE-cp39-cp39-win_amd64.whl
flash_attn-2.6.3+cu123torch2.4.0cxx11abiFALSE-cp38-cp38-win_amd64.whl
flash_attn-2.6.3+cu123torch2.4.0cxx11abiFALSE-cp312-cp312-win_amd64.whl
flash_attn-2.6.3+cu123torch2.4.0cxx11abiFALSE-cp311-cp311-win_amd64.whl
flash_attn-2.6.3+cu123torch2.4.0cxx11abiFALSE-cp310-cp310-win_amd64.whl
flash_attn-2.6.3+cu123torch2.3.1cxx11abiFALSE-cp39-cp39-win_amd64.whl
flash_attn-2.6.3+cu123torch2.3.1cxx11abiFALSE-cp38-cp38-win_amd64.whl
flash_attn-2.6.3+cu123torch2.3.1cxx11abiFALSE-cp312-cp312-win_amd64.whl
flash_attn-2.6.3+cu123torch2.3.1cxx11abiFALSE-cp311-cp311-win_amd64.whl
flash_attn-2.6.3+cu123torch2.3.1cxx11abiFALSE-cp310-cp310-win_amd64.whl
flash_attn-2.6.3+cu123torch2.2.2cxx11abiFALSE-cp39-cp39-win_amd64.whl
flash_attn-2.6.3+cu123torch2.2.2cxx11abiFALSE-cp38-cp38-win_amd64.whl
flash_attn-2.6.3+cu123torch2.2.2cxx11abiFALSE-cp312-cp312-win_amd64.whl
flash_attn-2.6.3+cu123torch2.2.2cxx11abiFALSE-cp311-cp311-win_amd64.whl
flash_attn-2.6.3+cu123torch2.2.2cxx11abiFALSE-cp310-cp310-win_amd64.whl
这里以flash_attn-2.8.3+cu128torch2.9.0cxx11abiFALSE-cp313-cp313-win_amd64.whl为例子,以下是详细的安装教程,其他版本类似:
前提条件检查
- Python版本:必须是Python 3.13(cp313表示Python 3.13)
- CUDA版本:需要CUDA 12.8环境
- PyTorch版本:需要PyTorch 2.9.0
- 操作系统:Windows 64位(win_amd64)
安装步骤
1. 确认环境符合要求
bash
# 检查Python版本
python --version
# 检查PyTorch和CUDA
python -c "import torch; print(f'PyTorch版本: {torch.__version__}'); print(f'CUDA可用: {torch.cuda.is_available()}'); print(f'CUDA版本: {torch.version.cuda}')"
2. 安装方法
方法一:直接使用pip安装(推荐)
bash
# 如果有.whl文件本地路径
pip install flash_attn-2.8.3+cu128torch2.9.0cxx11abiFALSE-cp313-cp313-win_amd64.whl
# 或者如果是从网上下载的
pip install "完整文件路径\flash_attn-2.8.3+cu128torch2.9.0cxx11abiFALSE-cp313-cp313-win_amd64.whl"
方法二:从官方源安装(自动选择合适版本)
bash
# FlashAttention v2官方安装
pip install flash-attn --no-build-isolation
# 或者指定版本
pip install flash-attn==2.8.3
3. 验证安装
python
import torch
import flash_attn
print(f"FlashAttention版本: {flash_attn.__version__}")
# 测试简单功能
batch_size, seq_len = 2, 1024
nheads, d = 8, 64
q = torch.randn(batch_size, seq_len, nheads, d).cuda()
k = torch.randn(batch_size, seq_len, nheads, d).cuda()
v = torch.randn(batch_size, seq_len, nheads, d).cuda()
output = flash_attn.flash_attn_func(q, k, v)
print(f"输出形状: {output.shape}")
print("安装成功!")
常见问题解决
1. 如果出现版本不匹配错误
bash
# 可能需要升级/降级PyTorch
pip install torch==2.9.0 torchvision torchaudio --index-url https://download.pytorch.org/whl/cu128
2. 如果缺少依赖
bash
# 安装必要的依赖
pip install packaging ninja
3. 如果CUDA版本不对
- 检查NVIDIA驱动是否支持CUDA 12.8
- 更新显卡驱动到最新版本
- 确保环境变量
CUDA_PATH指向正确的CUDA 12.8安装路径
4. 编译相关问题
对于Windows用户,如果遇到编译错误:
bash
# 安装Visual C++ Build Tools
# 从微软官网下载安装Visual Studio Build Tools
# 选择"C++桌面开发"工作负载
# 或者使用预编译的wheel文件
备选方案
如果这个特定版本安装失败,可以考虑:
- 使用兼容版本:
bash
pip install flash-attn==2.7.3 # 较旧但可能更稳定
- 从源码编译(需要开发环境):
bash
git clone https://github.com/Dao-AILab/flash-attention
cd flash-attention
pip install -e .
- 使用Docker容器:
dockerfile
FROM pytorch/pytorch:2.9.0-cuda12.8-cudnn9-runtime
RUN pip install flash-attn
注意事项
-
文件名解析:
cu128:CUDA 12.8torch2.9.0:PyTorch 2.9.0cxx11abiFALSE:使用旧的C++ ABIcp313:Python 3.13win_amd64:Windows 64位
-
确保所有包版本严格匹配,否则可能导致运行时错误
如果遇到具体错误信息,请提供详细信息以便进一步帮助。