見出し画像

Windows PCでStable Diffusion WebUI Forgeを利用する手順

Last update 6-13-2024
※(6-13) 本ツールについて、今後は実験用途に用いられるため通常利用できなくなります。用途変更前の版を利用することは可能なので、目次の次に詳細を記載します。
※(2-24) Samplerが増えたので画像を差し替えました。
※本記事は簡潔な紹介のみです。詳細は関連記事を、使い方はAUTOMATIC1111氏のStable Diffusion web UI向けのものを参照してください。




▼ 追記:現状の最終版を利用する方法

背景

 2024年6月上旬、今後はStable Diffusion WebUI Forgeを実験的なリポジトリに変更する旨が発表されました。これにより拡張機能が使えなくなるなどの問題が起こりうるため、オリジナルであるAUTOMATIC1111版Stable Diffusion web UIを使用することを勧めています。

Forge Announcement (June 8) # 801
https://github.com/lllyasviel/stable-diffusion-webui-forge/discussions/801 

 WebUI Forgeを現状のまま継続して利用するための情報を記載します。

既に利用されている方へ

 git clone でダウンロードされた方は、git pull で更新しないように注意してください。誤って更新してしまった場合は、コミットIDを指定して戻してください。「-b old-stable」は省略可能で、その場合は何やらメッセージが表示されますが問題ありません。また、ブランチ名「old-stable」は別の名前でも構いません。

cd stable-diffusion-webui-forge
git checkout -b old-stable 29be1da7cf2b5dccfc70fbdd33eb35c56a31ffb7

これから新規インストールされる方へ

 本体をダウンロードする方法を修正した(コミットIDの指定を加えた)ので、そのまま本記事を参照してください。

エラーで起動できない場合

 起動中に「ImportError: cannot import name 'Undefined' from 'pydantic.fields' 」が表示されて起動できない場合は、下記の操作を行ってみてください。

cd stable-diffusion-webui-forge
venv\Scripts\activate
pip install albumentations==1.4.3
pip install pydantic==1.10.15
deactivate

参考:
https://github.com/AUTOMATIC1111/stable-diffusion-webui/discussions/15557 


▼ 本記事について

概要

 本記事では、Stable Diffusion WebUI Forgeをインストールして利用する手順を紹介します。こちらの作者は、ControlNetFooocusを手がけられたlllyasviel氏です。

 Stable Diffusion形式のモデルを使用して画像を生成するツールとして、AUTOMATIC1111氏のStable Diffusion web UI(以下AUTOMATIC1111 web UI)が有名ですが、これと比較して下記の特徴があります。

  • 標準で色々な拡張機能が入っているが、それ以外の見た目は同様

  • 高速化と、省メモリ化による最大解像度&バッチサイズの向上(いずれもVRAMがより少ない環境において顕著な模様)

  • Unet Patcherによって拡張機能の作成が容易

  • 追加のSamplerとUpscaler

  • SVD、Z123、masked Ip-adapter、masked controlnet、photomaker等に対応

  • 基本的に起動オプションは不要(AUTOMATIC1111 web UIの起動オプションは非対応)

  • 生成される画像に相違がある(どの程度かは設定による?)

動作環境

 詳しいことは分かっていませんが、通常はGeforceとCUDA Toolkit(11.8か12.1)が必要です。Geforceについては、10 Seriesは不明、16 Seriesは可能かもしれず、20 Series以上であれば確実に動作すると思われます。VRAMは最低6GBを目安としてください。

公式リポジトリ

https://github.com/lllyasviel/stable-diffusion-webui-forge

お手軽なOne-Click Packageについて

 GitとPythonがインストールされていなくても使用できるパッケージが用意されています。公式リポジトリの「Installing Forge」の項にある「Click Here to Download One-Click Package」からダウンロードしてください。これを適当なディレクトリに解凍して、「update.bat」で更新した後に「run.bat」を実行してください。



▼ 関連記事1

 インストール後の個人的な設定について記載しています。



▼ 関連記事2

 VRAM使用量を削減できる、FP8についての記事を先にご紹介。



▼ 関連記事3

 他の方の、Stable Diffusion WebUI Forgeに関する記事です。早めに紹介しておきたいので、ここに挟みます。



▼ インストールと起動

 Python 3.10とGitとCUDA Toolkit 11.8がインストールされた環境で確認しました(注:執筆当時)。作業ディレクトリを「C:\aiwork」としていますので、適宜読み替えてください。

本体のダウンロード

 コマンド プロンプトを開いて、ディレクトリ「C:\aiwork\stable-diffusion-webui-forge」が無い状態で下記のコマンドを順に実行してください(追記:冒頭で述べた「用途変更前」の最終版に戻す操作を追加しています)。

