想要看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是不光安裝成功,測試也順利成功了。