Blog

LCM LoRAで高速化

LCMはLatent Consistency Modelの頭文字だそうです

Stable Diffusionの画像生成をさらに速くする

 LCM LoRAは先日,こちらの記事で見つけました。筆者の方が使っているPCは現行製品の中でも最速GPUであるRTX 4090を搭載しているので,私の環境でも高速化できるか試してみました。

LoRAで高速化するって不思議

 高速化の手順はとっても簡単で,LoRAファイルをダウンロードして配置するだけです。あとは通常通りの生成手順で利用可能というお手軽さです。モデルファイルを変換するなどの必要もありません。

WebUIで使うときの注意点は以下の4点です。

1)Sampling methodはDPM++ 2S a KarrasかEuler

2)Sampling stepsは4~8

3)CFG ScaleはSD1.5の場合は2.5,SDXLの場合は2.0

4)LoRAの適用量は0.3程度

2)がLCM LoRAのポイントで,詳細は分かりませんが,ステップ数を少なくして生成することで高速化しているようです。LoRAで高速化って不思議だったのですが,少ないステップできちんと画像が生成できるようにモデルを学習させるってことなのでしょうか。

Stable Diffusion 1.5でテストしました

 まずは,LCM LoRAを使わないで普通に画像を生成しました。設定は512x768ピクセル,Sampling steps30,CFG Scale7で普段使っている感じの数値です。

概ね1枚8.3秒(3.9it/s)くらいの時間がかかりました。いつもこのくらいの時間だと思います。

スクリーンショット 2023-11-20 223318.png

00038-4208132979.png

次にLCM LoRAを使うようにして,上記の注意点に書いた設定をして画像を生成したところ,1枚2.4秒(3.1it/s)くらいの時間になり,確かに高速化していることがわかりました。生成された画像を見たところ,モデルの特徴も出ていますし,画質も損なわれていないようなので十分使えるのではないかと感じました。生成スピード自体は遅くなっているようですが,ステップ数が少ないので結果的に速くなっています。

スクリーンショット 2023-11-20 223641.png

00040-4208132979.png

Stable Diffusion XLでテストしました

 こちらも1.5と同じ方法で確認したところ,1枚22.1秒(1.6it/s)から9.2秒(1.2s/it)とこちらも高速化されました。SDXLの方が高速化の恩恵が大きいようです。

00127-3187230066.png 00126-3187230066.png

左がLCM LoRAを使っていない状態,右が使った状態で生成した画像です。

しばらく使ってみます

 Samplerが変更できないなど若干設定に制限はありますが,もともとSamplerはほぼ固定で使っていましたし,拡張機能の使用も問題ないようなので継続して使ってみようと思います。

Batch Countを10にして連続生成すると,生成途中の画像が表示されなくなりました。表示する間がないほど速く生成されているのかなぁと思いつつ,処理が終わらないとどんな画像が生成されたかわからないのも気になります。

この記事へのコメント

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

コメントを送る

必須
必須  
※ メールアドレスは公開されません
任意
必須
Loading...  画像の文字を入力してください
1
2
3
4
5
6
7
8