Comfy-WaveSpeedとStability Matrixでの使用方法について@参考(venv)
Comfy-WaveSpeedについて
Comfy-WaveSpeed : r/HunyuanVideo
上のRedditにカスタムノードの記載があり、興味を持っていたところですが、youtubeで、このカスタムノードの詳細な解説がありました。
とても分かりやすい内容で、このカスタムノードの効果のイメージを持つには最適かと思います。
具体的には、生成速度が1.75倍程度に、質の低下が抑えつつ出来るみたいな感じのようです。
以下が、WaveSpeedのGithubリポジトリになります。
このサイトにもありますが、以下のTeaCacheというカスタムノードにインスピレーションを受けたとあります。
このTeaCaheは、生成速度が高速化するのですが、質の低下がある点、SageAttentionというのをインストールしておく必要があったり、手が出しにくいものになっています。
どちらとも、高速化に関連する関連した環境がないと高速化できないという問題があります。
さて、WaveSpeedに関しては、「triton」というのが必要になりますが、Linux用のものらしく、windowsではデフォルトで対応していないという状況です。(要はpip install tritonだけではダメということ)
※Paperspaceだと普通にインストールして使用できます。
Windows PCにtritonをインストールする方法は以下!
下の2つが参考になるかと思います。
特にGILさんの記事は、この問題を見たときに対応策として思い出し、そこから下のGithubに行き着いたので非常に感謝しています。GJLさんは最近もWaveSpeed関連の記事を複数作成されていますので詳細を知りたい方は是非参照してみてください。
<言い訳的なもの>
ここから、Stability MatrixにインストールしているComfyUIの環境にtritonをインストールする記事を作成しようと思っていたのですが、多分私の環境が他の方と異なる可能性がある。。。。。。
ということで、以下はの解説は、おそらく特殊な環境だと思いますが参考まで。venvで仮想環境を作成されている方は同じ感じでいけるかと。
※なぜ特殊かというと、私のComfyUIのpythonは3.10のバージョンになっています。おそらく当初は3.12だったのが、拡張機能(おそらくDeforum)のインストール時に3.10に変えられたのかと思います。
以下のREADMEでは埋め込み型pythonでのインストール方法がありますが、3.10の場合はvenvで仮想環境が作成されていました。。。。
具体的なインストール方法は、上のGithubリポジトリを利用する方法になります。GPTとかにこのページを読ませれば、インストール方法について解説してくれると思います(実体験)。
インストール方法はリポジトリ内の「README」のところをクリックすると詳細が出てきます。
triton-windows/README.md at readme · woct0rdho/triton-windows
<Stability Matrixのvenvの場所>
私の場合、Stability Matrixは、Dドライブに配置してインストールしています。
以下のディレクトリにvenvでComfyUIに対応した仮想環境がありました。
ここにtritonをインストールしていく感じです。
#Stability Matrixがインストールされている場所
"D:\Stablematrix"
#仮想環境の場所
"D:\Stablematrix\Data\Packages\ComfyUI\venv"
#仮想環境内のPython実行ファイル
"D:\Stablematrix\Data\Packages\ComfyUI\venv\Scripts\python.exe"
<PCにあらかじめインストールしておくもの>
以下のPCに以下のものをインストールしておく必要があります。
①CUDA Toolkit:Stability Matrixとバージョンを合わせる
CUDA Toolkit 12.4 Update 1 Downloads | NVIDIA Developer
ダウンロードして、インストールする。
環境変数はインストール時に適切に設定されていました。
②Visual Studio Build Tools
Visual Studio Build Tools を開き、最新バージョンをダウンロードします。
インストール時に以下を選択します
・C++ Build Tools ・MSVC v143(または v142 以上)・Windows SDK
すると、C:\Program Files (x86)\Microsoft Visual Studio\のよう感じでインストールされます。
そのディレクトリ内を進んで、以下のようなフォルダ(※14.41.34120はバージョンなので異なる)をPCの「システム環境変数のPath」に追加します。
C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.41.34120\bin\Hostx64\x64
これは手作業で行う必要がありました。
※最新版とありますが、過去にインストールしていた場合(いつのか分からない)、上のMSVCディレクトリ以下に以下のものがあればよさげです。(vcruntime140.dll、vcruntime140_1.dll)。
③埋め込み型pythonの場合は、追加でGithubページにある、「includeとlibs」のファイルを配置する必要があるようです。
これはpythonのバージョンによって異なります。
<実際にPCにインストールされているか確認するコマンド>
すでにインストールして忘れてしまっている方もおられるかと思いますので、コマンドプロンプトを開いて以下のコマンドでバージョンが出力されるか確認すると良いと思います。
CUDA Toolkit::以下の2つ
nvcc --version
ptxas --version
コマンドプロンプトでバージョンが出ればOK
MSVC (Visual Studio Build Tools)
cl
コマンドプロンプトでバージョンが出ればOK
<仮想環境(venv)でtritonをインストールする>
①コマンドプロンプトで、ComfyUIがインストールされているディレクトリを指定します。
cd D:\Stablematrix\Data\Packages\ComfyUI
ComfyUIのフォルダを開いて、上の検索欄に「cmd」と入れてエンターを押すと、そのディレクトリのコマンドプロンプトが開きます。
※埋め込み型pythonだとここからコマンドが異なります。
②仮想環境をアクチベートします。
venv\Scripts\activate
③以下のコマンドを実行します。
pip install https://github.com/woct0rdho/triton-windows/releases/download/v3.1.0-windows.post5/triton-3.1.0-cp310-cp310-win_amd64.whl
※注意点としては、上のコマンドに「cp310-cp310」という部分があります。ここはpythonのバージョンなので、上のだとpython 3.10に対応したものがインストールされるというものです。
④成功すると以下のようかログになります。
WaveSpeedの高速化は強力なので、若干の手間をかけてもインストールする価値はある印象です。
ただ、こういったのは、「エラーでうまくいかなければ、Stability Matrixを再インストールすれば良いや」的なマインドでするのが良いかと思います。