【A1111 Stable Diffusion web UI】アップデートとバージョン切り替え方法

Automatic1111 Stable Diffusion WebUIは頻繁にアップデートされています。しかしアップデートにより生成イラストが変わってしまったりと悪影響を及ぼすこともあります。このような時に対処できるようにバージョンの切り替え方法も覚えておきましょう。
Stable Diffusion WebUIのバージョンの確認方法
Stable Diffusion WebUIのバージョンの確認方法は起動時のターミナルで確認するかStable Diffusion WebUIのブラウザの下部に表示されています。


Stable Diffusion WebUIのアップデート方法
Stable Diffusion WebUIのアップデート方法はGitを使ってpull
コマンドを実行するだけです。1つ1つ順を追って説明します。
stable-diffusion-webui
フォルダーを開きます。
stable-diffusion-webui
ディレクトリに移動します。

stable-diffusion-webui
ディレクトリにいることが確認できたらGitのpull
コマンドを実行しましょう。
git pull

webui-user.bat
を実行して起動しましょう。ターミナルにバージョンが表示されるので確認しましょう。

エラーが出る場合は後ほど説明するトラブルシューティングにあるStable Diffusion WebUIのリセットを参考にリセットしてください。
Stable Diffusion WebUIを特定のバージョンに戻す方法
Stable Diffusion WebUIを特定のバージョンを戻すにはリポジトリのハッシュコードとcheckout
コマンドを使います。ここではv1.9.3
に戻す方法を例に説明します。
.../stable-diffusion-webui/commit/
後のハッシュコードをコピーします。


stable-diffusion-webui
ディレクトリを開き、先ほどコピーしたハッシュコードを使ってcheckout
コマンドを実行します。
git checkout 1c0a0c4c26f78c32095ebc7f8af82f5c04fca8c0

checkout
コマンドが完了したら、ターミナルを閉じ、ファイルエクスプローラーでstable-diffusion-webui
フォルダーを開きます。次にフォルダー内のvenv
フォルダーを削除します。削除後Stable Diffusion WebUIをwebui-user.bat
を実行しましょう。ターミナルにVersion: v1.9.3
と表示されていれば成功です。このタイミングでvenvの再構築が始まるのでブラウザが立ち上がるまでしばらく待ちましょう。

最新版に戻したい時はgit checkout master
コマンドでマスターブランチに戻しvenv再構築しましょう。
Stable Diffusion WebUIの自動アップデートの方法
stable-diffusion-webui
フォルダーのwebui-user.bat
を右クリックしてメモ帳またはコードエディターで開きます。
webui-user.batのデフォルト状態
@echo off
set PYTHON=
set GIT=
set VENV_DIR=
set COMMANDLINE_ARGS=
call webui.bat
call webui.bat
と記述されている行の一行上にgit pull
を追加して保存します。
編集後のwebui-user.bat
@echo off
set PYTHON=
set GIT=
set VENV_DIR=
set COMMANDLINE_ARGS=
git pull
call webui.bat
webui-user.bat
を実行時にターミナルにAlready up to date.
(アップデートがない場合)と表示されていれば正常に動作しています。

この設定で起動する度に最新版のリポジトリをチェックし、更新が在ればダウンロードするようになります。
エラーが出る場合は後ほど説明するトラブルシューティングにあるStable Diffusion WebUIのリセットを参考にブランチをリセットしてください。※この場合webui-user.bat
が初期化されますのでもう一度編集する必要があります。
Stable Diffusion WebUIのトラブルシューティング
Stable Diffusion WebUIのリセット
stable-diffusion-webui
ディレクトリを開き下記のコードで強制的にマスターブランチに切り替えます。
git checkout -f master
pull
コマンドで最新のリポジトリをダウンロードします。
git pull
pull
コマンドが完了したら、ターミナルを閉じ、ファイルエクスプローラーでstable-diffusion-webui
フォルダーを開きます。次にフォルダー内のvenv
フォルダーを削除します。削除後Stable Diffusion WebUIをwebui-user.bat
実行しましょう。venvの再構築が始まるのでブラウザが立ち上がるまでしばらく待ちましょう。
Stable Diffusion WebUIをリセットするとwebui-user.bat
が初期化されますのでCOMMANDLINE_ARGS=
の行に--xformers
等を記入している場合は再度記入する必要があります。
アップデートしたら起動しなくなった
venvを再構築しましょう。stable-diffusion-webui
フォルダー内のvenv
フォルダーを削除します。削除後webui-user.bat
を実行しvenvの再構築が始まるので、ブラウザが立ち上がるまでしばらく待ちましょう。
今までのSeedで同じ画像が生成できない
Stable Diffusion WebUIのwikiにある「Seed Breaking Change」を参考にして以前のバージョンに戻すか、複数バージョンのStableDiffusion WebUIの環境を作りましょう。