時間がない人へのまとめ

stable diffusionをローカル環境で動かして数か月がたったので、環境構築から生成にあたっての基本的なことをまとめてみようと思います。
この記事では、Windows+AMD環境でStable Diffusion webUIを動かせるようにし、UIの基本的な説明と役立つ機能、サイトを紹介します。

目次

環境

OS: windows10
GPU: Radeon(TM)RX470 8G
CPU: Intel(R) Core(TM) i7-6700K

stable diffusio webUIを使う環境を整える

python 3.10.6をインストール

Python公式サイトのダウンロードページPython 3.10.6をDLしてきて、インストーラーを起動しましょう。 Add to PATHにチェックを入れてpythonをインストールします。 インストールが終わったら、コマンドプロンプトなどでしっかりインストールできたかversionを表示して確認しましょう。

> python -V
Python 3.10.6

gitのインストール

gitも必要なので、ダウンロードしてきてインストールしましょう。

stable diffusio webUIのDLと設定

versionの確認が終わったら、下記コマンドをコマンドプロンプトなどで実行します。

> git clone https://github.com/lshqqytiger/stable-diffusion-webui-directml && cd stable-diffusion-webui-directml && git submodule init && git submodule update

上記コマンドが終わったら下記コマンドを実行してエクスプローラーを開きましょう。
開いた中にある、webui-user.batをメモ帳などで開き下記のように書き換えます。

@echo off

set PYTHON=
set GIT=
set VENV_DIR=
set COMMANDLINE_ARGS=--precision full --no-half --opt-sub-quad-attention --lowvram --disable-nan-check --autolaunch

call webui.bat

modelをDLしてきて使えるようにする

これですでに、stable diffusio webUIを使える状態になっているのですが、画像を生成するmodelデータがないので、何も画像が生成できない状態です。
下記から自分の好みにあう、modelデータをダウンロードしてきましょう。

ダウンロードしてきたら、ファイルをさっきgitで持ってきた場所の下記に配置します。 stable-diffusion-webui-directml\models\Stable-diffusion

画像を生成する

準備も整ったので、起動してみましょう!
起動の仕方は、先ほど編集したwebui-user.batをダブルクリックするだけです。クリックするとコマンドプロンプトが起動ししばらく待つとブラウザが起動して下記のような画面になるかと思います。

top画面
top画面

では、プロンプトを記入してGenerateボタンをクリックし画像を生成してみましょう。
自分は下記のプロンプトを使用してみます。

hyper realistic, best quality, cat

しばらく待つと下記のような画像が生成されました。

生成された画像の様子
生成された画像の様子

キリっと凛々しい猫の画像が生成されましたね。

UIの基本的なパラメータ

続いて、基本的なパラメータに関して説明します。
下記の赤枠の部分ですね。

パラメータ
パラメータ
項目名 説明
Sampling method 大雑把に言うとAIが絵を描くためのアルゴリズムです。生成される画像や、生成速度などに影響します。
Sampling steps どれくらい精細に描画するかを決めるパラメータです。多ければ多いほど時間がかかります。(自分的には80~100程度で十分だと思います)
Width  生成する画像の横幅です
Height  生成する画像の縦幅です
Seed seed値です。同じような画像を生成したいならば同じ値+同じパラメータで実行します。基本ランダムでいいと思います。
Batch count 何度画像生成を行うかの値です。(画像ごとにseed値が異なります)
Batch size 1度の生成で何枚画像を生成するかの設定です。(seed値が同じ画像が生成される枚数の指定です)
CFG Scale AIがどれくらいプロンプトに沿って生成するかの値です。0を設定すると忠実にプロンプトに沿います。1だと完全に無視されます。

便利なサイトや、情報

より便利に扱うために拡張機能を入れることができます。
下記記事が分かりやすかったのでぜひ見てみてください。

画像を見てプロンプトや、modelを学ぶのに下記サイトが非常に便利です。

終わりに

今回導入から一通りの基本的なことを説明しました。
今後、Loraやimg2imgなど別のことも記事にできたらと思います。 読んでいただきありがとうございました。

参考記事など