想要看linux版本下安装问题的请走这里:安装flash-attention失败的终极解决方案(LINUX环境)
其实,现在的flash-attention不像 v2.3.2之前的版本,基本上不兼容WINDOWS环境。但是在WINDOWS环境安装总还是有那么一点不顺畅,所以我做了一个简单的总结,希望能帮到大家。
今天是2025年5月29日。最近在WINDOWS系统上测试成功的AI项目,要用到flash-attention,但是因为那时候忙,就忘了截图,所以把几个关键点跟大家说一下。
本人的WINDOWS环境下成功的版本,基础环境:
1、Python==3.9.21(其实我好像试过Python3.10、3.11好像也能成功)。
2、显卡:RTX 3060
3、nvidia-smi:576.40
4、cuda:12.9 (cuda版本其实降一点应该也可以,没详细测试)
pip环境(Python==3.9.21,pip版本25.1.1):
1、torch==2.5.1+cu121
2、torchvision==0.20.1+cu121
3、ninja==1.11.1.4
4、flash_attn==2.7.0.post2
首先建议安装 torch、torchvision、ninja之后再安装flash-attention,否则安装过程中会出问题,特别是如果自动安装给你安装了不合适的版本就比较麻烦了,而且ninja对于flash-attention安装还是有加速效果的。所以我们在搭建AI框架的时候如果要用到flash-attention,建议还是手动先安装这3个吧。
安装ninja之后我感觉安装flash-attention速度还是有快有慢,这可能跟Python版本,或者 torch、torchvision、ninja这些的版本有关,我记得当初安装Python3.11的时候,flash-attention就挺快的。但是在其他Python版本的时候,flash-attention安装的时间就挺慢(好几个小时),但安装都是成功的,没有失败。
这里特别要说明的就是这个flash_attn==2.7.0.post2,torch、torchvision、ninja安装之后我一开始安装其他版本的flash_attn也是成功的,但是在测试flash_attn版本(import flash_attn; print(flash_attn.__version__)) 却报错了(没截图)。
后来问deepseek,它给我的回答要安装的flash_attn版本在WINDOWS版本库里面也没有。告诉了deepseek我是WINDOWS系统它也没给我一个准确答案要装flash_attn哪个版本才对,后来自己摸索了在以上torch、torchvision、ninja版本下,flash_attn==2.7.0.post2是不光安装成功,测试也顺利成功了。