Blog

FLUX.1の高速化

FLUX.1は私の環境では負荷が大きいです。

私の環境でのFLUX.1の生成速度

 FLUX.1を初めて使ったときに感じたのは生成に時間がかかることでした。今回改めて生成時間をチェックしてみました。
モデルはmiyabismmixFLUX_v40Fp8で1,024×1,536ピクセル,20Stepsで画像を生成したところ,1枚102~105秒ほどかかりました。(最初の1枚はもっと時間がかかります)

n1.jpg
n2.jpg

4Stepsで生成できるSchnellモデルもありますが高品質なdevモデルを使いたかったので,次のような高速化をやっています。

Schnell LoRA for Flux.1 Dで4Steps生成

 これは以前の記事でも紹介していますが,devモデルでも4Stepで生成が可能になるというLoRAを使っています。
こちらの生成時間は1枚23~27秒前後で明らかに速くなるため,FLUX.1を使うときはほぼこのLoRAを使っています。人物も背景もLoRAを使わないときと比べるとかなり変化していることがわかります。また,頭頂部の髪の毛の生成が気になります。

4s1.jpg
4s2.jpg

新しい高速化技術が登場

 先日,こちらの記事でFLUX.1の高速化について新たなものが3種類も紹介されていたので試してみることにしました。

1)FLUX.1-Turbo-Alpha

8Stepsで生成できるLoRAです。1枚51~60秒ほどかかりました。4Steps LoRAと比べると,LoRAを使わないときの画像に近い印象です。

8s1.jpg
8s2.jpg

2)ComfyUI-TeaCache

カスタムノードを使うもので,20Stepsで1枚53~60秒ほどかかりました。

t1.jpg
t2.jpg

3)Comfy-WaveSpeed

カスタムノードを使うもので,20Stepsで1枚60~68秒ほどかかりました。

w1.jpg
w2.jpg

今回のサンプル画像はすべて同じプロンプト,同じシード値で生成しています。画像の違いなども比較できるかと思います。

torch.compileでさらに高速化

 上記のComfyUI-TeaCacheとComfy-WaveSpeedについてはtorch.compileという技術を利用するとさらに高速化されるようです。最初はエラーやワーニングの嵐で全く使えなかったのですが,試行錯誤の末Comfy-WaveSpeedではメッセージを出さずに動作するようになりました。1枚53~58秒ほどで生成できたので概ね10秒程度短縮できました。
ComfyUI-TeaCacheでは2枚目を生成しようとするとエラーメッセージが出て止まってしまい,まだ動かせていません。
この試行錯誤の様子は別記事にて取り上げたいと思います。

テストをやってみて

 今回の3種類の高速化は私の環境では1枚50秒台で生成できたので,何も使わないとき約2倍の速度という結果でした。今まで使っていた4Step LoRAと比較すると2倍程度の時間がかかるので,高速化とはなりませんでした。しかし,改めて画像を比較すると,LoRAを使う方法は生成する画像に結構影響することがわかりました。また,今まで使っていた4Step LoRAは拡大すると髪の毛の生成がちょっと気になったので,今後は今回試した方法を使っていこうと考えています。
個人的にはComfy-WaveSpeed+torch.compileでもう少し速くならないかなと考えています。設定などを研究しながら引き続きテストする予定です。SDXLやLTX Videoにも対応しているようなので,こちらも高速化できるか試してみたいです。

この記事へのコメント

コメントはまだありません。

コメントを送る

必須
必須  
※ メールアドレスは公開されません
任意
必須
Loading...  画像の文字を入力してください
9
10
11
12
13
14
15
16