【v1.3.2対応】ローカル環境に「Stable Diffusion WebUI」を導入する方法を詳しく紹介!【AUTOMATIC1111】

こんにちは!悠です!

 

2023年5月14日に「Stable Diffusion WebUI」のバージョンが1.2.1に更新されたことで、下の記事で紹介していたローカル環境への導入方法が多少変わりました。

【2023年】「Stable Diffusion WebUI」をローカル環境に構築するやり方!低スぺックPC(1660Ti)でもOK!
「Stable Diffusion WebUI」をローカル環境に構築する方法について、できる限り詳しく紹介した記事です。Google Colabratoryのように一日の使用制限がないため、一度環境を構築してしまえば快適に遊べますよ!

 

より簡単にインストールできるようになりましたよ!

 

そこで今回は、ローカル環境にv1.2.1以降の「Stable Diffusion WebUI」を導入する方法に関してまとめていきます。

GitHub - AUTOMATIC1111/stable-diffusion-webui: Stable Diffusion web UI
Stable Diffusion web UI. Contribute to AUTOMATIC1111/stable-diffusion-webui development by creating an account on GitHub.

 

2023年6月5日に登場した「v1.3.2」も、この記事のやり方で導入することが可能です。
アイキャッチ画像はモデルに「MomijiMix」、LoRAに「flat2」を使用しています。
スポンサーリンク
スポンサーリンク

「Stable Diffusion WebUI」の導入方法(v1.2.1以降)

それでは早速、ローカル環境に「Stable Diffusion WebUI」を導入する方法について、順番に詳しく紹介していきます。

 

GPUの要件を確認

ローカル環境に「Stable Diffusion WebUI」を導入するには、Nvidia製のGPU(GTX~、RTX~)が必要です。

AMD製のGPUでも起動はできるようですが、バグが生じたり、パフォーマンスが落ちたりするようなので、基本的には推奨されていません。

 

また、各GPUに備わっているVRAMの量も重要になってきます。

WebUIを快適に使うための目安は、VRAM12GB以上(RTX3060以上)といわれています。

 

しかし現状は様々な最適化が施されており、VRAM4GB以上のGPUなら一応動作します。

とはいえ4GBは本当にギリです。私は1660Ti(VRAM6GB)で利用していますが、これでもかなりストレスを感じます。重めの拡張機能は8GB以上ではないと動かなかったりします。

 

自分のPCについているGPUのVRAMの確認方法は、タスクマネージャーのパフォーマンスの欄をチェックするだけでOKです。

Intel UHD Graphicsではなく、Nvidia Geforceの方なので注意してください。

 

Python 3.10.6のインストール

下記リンク先より、Python 3.10.6をPCにインストールします。

Python3.10なら動作はすると思いますが、WebUIで推奨されているバージョンは3.10.6です。

拡張機能の中には、3.10.6ピッタリじゃないと動作しないものもあるので注意してください。

Python Release Python 3.10.6
The official home of the Python Programming Language

 

「Windows installer (64bit)」をダウンロードして起動し、指示に従ってインストールします。

 

なお、必ずAdd Python 3.10 to PATHにチェックを入れるようにしましょう。

これを忘れるとシステムの環境設定から自分でPATHを通す必要が出てきます。

 

Gitのインストール

下記リンク先よりStandalone版のGitをダウンロードします。

Git - Downloading Package

 

 

インストーラーをダブルクリックして起動し、指示に従ってインストールしましょう。

いろいろ設定を聞かれますが、特に変更せず次へを押していって大丈夫です。



モデルデータ(checkpoint)の入手

WebUIをインストールする際、事前に何か1つモデルデータを配置しておく必要があります。

特に用意せずにインストールしても、sd1.5(基本モデル)が自動ダウンロードされるため不具合はありませんが、ぶっちゃけこれを使うことはないので事前に入手しておきましょう。

 

おすすめのモデルデータに関しては、下の記事でまとめていますので参考にしてください。

【Stable Diffusion】美少女イラスト生成におすすめのモデルデータまとめ30選+α【実写(フォトリアル)・2.5D・アニメイラスト】
「Stable Diffusion」で、美少女イラストを作成する際におすすめのモデルデータについて、フォトリアル系・2.5D系・アニメイラスト系の3種類に分けて紹介した記事です。

 

CivitaiもしくはHugging Faceで入手できます。

 

WebUIの導入

まず、PC内の任意の場所にフォルダを新規作成します。

この際フォルダ名に日本語特殊記号半角スペースを含めるとバグの原因になるので気をつけてください。

 

今回私は、デスクトップ上に「sd_test」というフォルダを作成しました。

 

コマンドプロンプトを開き、cdコマンドで作成したフォルダ内にカレントディレクトリを移動します。

cd C:\Users\name\Desktop\sd_test

 

下記のコマンドを入力します。

git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git

 

実行すると、WebUIを起動するのに必要なファイルやフォルダが自動的にダウンロードされます。

 

