これまでは使えていたStable Diffusion WebUIですが、起動しなくなったり、一部機能が使えなかったり、ドライブやフォルダを移動したりして動作がおかしくなった時の対処法を示します。せっかく入れたモデルや拡張機能などをそのままにできるので、動作がおかしい時はお試しください。
動作がおかしくなる原因
Stable DiffusionはvenvというPythonというプログラミング言語の仮想環境下で動いています。Stable Diffusionが起動しなくなったり、動作がおかしくなった時は、その仮想環境が壊れている可能性が高いです。ですので、その仮想環境を作り直すと、うまく動くようになることがあります。
対処法1:仮想環境の作り直し
WebUIは起動時に仮想環境がなかったときは自動的に作り直してくれる非常に親切な設計になっています。(参考:Automatic1111のwebui.batを読み解く:Windowsのバッチファイル解析)
ですので、Stable Diffusion WebUIの仮想環境を作り直すには、今ある仮想環境を別の場所に移すなどして、Stable Diffusionのフォルダからなくせば作り直してくれます。WebUIが起動していない状態で、「stable-diffusion-webui」のフォルダの中にある「venv」というフォルダを一旦外の別の場所に移してから、「webui-user.bat」をダブルクリックして、普通通りStable Diffusion WebUIを起動しましょう。最初の起動時に仮想環境を作ってくれます。(初回起動時は時間が掛かります。)
うまくStable Diffusion WebUIが起動して問題なければ、別の場所に退避させたvenvは削除してもらっても大丈夫です。
対処法2:複数のPythonがインストールされている場合の仮想環境作り直し
複数のPythonがインストールされている場合、仮想環境の構築がうまくいず、Stalbe Diffusionが正常に動かないことがあります。Stable Diffusion WebUIでは、Python3.10が推奨されているので、最新のPythonのバージョンをインストールした場合、うまくいきません。その時はPython3.10をインストールした上で、Pythonのバージョンを指定して、WebUIの仮想環境を作り直しましょう。
Python3.10のインストール
Python3.10は以下の場所からダウンロードできます。Windowsの方は、「Windows installer (64-bit)」を選んでください。インストール時はPATHを追加しておくとよいです。(下の図を参照)
(上の画像はちょっとバージョンが違うけど、画面は同じはず)
Pythonのバージョンを指定してStable Diffusion WebUIインストール
Pythonのバージョンを指定して、Stable Diffusion WebUIをインストールします。それには、「stable-diffusion-webui」のフォルダにある「webui-user.bat」を編集します。webui-user.batを「Shift」+右クリックで選択し、「編集」を押してメモ帳などで開きましょう。「set PYTHON=」のところにPython3.10がインストールされているところを記述します。Pythonのインストールされいる場所はコマンドプロンプトを開いて、「py –list-paths」で確認できます。大抵、指定していなければ、CドライブのUsersの中の自分のアカウントのAppDataの中に入っていると思います。(下のPATHは各自の環境に応じて書き換えてください。)
@echo off set PYTHON= D:\users\Username\AppData\Local\Programs\Python\Python310\python.exe set GIT= set VENV_DIR= set COMMANDLINE_ARGS= --no-half-vae --opt-channelslast --autolaunch --xformers call webui.bat
編集が終わったら保存して閉じます。
「stable-diffusion-webui」のフォルダの中にある「venv」がある場合は、移動するか削除してから、「webui-user.bat」をダブルクリックして、Stable Diffusion WebUIを起動しましょう。最初の起動時に仮想環境を作ってくれます。(初回起動時は時間が掛かります。)
これで、Python3.10でのStable Diffusion WebUIのセットアップができると思います。
コメント
AUTOMATIC1111のあるドライブを(Cの容量がひっ迫していたので)別の所に移し替えたところ起動しなくなり困っていました。対処法1(仮想環境venvを一旦削除する)で起動させることができました。本当に助かりました。ありがとうございました。
かきさん
ご覧いただきありがとうございます。また、お役に立てたようで何よりです。知りたいことがあれば、何なりとご質問いただけたらと思います。
今後もよろしくお願いします。