How to build whl of flash-attention for Windows (※Uploaded whl for Python 3.12-3.14)
2026年6月11日、pytorch2.12.0+cu132、及び私が独自に改良したv2.9.1前提の記述に更新し、Python3.14用whlも公開しました。
序
従前、いくつかの記事でリンクを貼ってきましたが、基本的に私が使用するflash-attentionのWindows用whlは以下から入手してきた訳ですが、
前述したように、2025年8月18日時点で最新のPytorch 2.8.0+cu129用のwhlは公開されていません。
ただ、x上で自力でWindows用whlを作成した…という方がいて、上のサイトをよく見ると、ビルド用のバッチファイルが公開されているのですね。
そこで、私も自力でBuildしてみようと思い立った…訳ですが、簡単かと思いきや何気に色々難しく、ここはManus先生の力を借りる事にしました。
OpenAIとGoogle GeminiのDeep ResearchとCursor先生では、ここまでのタスク遂行は無理でした。
Deep Researchはプロンプト次第で正しい手順迄提示してくれたかもしれませんが、やはりこのレベルのタスク遂行になると、Manusのミッション遂行能力は頭一つ抜けています。
遺憾ながら、聊かコストがお高いのですがね。
ちなみに、最初はもうManusにwhlを作ってもらおうと思ったのですが、ManusはLinuxベースの動作しか出来ないようで、WindowsベースのPythonコード実行は出来ないようです。
逆に言えば、Linuxベースで各種AIを動作させているユーザーにとっては超強力なツールとなりうる理屈ですが、遺憾ながら私はWindowsユーザーですから、是非もありません。
ともあれ、ManusはWindowsベースでの手順書は作成してくれました。
これは本来、Google GeminiやOpenAIのDeep Researchでも出来る筈なのですが、残念ながらGoogleとOpenAIが作成した解説書では成功しませんでした。比較すると、いくつか重要な記述が抜けているのですよ。
その観点からも、Manusは優れていましたね。
Flash Attention-2 v2.9.1 Windows Wheel ビルド手順書 (venv 使用)
このドキュメントは、Windowsマシン上で flash-attention Pythonパッケージ(バージョン v2.9.1)をホイールファイル(.whl)としてビルドするためのステップバイステップの手順を提供します。このビルドは、Python 3.14 および CUDA 13.2 サポート付きの PyTorch 2.12.0 を対象としています。
免責事項: Windows上での flash-attention のビルドは複雑であり、特定のバージョンの開発ツールに依存します。これらの手順は、公式リポジトリおよびコミュニティリソースからの情報に基づいています。成功は、お使いの特定のシステム構成によって異なる場合があります。
1. 前提条件
お使いのWindowsシステムに以下のソフトウェアが正しくインストールされ、設定されていることを確認してください。
Windows OS: Windows 10 または 11 (64ビット)。
NVIDIA GPU: FlashAttention-2と互換性のあるNVIDIA GPU(Ampere、Ada、またはHopperアーキテクチャ、例: RTX 30xx、RTX 40xx、A100、H100)が必要です。
NVIDIA CUDA Toolkit: Pytorch 2.12.0+cu132に合わせてCUDA13.2.xをインストールしてください。NVIDIA CUDA Toolkit Archive からダウンロードできます。インストール後、CUDAのインストールパスがシステムのPATH環境変数に追加されていることを確認してください。
Microsoft Visual Studio: Visual Studio 2019 または 2022 が推奨されます。「C++によるデスクトップ開発」 ワークロードをインストールし、最新のMSVC v143(またはv142)ビルドツールとWindows SDKを含めてください。Visual Studio website からCommunityエディションをダウンロードできます。
Git for Windows: ソースコードリポジトリのクローンに必要です。git-scm.com からダウンロードしてください。
Python: Python 3.14 (64ビット) をインストールしてください。python.org からダウンロードできます。インストール中にPythonとpipがシステムのPATHに追加されていることを確認してください。
2. How to build
x64 Native Tools Command Prompt for VS2022を管理者権限で起動し、ルートを作業フォルダに移動した後、まず仮想環境を構築します。以下は、Python3.13.xの場合です。
REM Python 3.14で新しい仮想環境を作成
C:\Users\ユーザー名\AppData\Local\Programs\Python\Python314\python.exe -m venv venvアクティベートを行います。
REM 新しい仮想環境をアクティベート
venv\Scripts\activatePytorchをインストールします。当然、Pytorchのバージョン次第で、以下構文は変わります。現状最新のPytorch2.9.1+cu130に合わせた構文です。
REM PyTorchとCUDA 13.0対応版をインストール
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu130必要なライブラリーをインストールします。この時、pip自体の更新も必要な場合がありますので、画面の指示に従ってください。
pip install ninja packagingPython仮想環境とWindowsグローバル環境にインストールされたPytorchのバージョンが、一致しているか確認します。
python -c "import torch; print(f'PyTorch version: {torch.__version__}') ; print(f'CUDA available: {torch.cuda.is_available()}'); print(f'CUDA version: {torch.version.cuda}')"Git Bash またはコマンドプロンプトを開き、実行します:
git clone https://github.com/Dao-AILab/flash-attention.git
cd flash-attentionタグのチェックアウトにより、 目的のバージョンに切り替えます:
git checkout v2.9.1
git submodule update --init --recursiveビルドスクリプトのダウンロード: WindowsWhlBuilder_cuda.bat スクリプトをダウンロードします。このスクリプトは、Windowsビルドに焦点を当てたコミュニティリポジトリで提供されています:
アクセス先: https://huggingface.co/lldacing/flash-attention-windows-wheel/tree/main
WindowsWhlBuilder_cuda.bat ファイルを見つけます。
それをクリックし、「Download」ボタンをクリックします。
この .bat ファイルを、先ほどクローンした flash-attention ディレクトリ直下に保存します。
並列処理数の調整 (任意): コンパイル中にメモリの問題が発生した場合や、CPU使用率を制限したい場合は、テキストエディタで WindowsWhlBuilder_cuda.bat を編集できます。set MAX_JOBS=... という行を見つけ(デフォルトで高い数値になっているか、存在しない場合があります)、より低い値に変更します。例: set MAX_JOBS=4。
バッチスクリプトを実行します:
WindowsWhlBuilder_cuda.bat3. 出力
ビルドが成功した場合、コンパイルされたwhlファイルは、flash-attentionフォルダ内に新しく作成された dist サブディレクトリに配置されます。
4. インストール
ホイールがビルドされたら、pipを使用してインストールできます(仮想環境がまだアクティブであることを確認してください):
pip install "whlファイルのパス"
5. トラブルシューティング
ビルドエラー: ほとんどのエラーは、CUDA Toolkit、Visual Studio C++ツール、またはPyTorchのバージョンやパスが正しくないことに関連しています。すべての前提条件とPATH設定を再確認してください。
メモリ不足: メモリ制限によりビルドが失敗した場合は、.bat スクリプトで MAX_JOBS を設定して並列ジョブの数を減らしてください。
nvcc が見つからない: CUDA Toolkitの bin ディレクトリがシステムのPATHに正しく追加されていることを確認してください。
Visual Studio エラー: 「C++によるデスクトップ開発」ワークロードが完全にインストールされていることを確認してください。
GitHub Issues の確認: flash-attention GitHub Issues で同様の問題を検索してください。
ビルドの成功をお祈りしています
Result
んで、Maxjobs=1では8時間以上かかりますが、完成しました。Python3.12から3.14用のWindows版です。以下からダウンロードしてください。
上の手順を実際に運用したログは、後で追記しますよ。多少、アレンジは必要でしたから。
いやしかし、ChatGPTの2倍お高いものの、Manusの威力は日々痛感してます。明らかに、Deep Researchよりもプロジェクト遂行力は上ですね。
以下のように、実際にインストールもできました。尤も、A1111にflash-attentionをインスト-ルしても大して意味がありませんが。

