ComfyUI+stable-fastで倍速生成
ComfyUIを使っています。
最近、ComfyUIを使っています。
あと、SDXLばっかり使ってます。
で、まぁ遅い
LCMとか蒸留最近みんなやってるけど、そこまでやるモチベはあまりない。(言い訳)
ので
stable-fast
を使う
1か月くらい前にこんなツイートをしたんだけど、みんなちょうど別の技術お試ししてたのか、あまり目をかけてる人がいなかった
(たぶんちょうどLCMとかが話題になったくらいだったと思うので)
でまぁ自分もあんま気にしてなかったけど、つい先日の生成AIなんでもLT会の途中くらいにGitHub眺めてたらいろいろ更新されてて、こんな感じのことをぼやいてた
で、これについてだだぱんくんと話してて、with LoRA
がYesなのとか凄いねとか言ってた。(リアルで)
(TensorRTの最前線を走る大学生です。怖いね みんなフォローしよう)
まぁそのあと翌日にv0.0.9でいろいろ先に検証してくれてたけど、Diffuserだとめちゃくちゃ遅い
README.mdにあったComfyUI_stable_fast
だとエラーが出る
ので、試してみたらドンピシャで、ちゃんと生成できた。
興奮したまま次の日の朝(2023/11/14)になってよくよく考えたら同じくらいだったことに気が付いた。
お仕事終わったので、いろいろrepoとNightlyビルド追ってたら、こんなissueが
で、v0.0.10がリリースされたので、試していたらめちゃくちゃ早くなったので、使い方を書きます。
本題
そんなに難しくなくて、大方README.mdにある通り
1. stable-fastをダウンロードする
バージョンに合わせて選んでください。
stable_fast-0.0.10+torch210cu118-cp310-cp310-win_amd64.whl
を使用した。
2. stable-fastと依存関係をインストールする
Windowsは
diffusers>=0.19.3
xformers>=0.0.20
torch>=1.12.0
Linuxはそれに加えて
triton>=2.1.0
の依存関係が必要です。
<wheel file>
にはダウンロードしてきたwhlファイルを置いてください。
# Windows
pip3 install 'diffusers>=0.19.3' 'xformers>=0.0.20' 'torch>=1.12.0' <wheel file>
# Linux
pip3 install 'diffusers>=0.19.3' 'xformers>=0.0.20' 'triton>=2.1.0' 'torch>=1.12.0' <wheel file>
ソースからインストールするには
# Windowsでのビルドの場合はtritonはスキップ
pip3 install 'torch>=1.12.0' 'diffusers>=0.19.3' 'xformers>=0.0.20' 'triton>=2.1.0'
pip3 install ninja
pip3 install -v -U git+https://github.com/chengzeyi/stable-fast.git@main#egg=stable-fast
3. ComfyUI_stable_fastをインストールする
以下のリポジトリからcloneしてください
# custom_nodesのディレクトリ下で行ってください
git clone https://github.com/gameltb/ComfyUI_stable_fast
4. custom nodeを配置する
nodeは以下にあります。
Add Node
→loaders
→Apply StableFast Unet
画像のようにKSamplerの前にnodeが来るように配置してください
5. 生成する
Let's Enjoy!
あとは生成するだけです。
SDXLだろうが、LoRAを適用していようが生成できます。
初回はモデルに適用する必要があるので少し時間がかかりますが、warmupが終わって、3回目以降は倍速くらいで生成できると思います!
RTX3080(VRAM 10GB) + SDXL + 自作LoRAで
- 初回: 297秒
- 2回目: 33秒
- 3回目: 14秒
以降アベレージ15秒未満くらい
まとめ
とくにない...
sdwebuiにはまだ未対応ですが、これまでの追加学習などで使用してきたリソースをそのままに、高速化できるのは大きいのではないかなと思います。
まだまだ改善の余地があるので不定期で更新しようと思います。
個人的にはいま一番興味があるので、今後が楽しみです。
あと、生成AIなんでもLT会の記事もそろそろ書くと思います。
たぶん𝕏が一番早く情報出ると思うので、フォローよろしくお願いします。
あと、一番早く検証してくれた、だだぱんくんのフォローもぜひ
Discussion