見出し画像

AUTOMATIC1111版Stable Diffusion web UIでSDXL 0.9モデルを試す

Last update 07-14-2023

※SDXL 1.0モデルも同様に利用できます

07-25-2023追記:本日公開されたv1.5.0にて正式対応されました。そのため、現在はsdxlブランチを指定する必要はありません。

下記の記事もお役に立てたら幸いです(宣伝)。
Stable Diffusion v1モデル_H2-2023 
Stable Diffusion v2モデル_H2-2023 



▼ 本記事について

概要

 Stable Diffusion形式のモデルを使用して画像を生成するツールとして、AUTOMATIC1111氏のStable Diffusion web UI(以下、AUTOMATIC1111 web UI)が有名です。SDXL 0.9に対応したそうなので試してみます。

動作環境

 Geforce RTX 2xxx以降(VRAM 8GBは不明、12GBは可)、Python 3.10、CUDA Toolkit 11.8、Git、なるべく高速なSSD、なるべく高速なインターネット回線、このあたりがそろっていれば大丈夫だと思います。

参考にした情報

SD XL support #11757
https://github.com/AUTOMATIC1111/stable-diffusion-webui/pull/11757 

関連情報(他の方法)

 下記は、別のUI(SD.Next)を利用する方法です。

 下記は、VRAM 8GBで実行できる方法です。

 下記は、SD.Nextを利用する方法です。SD-XL 0.9-base Model のほか、SD-XL 0.9-refiner Model の併用も試されています。refinerはかなりのVRAMを消費するようです。

 下記は、ComfyUIを利用しています。

 ぶるぺん氏が生成を色々試されています。



▼ インストール1

 既にAUTOMATIC1111 web UIを利用中であっても、別のディレクトリに新規インストールする方法をとっています。利用中の環境に対して、以降の操作を行うことはおすすめしません。

モデルのダウンロード

 https://huggingface.co/stabilityai/stable-diffusion-xl-base-0.9 へアクセスして申請を行い、許可されたら「sd_xl_base_0.9.safetensors」をダウンロードしてください。

AUTOMATIC1111 web UIのダウンロード

 作業ディレクトリを「C:\aiwork2」としていますので、適宜読み替えてください。コマンド プロンプトを開いて、作業ディレクトリに「stable-diffusion-webui」のディレクトリが無い状態で、下記のコマンドを順に実行してください。行頭の「>」は入力しないでください。

>cd c:\aiwork2
>git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
>cd stable-diffusion-webui
>git checkout -b sdxl origin/sdxl

 執筆時点では、SDXL 0.9モデルへの対応はsdxlブランチで行われているため、これに切り替えるところまで行いました。

 参考まで、コミットIDを確認しておきました。リモート側のコミットIDは、https://github.com/AUTOMATIC1111/stable-diffusion-webui/commits/sdxl で確認できます。

>git log -1
commit 92a3236161099aca735c3f59f30859750d9e7452 (HEAD -> sdxl, origin/sdxl)
Merge: 9a3f35b0 9893d09b
Author: AUTOMATIC1111
Date:   Fri Jul 14 10:12:48 2023 +0300

モデルのコピー

 先ほどダウンロードした「sd_xl_base_0.9.safetensors」を、「C:\aiwork2\stable-diffusion-webui\models\Stable-diffusion」にコピーしてください。これを行わないと、この後の起動途中でモデル(runwayml/stable-diffusion-v1-5)のダウンロードが始まってしまいます。



▼ インストール2~実行

バッチファイルの作成

 新規ファイル「C:\aiwork2\webui.bat」を下記の内容で作成してください。なるべく、「--no-half-vae」または「--disable-nan-check」を付けておいてください。「--opt-sdp-no-mem-attention」は個人的に付けているもので、無くても動作します。

@echo off

set PYTHON=
set GIT=
set VENV_DIR=
set COMMANDLINE_ARGS=--opt-sdp-no-mem-attention --no-half-vae

cd stable-diffusion-webui
call webui.bat
cd ..

 最後に、web UIを起動してください。パッケージのダウンロード等で時間を要します。

>webui
...
Running on local URL:  http://127.0.0.1:7860

To create a public link, set `share=True` in `launch()`.
...
Model loaded in 59.8s (calculate hash: 12.1s, load weights from disk: 0.8s, create model: 19.6s, apply weights to model: 20.4s, apply half(): 3.6s, move model to device: 2.6s, calculate empty prompt: 0.4s).

 最後の表示で止まったら、Webブラウザで http://127.0.0.1:7860/ にアクセスしてください。

推論の実行

 左上にモデルを選択するプルダウンメニューがあります。SDXL 0.9のモデルが選択されていることを確認してください。

SDXL base 0.9 のモデルが選択されている

 SDXLは基本の画像サイズが1024x1024なので、デフォルトの512x512から変更してください。それでは「prompt」欄に入力を行い、「Generate」ボタンをクリックして画像を生成してください。

SDXL 0.9モデルで画像が生成できた

 生成した画像は「C:\aiwork2\stable-diffusion-webui\outputs\txt2img-images」の中に保存されています。色々遊んでみてください。

生成した画像が保存されている

終了する

 やめる場合は、コマンド プロンプトのウインドウで「Ctrl + C」を押してください。もし「バッチジョブを終了しますか」と表示されたら、「N」を入力してEnterを押してください。待機状態であれば、おもむろにウインドウを閉じても大丈夫だと思います。



▼ メモ

アンインストールの手順

 もし、必要なファイルがあれば移動してください。その後、実行を終了した状態で「stable-diffusion-webui」のディレクトリを削除してください。すでにAUTOMATIC1111 web UIを利用中の方は、削除する方を間違えないよう十分に注意してください。



▼ その他

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

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

いいなと思ったら応援しよう!