Stable Diffusion AUTOMATIC1111 web UIでSDXLを動作させる
Stable Diffusionの新verSDXLがリリースされ、様々な画像が日々生成されたり、モデルのファインチューニングが進んでいますが、今回はStable Diffusion AUTOMATIC1111 web UIでSDXLを動作させる手順を解説したいと思います。
最新版のSD AUTOMATIC1111 web UIをインストール
SDXLの動作は、v1.5からの対応なので、最新版をインストールすれば自動的にSDXL対応版となります。もうすでにStable Diffusion AUTOMATIC1111 web UIインストールされている方でアップデートされるという方は「Stable Diffusion WebUI(AUTOMATIC1111)のアップデート手順」を、まだインストールしていないという方は「Stable Diffusion web UIをローカル環境にインストール」を参照して最新版にアップデート、もしくはインストールしてください。
SDXLのモデルデータ・VAEをダウンロード
SDXLの最新版のモデルデータを以下のURLからダウンロードします。3つデータがありますが、今回は3つ利用する前提で解説していきます。
SDXLモデルデータ
以下のURLからダウンロード
https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0
「sd_xl_base_1.0.safetensors」をダウンロードを行ったら、ダウンロードしたファイルを以下のディレクトリに設置します。
(Stable Diffusion設置ディレクトリ)/stable-diffusion-webui/models/Stable-diffusion/ここにモデルデータを設置
設置後、起動すると、これでSDXLのチェックポイントが選択できるようになっていると思います。
SDXL VAEデータ
VAEも用意されているので、ダウンロードしておきましょう
以下URLからダウンロード
https://huggingface.co/stabilityai/sdxl-vae/tree/main
「sdxl_vae.safetensors」をダウンロードを行ったら、ダウンロードしたファイルを以下のディレクトリに設置します。SDXLに対応したVAEを利用しないとノイズまみれのデータとなってしまうため、SDXLを利用する際は必ず、上記のSDXLに対応したVAEを利用するようにしましょう。
(Stable Diffusion設置ディレクトリ)/stable-diffusion-webui/models/VAE/ここにVEAデータを設置
SDXLの生成結果
いくつか画像を生成しました。ベースのモデルでもイラストも生成できました。
SDXLの画像生成の注意点
生成サイズ
SDXLの生成について基本は1024×1024が適切なサイズとなっています。 1.5系では適正だった512x512pxでは大きく崩れてしまいました。これは学習されているモデルの解像度に依存しており、最適なパフォーマンスを得るためにはSDXLに適したサイズで生成する必要があります。このサイズについては「SDXLで高精度に生成するためのサイズ一覧 SDXLサイズチートシート」の記事にまとめていますので、生成される方は是非ご覧ください。
イラストモデルを利用しても反映されにくい
SDXLについてはイラスト専用モデルを用いても、今までのように1girlだけでは、イラストが出にくかったりします。SD1.5とはまた少し違った、プロンプトの工夫が必要となります。
詳細なプロンプトが求められる
明らかにSD1.5とプロンプトの種類が異なります。SD1.5の場合ある程度モデルに任せるような、曖昧なプロンプトでもうまく作成してくれますが、SDXLの場合、プロンプトを細部まで書き込まないと意図通りの画像を制作することが難しく感じます。SD1.5で慣れていた方は最初は違和感を感じるかもしれません。
SDXLを利用する上でのwebui-user.bat設定
SDXL使用時はwebui-user.batに「–no-half-vae」を追記することが推奨されています。VAEで16ビットの浮動小数点演算を使用しない設定で、画像生成の精度が向上するとのことです。引数の設定方法については「Stable Diffusionのメモリ不足対策・解決策まとめ」を参考にご覧ください。
SDXLの必要なスペックは?
SDXLではグラフィックボードのVRAMを9GB程度使用するので動作にはそれ以上のVRAM搭載のグラフィックボードが必要です。また処理もモデルデータも重たくなっているため、可能な限り性能の高いグラフィックボード選定が必要になってくると思います。
推奨環境は、16GB、最低8GB VRAMを搭載したNvidia GeForce RTX 2XXXシリーズ(もしくはそれ以上)のグラフィックボードが必要とされています。
ソフトウェアについてはPython 3.10、CUDA Toolkit 11.8などが必要です。
ハードをどうしても構成変えられないという方、高速化やメモリの節約などの記事は「Stable Diffusionのメモリ不足対策・解決策まとめ」や「Stable Diffusionのパフォーマンスを向上させるための15のTips」を参考までにご覧ください。