cd \aiwork
git clone https://github.com/lllyasviel/stable-diffusion-webui-forge

cd stable-diffusion-webui-forge
git checkout -b old-stable 29be1da7cf2b5dccfc70fbdd33eb35c56a31ffb7

モデルのコピー(オプション)

 Stable Diffusionモデルが入っていない状態で起動すると、「realisticVisionV51_v51VAE.safetensors」をダウンロードするようです。これを防ぎたい場合は、「stable-diffusion-webui-forge\models\Stable-diffusion」に好みのモデルをコピーしておいてください。

モデルをコピーした状態

起動

 下記のコマンドを実行してください。初回はパッケージのインストール等でしばらくかかります。

webui-user

 起動するとWebブラウザが開き、UIが表示されます。AUTOMATIC1111 web UIと似ているようで少し違うのが確認できます。

何やら見慣れない項目もある

追記:起動しない場合

 起動中に下記のメッセージが表示される場合は、「▼追記:現状の最終版を利用する方法」の「エラーで起動できない場合」に対処方法を記載しています。

ImportError: cannot import name 'Undefined' from 'pydantic.fields' 

終了の方法

 終了したい場合は、コマンド プロンプトのウインドウで「Ctrl + C」を押して、「バッチ ジョブを終了しますか (Y/N)」で「N」と答えるか、おもむろにウインドウを閉じてください。

2回目以降の起動

 コマンド プロンプトを開いて、下記のコマンドを順に実行してください。バッチファイルを用意すると楽です。

cd \aiwork\stable-diffusion-webui-forge
webui-user



▼ 新しい要素

 AUTOMATIC1111 web UIと比較します。

Sampler

 LCM以下、いくつかのSamplerが追加されています。初期は7個、後から4個増えました。低Stepsで生成できるLCM向け、Turbo向け、SDXL-Lightning向け(SGMUniform)のようです。

現在11個のSamplerが追加されている

標準機能

 いくつかの機能があらかじめインストールされています。

生成画面上の表示
インストール済みのExtensions

その他

 動画を生成するSVD(Stable Video Diffusion)と、立体を生成するZ123(Stable Zero123)のタブもあります。

 コマンドラインオプションは、公式リポジトリの「Forge Backend」の項を参照してください。AUTOMATIC1111 web UIのものは使用できません。また、「webui-user.bat」をご覧いただくと分かりますが、AUTOMATIC1111 web UIの仮想環境や、モデルのディレクトリを共有することができます。

 「--always-cpu」を使用するとGPUを使用せずCPUのみで動作します。ただし、かなりの時間がかかりますので、まずは256x256等の低解像度と低Stepsでお試しください。



▼ 生成サンプル(比較有り)

 モデルはblue_pencil-XL-LCM v3.1.0を使用しています。LCMは低Stepsによる短時間での生成ができます。なお、生成画像は「stable-diffusion-webui-forge\output\txt2img-images」下に保存されます。

生成パラメーター:
anime, pastel painting, upper body, girl, smile, open little mouth, hold out hand, gray longhair, white ribbon blouse, pink frill skirt, brown eyes, farm rural village, spring flower, meadow, distant mountain,
Negative prompt: (worst quality, low quality:1.2), big mouth,
Steps: 8, Sampler: DPM++ 2S a Karras, CFG scale: 1.5, Seed: 3584914055, Size: 1344x768, Model hash: 8b2c696413, Model: blue_pencil-XL-v3.1.0-lcm, Clip skip: 2

Stable Diffusion WebUI Forge

生成画面(Stable Diffusion WebUI Forge)
生成画像(Stable Diffusion WebUI Forge)

AUTOMATIC1111 web UI

※他の方の比較を見るとそれほど相違が無いようなので、こちらの画像は何か設定の違いがあるかもしれません。

 同じパラメーターを用いて出力しました。12GBのRTX 3060で生成にかかった時間はそれぞれ15.1sと25.3sでしたので、Stable Diffusion WebUI Forgeは6割程度の時間で済んだことになります。

生成画像(AUTOMATIC1111 web UI)
生成画面(AUTOMATIC1111 web UI)

表紙

 表紙の画像は Seed: 2584698728 で、それ以外のパラメーターは同じです。

表紙と同じ画像(Stable Diffusion WebUI Forge)



▼ その他

 私が書いた他の記事は、メニューよりたどってください。

 noteのアカウントはメインの@Mayu_Hiraizumiに紐付けていますが、記事に関することはサブアカウントの@riddi0908までお願いします。

この記事が気に入ったらサポートをしてみませんか?