上の項でダウンロードしたモデルデータを「~\sd_test\stable-diffusion-webui\models\Stable-diffusion」の中に配置してください。

 

次に「webui-user.bat」をメモ帳にドラッグアンドドロップします。

 

set COMMANDLINE_ARGS=の中に下記の要領でオプションを入力してください。

オプションは使用しているGPUによって異なります。

GTX1660Ti向けオプション

 

【ハイスペックGPU(VRAM12GB以上)】

--autolaunch --xformers

 

【ロースペックGPU(GTX10xxなど)】

--autolaunch --medvram --xformers

 

【GTX16xx専用】

--autolaunch --precision full --no-half --medvram --xformers

 

【VRAM4GBの超ロースペックGPU】

--autolaunch --lowvram --xformers

 

【コマンドの内容】

  • autolaunch:起動時にシステムのデフォルトブラウザで自動的にWebUIを開く。
  • precision full:GTX16xxユーザー向け。起動時に画面が真っ黒になるのを防ぐ。
  • no half:GTX16xxユーザー向け。起動時に画面が真っ黒になるのを防ぐ。
  • medvram:生成速度を犠牲にVRAM消費量を節約する。
  • lowvram:medvramよりさらに生成速度を犠牲にしてVRAM消費量を大幅に節約する。
  • xformers:AIイラストの生成速度を高速化する。

 

RTX30xxやRTX40xxの方は、xformersの代わりにopt-sdp-attentionを入力するのもありです。詳しくは下の記事で紹介しています。

【Stable Diffusion】opt-sdp-attentionオプションを使ってAIイラストの生成速度を高速化する方法を紹介!
Pytorch2.0系の「Stable Diffusion」で、AIイラストの生成速度の高速化を行うことができるopt-sdp-attentionオプションの使い方を紹介した記事です。

 

その他のオプションに興味がある方は、下記の公式ガイドを参考にしてください。

Command Line Arguments and Settings
Stable Diffusion web UI. Contribute to AUTOMATIC1111/stable-diffusion-webui development by creating an account on GitHub.

 

オプションを入力したらメモ帳を保存して閉じ、webui-user.batをダブルクリックして起動してください。

初回起動時のみ時間がかかりますが、これで無事ブラウザ内にWebUIが起動します。



RuntimeError: Cannot add middleware after an application has started

「RuntimeError: Cannot add middleware after an application has started」というエラーが表示されて、WebUIが起動できない時には次のコマンドを試してみてください。

 

まずコマンドプロンプトを開き、cdコマンドで「~stable-diffusion-webui\venv\Scripts」に移動します(前半のパスは各環境によって異なります)。

cd C:\Users\name\Desktop\sd_test\stable-diffusion-webui\venv\Scripts

 

次にactivateと入力します。

activate

 

(venv)という表記が出るはずなので、下記のコマンドを入力します。

pip install fastapi==0.90.1

 

インストールが終わったら、deactivateコマンドで(venv)を抜けます。

deactivate

 

これでWebUIが起動できるようになるはずです。

 

Pytorchを再インストールする

普通に導入できた方は、この項目は読まなくてOKです。

 

複数回インストールを繰り返したり、古いバージョンから最新版にgit pullした場合、Pytorchのバージョンの関係でエラーが出てWebUIが起動できない場合があります。

 

その際は、webui-user.batのset COMMANDLINE_ARGS=の中に下記のオプションを入力してください。

--reinstall-torch

 

これを入力してwebui-user.batを起動すると、適切なバージョンのtorchが自動的に再インストールされますよ!

 

GPUはAIイラストの質に影響しない

使用するGPUによって、生成されるAIイラストの質が左右されることはありません。

RTX4090でもGTX1660Tiでも同じイラストを生成できます。

 

GPU性能が関係しているのは、あくまで画像の生成速度だけです。とはいってもこれが大きいんですけどね。上の2つの例なら10倍以上違うと思います。

 

ただGPUの世代が変わると、全く同じ条件(seed値、サンプラー、ステップ数など)でも生成される画像が異なることが知られています。

そのためRTX4090ユーザーが生成した画像を入手してpnginfoに入れ、そのパラメータを使ったとしてもGTX1660Tiでは同じ画像を再現できないということです。

RTX30xxとRTX40xxは共通と聞いたことがあります!

 

ローカル版WebUIをアップデート・ダウングレードする方法

「Stable Diffusion WebUI」は、各バージョン管理にコミットという通し番号を使用しています。

 

拡張機能によっては特定のコミットではないと動かないこともあるので、一度導入したWebUIを最新バージョンのコミットにアップデートしたり、逆に任意のコミットにダウングレードする方法について下の記事でまとめています。

【Stable Diffusion】ローカル版WebUIをアップデート・ダウングレードするやり方を紹介!
ローカル版「Stable Diffusion WebUI」で、ソフトウェアをアップデート・ダウングレードする方法についてまとめた記事です。

 

xformersをアップデートして画像の生成速度を高速化する方法

