WebUI ForgeでFlux.1 [dev]の使い方 GGUF・LoRAの使用方法も紹介
Flux.1をComfyUIで動かす記事が続いていたので、今回はA1111 WebUIの実験版「Stable Diffusion WebUI Forge」でFlux.1を動かしてみましょう。WebUI ForgeはA1111 WebUIのUIとほとんど同じなのでA1111 WebUIに慣れている方は問題なく使えるでしょう。機能に至っては本家より優秀とも言われています。中でもメモリー管理などは優秀でVRAMの管理を自動でやってくれるので重宝するでしょう。また、ComfyUIの様に複雑なグラフを組み立てなくても使えるのでAI生成イラストの初心者にも使いやすいと思います。
Stable Diffusion WebUI Forgeのインストール方法
ファイルのダウンロード
Stable Diffusion WebUI Forgeのインストールするには公式のGitHubのリリースページに3つのバージョンがあるので1つをダウンロードしましょう。WebUI ForgeはA1111 WebUIの様にPythonやGitを個別にインストールする必要はなく、すべての必要ファイルがバンドルされています。
- webui_forge_cu121_torch21.7z:以前のリリースで使われていたバンドル。
- webui_forge_cu121_torch231.7z:公式がオススメしているバンドル。
- webui_forge_cu124_torch24.7z:一番早いバンドル。しかし、xformersが動かなかったりMSVCが壊れていたりします。
今回は公式がオススメしている2番目のwebui_forge_cu121_torch231.7z
をダウンロードします。
ファイルの解凍とアップデート
ダウンロードした7zipファイルをインストールしたい場所に解凍します。(例:C:\Users\あなたのユーザー名)
解凍が終わればフォルダー内にあるupdate.bat
を実行してアップデートしましょう。※これをスキップするとFlux.1が使えなかったりします。アップデートが終了するとターミナルに「続行するには何かキーを押してください . . .」と出てくるので何かキーを押して終了してください。
アップデートが完了したらrun.bat
を実行してWebUI Forgeを起動しましょう。初回起動では必須ファイルをダウンロードしてインストールする為、少し起動に時間が掛かりますが、ブラウザが開くまで待ちましょう。
ブラウザが起動すればインストール成功です。しかし、この状態ではモデルが入っていないので何もできません。A1111 WebUIをお使いの方は下記の方法でモデルを共有させましょう。何もモデルを持っていない方は次のステップは無視してFlux.1モデルをインストールしましょう。
A1111 WebUIのモデルを共有させる
モデルを共有させるには2通りの方法があります。\webui_forge_cu121_torch231\webui
にあるwebui-user.bat
をメモ帳などのテキストエディターで開き編集します。
6行目にある「set COMMANDLINE_ARGS=」に下記の例の様にA1111 WebUIのckpt・lora・vae・embeddingsのパスを記入します。
set COMMANDLINE_ARGS=--ckpt-dir "C:\Users\ユーザー名\stable-diffusion-webui\models\Stable-diffusion" --lora-dir "C:\Users\ユーザー名\stable-diffusion-webui\models\Lora" --embeddings-dir "C:\Users\ユーザー名\StableDiffusion\stable-diffusion-webui\embeddings" --vae-dir "C:\Users\ユーザー名\StableDiffusion\stable-diffusion-webui\models\VAE
パスが分からない方はファイル エクスプローラーで共有したいチェックポイントまたはLoRAのフォルダーを開きます。エクスプローラーのアドレスバーを右クリックするとメニューが出てくるので「アドレスをコピー」でパスをコピーする事ができます。
共有化方法②コチラの方法が公式の方法なのですが、この方法だとVAEが共有できませんでした。
9行目から16行目のコメントアウト部分の@REM
を削除します。
9行目の「Your A1111 checkout dir」を共有元のパスを記入します。例:C:\Users\ユーザー名\stable-diffusion-webui
この行にパスをファイル エクスプローラーから貼り付けるときに注意してほしいのが、ディレクトリの区切りが¥
になっていると思いますが、このままではエラーになります。解消方法は¥
を\
に書き換えましょう。共有化方法①の場合は自動で変換されるのでこの作業の必要はありません。
WebUI ForgeでFlux.1 [dev]のインストール方法
WebUI Forgeのインストールが無事に完了したらFlux.1のモデルをインストールしていきましょう。今回はオフィシャルのFlux.1 [dev]の公式バージョンとGGUFバージョン、さらにBitsandBytes NF4バージョンのモデルを紹介します。
チェックポイントモデルのダウンロード
下記の中からお好きなモデルをダウンロードしましょう。後ほど紹介する使用方法では「Flux.1 [dev]公式モデル」と「Flux.1 [dev]GGUFモデル」を使います。ダウンロード先は\webui_forge_cu121_torch231\webui\models\Stable-diffusion
になります。A1111 WebUIと共有している場合は共有元フォルダーにダウンロードしましょう。
Flux.1 [dev]公式モデルはblack-forest-labsのHuggingFaceに公開されています。23.8GBと大きなファイルになります。
Flux.1 [dev]GGUFモデルFlux.1 [dev]GGUFモデルはcity96のHuggingFaceに公開されています。今回は8bit版を紹介します。
Flux.1 [dev]BitsandBytes NF4モデルFlux.1 [dev]BitsandBytes NF4モデルはWebUI Forgeの開発者のlllyasvielのHuggingFaceに公開されています。※コチラのモデルは「RTX 30XX/40XX」が必要になります。
Flux.1 [dev]FP8モデル公式モデルのFP8バージョン。※「GTX 10XX/20XX」の方はコチラを使用します。
テキストエンコーダーのダウンロード
チェックポイントモデルをダウンロードしたら下記のテキストエンコーダーを\webui_forge_cu121_torch231\webui\models\text_encoder
にダウンロードしましょう。
FP16(9.79GB)かFP8(4.89GB)をダウンロードしましょう。FP8のほうが精度は落ちますがファイル容量は軽量となっています。テキストエンコーダーはRAMで処理するのでPCのRAMが収まるなら大きい方のFP16を使いましょう。後ほど使うモデルはFP16(9.79GB)
になります。
GGUFモデルを使いたい方は必須ではありませんが、下記のテキストエンコーダーをダウンロードしましょう。今回は8bit版を紹介します。
VAEのダウンロード
VAEはblack-forest-labs公式のVAEを\webui_forge_cu121_torch231\webui\models\VAE
にダウンロードしましょう。こちらも共有している場合は共有元にダウンロードします。
以上でFlux.1 [dev]のインストールが完了しました。次に使用方法を見ていきましょう。
WebUI ForgeでFlux.1 [dev]の使用方法
基本的な使い方
以前にA1111 WebUI・WebUI Forgeを一度も使った事がない方は下記の記事にてA1111 WebUIの基本を解説しています。WebUI Forgeも基本操作は同じなので一度目を通しておきましょう。
まずは基本的なFlux.1 [dev]を紹介します。UIの左上に「UI」と書かれたチェックボックスで「sd/xl/flux/all」と選択できるのでflux
を選択します。すると設定がFulx用に変更されます。
※デフォルト値を変更したい場合はSettingsにあるUser Interfaceにある「UI defaults ‘flux’」で変更できます。
気を付けたいところがUI上部にある「GPU Weights (MB)」の値です。これが高すぎると生成時にVRAM不足になり1/10のスピードになってしますので少しだけ下げるようにしましょう。詳しくは🔗公式のリポジトリ(英語)で議論されています。
チェックポイントモデルの読み込み
それではUI上部から設定していきましょう。Checkpointに先ほどダウンロードしたチェックポイントモデルを選択します。ココでは例としてflux1-dev.safetensors
を選択します。
VAEとText Encoderの読み込み
つづいてVAE / Text EncoderにVAEとテキストエンコーダーを選択しましょう。ae.safetensors
、clip_l.safetensors
、t5xxl_fp16.safetensors
の3つを選択します。基本的に最初の2つはどのモデルでも共通して使うのですが最後のT5xxlエンコーダーはFP16/FP8/GGUFのどれか1つを使用します。ご自身のRAM容量によって変えても良いかもしれません。
プロンプトの入力
プロンプトを入力します。今回はForgeの説明にあるジャングルにいる宇宙飛行士のプロンプトを使ってみましょう。
Astronaut in a jungle, cold color palette, muted colors, very detailed, sharp focus
生成
その他の値はデフォルトのままで問題ありません。「Generate」ボタンを押して生成してみましょう。
Flux.1 [dev]ならではの高品質な画像が生成されたのではないでしょうか。
LoRAおよびGGUFを使った生成
基本的な使い方が分かったところで、応用としてLoRAを使ってイラスト調に変更するのと、GGUFモデルを使って処理を高速化してみましょう。
LoRAのダウンロード
まずは下記の3つのLoRAを\webui_forge_cu121_torch231\webui\models\Lora
にダウンロードしましょう。※A1111 WebUIのモデルを共有している場合は共有元にダウンロードしてください。
アップスケーラーモデルのダウンロード
ココの例で使用するUpscalerモデルの「4x-UltraSharp」はデフォルトではインストールされていませんので下記のモデルを\webui_forge_cu121_torch231\webui\models\ESRGAN
にダウンロードしましょう。
LoRAの読み込み方法はA1111 WebUIと同じなので詳しくは下記の記事を参考にしてください。
チェックポイントモデルの読み込み
チェックポイントモデルをflux1-dev-Q8_0.gguf
に変更します。
テキストエンコーダーの読み込み
テキストエンコーダーはt5-v1_1-xxl-encoder-Q8_0.gguf
を選択してさらなる高速化を目指しても良いのですが、今回は品質を重視してt5xxl_fp16.safetensors
を使用します。
Diffusion in Low Bitsの設定
GGUFやFP8の様な軽量化されたチェックポイントモデルにLoRAを適応する場合はDiffusion in Low Bitsの設定をAutomatic (fp16 LoRA)
に変更する必要があります。
プロンプトの入力
次にプロンプトを入力します。プロンプトは自然言語スタイルとDanbooruスタイルの両方を理解しますので混ぜて入力しています。最後の行にはLoRAを読み込んでウェイトを設定しています。
A masterful highly intricate detailed cinematic digital painting.
In the European medieval fantasy era.
An wizard young girl with a wizard hat and robe is making healing potions in a sun-drenched workshop.
There are many bundles of medicinal herbs hanging in the workshop.
A lot of sun rays in the workshop.
The wall of workshop is colored turquoise blue.
On the table are many completed bottles of healing potions.
On a shelf in the background is a small glass terrarium of a tropical rainforest with a tiny floating light particles.
A hyper realistic, very detailed, masterpiece, intricate details, clear flat anime eyes, round shaped pupils, large highlight on eyes, 50mm lens shot, soft edge line for girl's face, smile, looking at viewer, head tilt, correct perspective, flat color style
<lora:FLUX-daubrez-DB4RZ-v2:0.75> <lora:Flux.1_Turbo_Detailer:0.4> <lora:sifw-annihilation-fluxd-lora-v11:0.75>
パラメーターの入力
パラメーターを変更します。下記のリストを変更していきましょう。
- Schedule typeを
Beta
に選択 - Sampling stepsを
30
まで上げる - Widthを
1280
に変更 - Heightを
720
に変更
Hires. fixの設定をチェックボックスをオフのまま下記の様に変更します。
- Upscalerを
4x-UltraSharp
に選択 - Hires stepsを
10
に変更 - Denoising strengthを
0.35
まで下げる - Upscale byを
1.5
に変更
生成
以上でパラメーターの変更は完了です。「Generate」ボタンを押して生成してみましょう。
気に入った構図が出てきたらプレビューエリアにある「✨」ボタンでHires. fixを適応させてみましょう。
最終結果
いかがでしょう?Flux.1は実写の生成はかなりの品質で生成できますが、イラスト関係はあまり良くないことがあります。しかし、LoRAを使う事でこの様に高品質なイラストを生成する事ができます。
まとめ
今回はWebUI ForgeのインストールからLoRA・GGUFの使い方を紹介させていただきました。詳しくベンチマークは取ってはいませんが、Flux.1の生成はComfyUIより早く動いていると思いました。スペックが低いPCをお使いの方もGGUFを使ってヘビー級のFlux.1を使うことができるのも大きなアドバンテージになるでしょう。