ローカル環境でStableDiffusionを構築してみた

Windows Other
この記事は約7分で読めます。

ローカル環境のStableDiffusionを構築してみました。

今回はGPUが搭載されたAzureVM(WindowsOS)を利用して構築して、Stable Diffusion Web UI(AUTOMATIC1111版)を利用します。

広告

0.StableDiffusionとは

Stable Diffusionとは、テキスト(文章)から画像を生成できるオープンソースの画像生成AIモデルです。

画像生成のサービスはたくさんありますが、生成枚数に上限があることが多いです。
ローカルで構築することによって、その制限から解放されます。

インストール手順など記載しますが、以下のgitにもインストール方法は記載されているので躓いたらこちらを見て実施するとよいです。

GitHub - AUTOMATIC1111/stable-diffusion-webui: Stable Diffusion web UI
Stable Diffusion web UI. Contribute to AUTOMATIC1111/stable-diffusion-webui development by creating an account on GitHub...

1.環境準備

StableDiffusionを利用するために必要なスペックなどはありますが、調べれば出てきますし、今回はNvidiaのGPUを利用しているので、ここでは割愛します。

1-1.VM構築~GPUドライバのインストール

以下の記事で、GPUサーバ搭載のAzureVMにおけるVM構築~GPUドライバのインストールまでの手順を記載しているのでそちらを参照して構築/インストールを実施してください。

2.StableDiffusionの構築

以下の3つの作業でStableDiffusionが利用できるようになります。

  1. Pythonのインストール
  2. gitのインストール
  3. Stable Diffusion Web UIのインストール

2-1.Pythonのインストール

Pythonは動作するバージョンである 「3.10.11」をインストールします。

以下の公式サイトから該当のバージョンのインストーラーを選択して、ダウンロード/インストールします。

インストーラを起動して出てくる最初のダイアログボックスで、「Add python.exe to PATH」をオンにして、PATHを通しておくことを忘れずにしましょう。

Python Releases for Windows
The official home of the Python Programming Language

2-2.gitのインストール

Pythonのインストールが完了したら、次に git をインストールします。

以下の公式サイトから「Click here to download」を選択してダウンロード・インストールしてください。

Redirecting…

インストーラーの選択肢は、こだわりがない限りデフォルト値でOKです。

2-3.Stable Diffusion Web UIのインストール

最後に Stable Diffusion Web UI をインストールします。

まず以下のコマンドをPowershellで実行してStable Diffusionをインストールするフォルダを作成し、作成したフォルダで「git bash」を開きます。

$UserName = $env:UserName

 # デスクトップに移動
cd /Users/$UserName/Desktop

 # フォルダの作成と移動
mkdir StableDiffusionUI
cd ./StableDiffusionUI

 # Git Bashをカレントディレクトリ(StableDiffusionUI)で開く
& "C:\Program Files\Git\git-bash.exe" --cd="$PWD"

bashが開かれるので以下のコマンドを実行します。

git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git

インストール完了はすぐに終わると思います。

2-4. StableDiffusionの起動

以下のコマンドをPowershellで実行して起動します。
2回目以降の起動もこのコマンドで起動可能です。

$UserName = $env:UserName

 # デスクトップに移動
cd /Users/$UserName/Desktop/StableDiffusionUI/stable-diffusion-webui

 # stable-diffusion-webui を dev ブランチへ切替
git switch dev
git pull

 # StableDiffusionの実行
.\webui-user.bat

StableDiffusionの初回起動は、もろもろのインストール等があるため、10~15分ほど時間がかかります。

また、途中でGitHubのアカウントの入力を求められることもあるので、求められたら入力してください。

StableDiffusionが起動するとブラウザ画面が自動で開かれると思いますが、開かない場合には、http://127.0.0.1:7860 をブラウザ上に入力するとStable Diffusionを利用できます。

StableDiffusionの起動画面

【トラブルシューティング】 Error code: 128 が出た場合

私も構築時にも遭遇し、対処法は上記の手順にも加えていますが、エラーコード(Error code: 128)が出てきて失敗する場合にはstable-diffusion-webui を dev ブランチへ切り替える ことで対処が可能です。
 ※こちらの GitHub Discussion でも案内されています。

・stable-diffusion-webui ディレクトリでターミナルを開いて以下のコマンドを実行

git switch dev
git pull

その後、再度 webui-user.bat を実行することで起動することができます。

3.StableDiffusionを利用してみる

StableDiffusion の利用については別途まとめていきたいと思いますが、まずはやっておくと便利な初期設定おすすめの初期設定だけ載せておきます。

3-1. 便利な初期設定(全体設定)

まずは全体の設定で便利な設定です。

3-1-1. 出力フォルダの変更

出力フォルダはダウンロードフォルダなど、変更しておくと便利です。

Setting > Saving images > Paths for saving の [Directory for saving images using the Save button] から変更可能です。

設定を変更したら [Installed] タブの Apply setting > Reload UI を押して、画面を更新し、設定を反映させてください。

3-1-2. 日本語化

これも完全に好みですが、やっておくと設定の内容などは分かりやすくなります。

1.Extentions > Avalable から [localization] のチェックを外し、[Load from:] を押し、「ja_JP Localization」を探してインストール。その後、Apply 実施。

2.Apply 後に Setting > UserInterface > UserInterface > Localization で [ja_JP] を選択して再度Applyする。

こちらも設定後は、画面更新と設定反映をしてください。

3-2.おすすめの初期設定(画像生成)

画像生成のチューニングにおいて、おすすめの初期設定です。

項目おすすめ値項目の説明
画像サイズWidth(横):512
Height(縦):512
解像度を調整する値。
この値を上げるとVRAM使用量が増え、生成時間も長くなる。
最初はデフォルト値(512:512)がおすすめ。
Steps(ステップ数)20ステップ数が多いほど精緻になるが、生成に時間がかかる。これもデフォルト値(20)周辺で問題ない。
CFG Scale7プロンプトの忠実度を調整する値。高すぎると画像が破綻しやすくなるのでデフォルト値(7)がおすすめ。

[参考] サンプラーの比較

StableDiffusionではいくつものサンプラーがあります。

サンプラーは「ノイズ除去の進め方(画像の作り方)」を決めるアルゴリズムで、生成速度・画質・再現性に大きく影響するのもので、(主観にはなりますが)まとめてみたので参考にするといいと思います。

サンプラー特徴速度画質再現性推奨用途
Euler a最も高速。ランダム性が高い。粗めだが雰囲気が出るプロトタイプ、試行錯誤、大量生成
Euler安定性が高い。再現性が良いSDXL などで安定した生成
DDIM速度と品質のバランスが良い。再現性は低め高速生成、動画生成向け
PLMS品質と速度のバランスが良い。古典的一般用途
LMSテクスチャ表現が得意。安定性が高い細部重視の画像
DPM++ 2M高品質。2段階方式で安定高画質生成
DPM++ 2M KarrasKarrasスケジュールでさらに高品質写実系・高精細画像
DPM++ SDE KarrasSDE方式で最も高品質。背景が安定高画質、背景重視
HeunODE系。安定性が高いSDXLでの安定生成

[参考] モデルについて

以下のサイトからAI画像生成モデルをダウンロードできるので参考にしてください。

Civitai: The Home of Open-Source Generative AI
Explore thousands of high-quality Stable Diffusion & Flux models, share your AI-generated art, and engage with a vibrant...