WebUIに最初から導入されているxformersを最新バージョンにアップデートして、AIイラストの生成速度を高速化する方法に関して下の記事でまとめています。

【Stable Diffusion】xformersを最新版にアップデートして、WebUIでのイラストの生成速度を高速化する方法!
「Stable Diffusion WebUI」に最初からインストールされているxformersを最新版にアップデートして、AIイラストの生成速度を向上させる方法について紹介した記事です。

 

モデルやLoRAにサムネイル画像を付けて整理する方法

WebUIに導入したモデルデータやLoRAにサムネイル画像を付けて整理する方法に関して、下の記事でまとめています。

【Stable Diffusion】WebUI上のモデルやLoRAにサムネイル画像を付けて整理する方法!
「Stable Diffusion WebUI」上で、モデルデータやLoRAにサムネイル画像を付けて整理する方法について紹介した記事です。

 

拡張機能「Civitai Helper」を導入すれば、1クリックでできるようになります。(Hugging FaceからDLしたものには適用されません)

【Stable Diffusion】拡張機能「Civitai Helper」を使って、モデル・LoRAのバージョン管理やサムネ取得を楽に行う方法!
「Stable Diffusion」のモデルデータを入手できるサイト「Civitai」の使い勝手を、格段に向上させてくれる拡張機能「Civitai Helper」の使い方を紹介した記事です。



v1.3.0で追加された各Optimizationsの比較

「Stable Diffusion WebUI」のv1.3.0で新しく追加された、SettingsタブのOptimizations項目で設定できる高速化手法の効果について、下の記事で簡単に比較してみました。

【WebUI】v1.3.0で追加されたOptimizations設定の各高速化手法を比較していく!【Stable Diffusion】
「Stable Diffusion WebUI」のVer1.3.0で、Settingsタブに追加された各Optimizationsの比較をまとめた記事です。

 

まとめ

以上が、「Stable Diffusion WebUI」のバージョン1.2.1をローカル環境へ導入する方法の紹介でした。

コマンド1発でダウンロードできるようになって、更に導入の敷居が下がりましたね!

 

では、ここまで読んでいただきありがとうございました。

コメント

  1. 匿名 より:

    いいグラボを買いましてこのページを参考にローカル環境を構築しました。Colab利用時からお世話になっております。
    初回起動時は問題なく起動し生成できました。Loraを追加したくて一度閉じLoraフォルダに追加後batファイルを実行しましたが、コマンド実行直後「Model loaded in ~」というところで止まってしまいます。エラー文は表示されていません。
    この場合の解決策と、SD起動中にLoraを追加したい場合再起動しかないのか教えていただきたいです。

  2. 匿名 より:

    さきほどModel loaded in~で止まるというコメントをした者です。勘違いしておりました。すでに終了していてURLコピペで開けるとわかりました。失礼しました。
    ただ、初回は自動でSDが開いたのですが、2回目以降はURLコピペが必要なのでしょうか

    • 悠 より:

      コメントありがとうございます!

      SD起動中にLoRAを追加するには、「~\webui\models\Lora」フォルダ内にLoRAのsafetensorsファイルを追加した後、花札マークをクリックして表示されるRefreshボタンを押すだけです!
      これで起動中でも反映されますよ!

      また、2回目以降もwebui-user.batをクリックするだけでwebuiが自動的に起動します。
      webuiを終了する際、コマンドプロンプトも×ボタンで閉じていますか?
      ブラウザのページだけを閉じても、WebUIは終了していません。

      • 匿名 より:

        返信ありがとうございます。Refreshボタンは知りませんでした。

        コマンドプロンプトも閉じてるんですが、やはり自動では起動せずURLコピペが必要です。少し手間です。

        • 悠 より:

          webui-user.batのcommandline agesに–autolaunchを入れていますでしょうか?
          上の記事内でも紹介しているオプションなんですが、これがないと自動的に起動しないと思います!

          • 匿名 より:

            入れたはずなんですが。。。初回は自動で起動して2回目からダメというのが謎です。とりあえずこのまま使おうと思います。ありがとうございました。

  3. ふれんどりっち より:

    GPUを3060 12GBから4070Tiに変えたので新規インストールで作り直したのですが
    3060の時はxformersがアップデート出来なくて0.0.17のままだったのに
    4070にしたらやり方が全く一緒なのに今回は0.0.18どころか0.0.20まですんなりアップデート出来たから
    30XXと40XX世代でも微妙に超えられない壁が有るようですね

    • 悠 より:

      こんにちは!
      4070Tiは3060の2倍以上生成速度が速いそうですね!

      今後いろいろな部分が4000番台向けに最適化されていくのでしょうね~。3060がaiイラスト入門におすすめという今の風潮も変わっていくのかもしれませんね。

      ていうかxformers0.0.20が3日前に出ていたとはw
      私も帰ったらアプデしてみます!

      しかし、私の1660tiの10倍以上速そうです( ‘ω’)( ‘ω’)