Python3.12.x用も無事ビルドが完了しました。
所要時間考えたら、お金取りたい位ですけど、上のLiuXuefeng氏は無料で公開してますからね。私ごときが、お金取る訳に行かないでしょうよ。
実際のログ
以下はPytorch2.7.0+cu128環境とFlash Attention-2 2.7.4.post2当時のログです。まず、グローバル環境にて、下図のコマンドを実行します。

下図のように、まず仮想環境を作成し、Pytorch2.7.0+cu128をインストールしていきますが、この場合はD:\fa下での作業になっています。

下図のように、パッケージ版のCUDAとPytorch側のCUDAは、12.8できちんと一致しています。また、git cloneを行ってflash-attentionのリポジトリをダウンロードした後に、git checkoutでバージョン指定を行う事は非常に重要で、これを飛ばすと、この後正常にビルドが出来ません。

次に、ダウンロードしたバッチファイルを編集します。上のPython3.11版では初期値のset MAX_JOBS=1で実行したのですが、壮絶に時間がかかりました。Manus先生と相談して、8に設定しました。当然、この最適値はPCスペックに依存します。

8だと、Ryzen 9 7900の12コア24スレッドを以てしても、CPU負荷はほぼ全開になります。

処理中です。8でも、それなりに時間はかかります。また上解説にある通り、「x64 Native Tools Command Prompt for VS 2022で実行する」が必須条件になります。

今度は約2時間で完成しました。

