asopi tech OSS Developer
asopi tech
asopi tech OSS Developer
Some sections are still being translated, so Japanese text is shown below.
グラボなくても余裕でStable Diffusion WebUI デビュー

【2023年6月版】

グラボなくても余裕でStable Diffusion WebUI デビュー

公開日: 2023/06/07
読了時間: 約 10分

Stable Diffusionが便利に使えるで有名な AUTOMATIC1111/stable-diffusion-webui ですが、nVidiaなどの専用グラボなしのIntelのオンボードグラフィックのノートPCでもちゃんと Stable Diffusion Web UI が動作しますのでその手順をご紹介します。

ローカル環境のご紹介

手元のローカル環境をご紹介します。

  • OS: Windows 11 Pro
  • グラフィック: Intel Iris Xe Graphics
  • メモリ: 32 GB

さらに WSL で動かしてます。

  • WSL 2
  • Ubuntu 22.04.2 LTS

ですので、以下の手順はグラボ積んでない Linux でも同じかと思います。

さらに Python 環境の構築には asdfコマンド を使ってます。

1. 事前準備

必要なものは以下です。

  • Python 3.10.6
  • git
  • wget

以上!

git や wget コマンドのインストールについては手順を割愛します。

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

いろいろインストール方法はあるかと思いますが、今回は asdf コマンド使います。

そもそも asdf に python プラグインがない場合は以下のコマンドでasdfにpythonプラグインを追加します。

shell
$ asdf plugin add python

pythonプラグインがと撮った来夏のコマンドで 10.3.6 をインストールします。

shell
$ asdf install python 3.10.6

初めて python を入れる場合はインストール後に 3.10.6 が有効になります。 すでに他バージョンの python がインストールされている場合は、後ほど有効にしましょう。

python のインストールでモジュールが足りないエラーで詰まったら

python3 のインストール中、必要なパッケージがない場合はエラーが出ます。自分の場合には sqlite3 のモジュールがない、とのエラーがでました。

この時に、sqlite3 のパッケージを apt で追加すればよいのですが、ことのとき開発用のパッケージをインストールしてください。実行用のバイナリやコマンドラインツールではなく、Pythonからこのパッケージを叩くには、開発用のパッケージが必要です。

以下のコマンドで sqlite3 のパッケージを検索します。

shell
$ apt search sqlite3
...
libsqlite3-dev/jammy-updates,jammy-security,now 3.37.2-2ubuntu0.1 amd64 [installed]
  SQLite 3 development files
...
sqlite3/jammy-updates,jammy-security,now 3.37.2-2ubuntu0.1 amd64 [installed]
  Command line interface for SQLite 3
...

と出てきます。この時、インストールが必要なパッケージは libsqlite3-dev のほうです。sqlite3ではエラーが解消されません。 以下のコマンドで sqlite3 の開発パッケージをインストールします。

shell
$ sudo apt install libsqlite3-dev

で、asdf にインストールされてしまった python 3.10.6 はいったん削除し、もう一度インストールします。

shell
$ asdf unintall python 3.10.6
$ asdf install python 3.10.6

ちなみに、WSL+UbuntuでPython 3.10.6のインストール字時にGTKのモジュールでエラーが出ましたが GUIは使わないのでそれは無視してOKです。

1-2. Git でクローン

以下のコマンドでGitをクローンします。

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

ghコマンド使ってる場合は以下です。

shell
$ gh repo clone AUTOMATIC1111/stable-diffusion-webui

で、clone したディレクトリで明示的に python 3.10.6 を有効にする場合は以下のコマンドです

shell
$ cd stable-diffusion-webui
$ asdf local python 3.10.6

ついでに pip もアップグレードしておきましょう。

shell
$ pip install --upgrade pip

準備は以上です!

2. Stable Diffusion Web UI の起動

いよいよ起動です。

2-1. 引数の設定

GPUを積んでないPCではそのままでは動きませんので webui-user.shもしくはwebui-user.batを編集して起動オプションを追加します。

webui-user.sh
...
export COMMANDLINE_ARGS="--skip-torch-cuda-test --upcast-sampling --no-half-vae --use-cpu interrogate --precision full --no-half"
...

もしくは、

webui-user.bat
...
set COMMANDLINE_ARGS="--skip-torch-cuda-test --upcast-sampling --no-half-vae --use-cpu interrogate --precision full --no-half"
...

でOKです。

2-2. 起動!

WSL環境の場合は webui.sh、コマンドプロンプトなどWindows環境の場合は webui-user.bat を起動します。

shell
$ ./webui.sh
コマンドプロンプト
> webui-user.bat

ここで必要なものは大体、インストールしてくれます。 無事に必要なもののダウンロードやセットアップが完了するとWEBサーバーが起動します。

shell
...
Running on local URL:  http://127.0.0.1:7860

...

とログができたら起動完了です。 ブラウザで http://localhost:7860 を開けば画面が立ち上がります。

Stable Diffusion Web UI

ハイ、いってらっしゃい!!

3. 手っ取り早く入門するには

いろいろ入門サイトなどあるかと思いますが、個人的にはCivitaiがおすすめです。

3-1. Civitai で入門

Civitai サイトにアクセスすると Stable Diffusion で生成した画像がブラウズできます。

Civitai Top

この中で気になった画像をクリックするとそのプラグインのページに飛びます。

たとえば、ToonYouというStable Diffusionのモデルのページを見てみますと…

ToonYou | Stable Diffusion | Checkpoint | Civitai

右上に”ダウンロードボタン”があるのでこのモデルをダウンロードできるのはわかると思いますが、Stable Diffusion Web UI にどうやってインストールするのか?というのは “TYPE” の欄を見ればわかります。

ここでは CHECKPOINT MERGE とありますがその右側の ”?” アイコンをクリックするとインストール方法のページに飛びます。

How to use models : https://github.com/civitai/civitai/wiki/How-to-use-models#fine-tuned-model-checkpoints-dreambooth-models

このようにプラグインのタイプごとにインストール方法がありますので、適宜、チェックしていただければと思います。

さらに、ToonYou のページから気になるイラストをクリックしてみましょう。 ここで重要なのが右下の部分。

Image posted by Bradcatt | Civitai

ここにこの画像を出力するのに必要な最低限の情報が載っています。 以下の項目が記載されております。

  • Resuoce Used: 使われたプラグイン。ここからリンクで飛べます。ここでは一つですが、複数ある場合もあります。ここでこの必要なプラグインが揃えられます。
  • Prompt: 使用したプロンプト。
  • Negative prompt: 使用したネガティブプロンプト
  • Sampler: 使用したサンプラー
  • Model: 使用したモデル
  • CFG Scale: CFG Scale の値
  • Steps: Steps の値
  • Seed: Seed の値
  • Clip skip: Clip skip の設定値。これは “Settings タブ”の “Stable Diffusion” ページの設定から変更できます。

この設定をそのまま拝借すればこれっぽい画像が生成できます

そう、ここにある設定をそのまま拝借すればこれっぽい画像が生成できちゃうんです!!!! 素晴らしい!!

オリジナルのプロンプトや設定が見つかるまでは、Cibitai サイトで生成したいテイストやタッチの絵を見つけ、ここでの設定を起点にバリエーションを広げていけば学習効率が良いと思います。

3-2. Hugging Face に入門

どちらかというと Stable Diffusion で不可欠なのが、こちら

です。 公式の Stable Diffusion モデルやリアルなアジア系人物の実写っぽい画像が生成できるで有名なBracingEvoMix モデル が配布されている、機械学習分野では外せないサイトです。

さて、ここからStable Diffusion Web UI用のモデル使い方をご紹介します。 試しに Stable Diffusion v2-1 のページを見てみましょう。

Stable Diffusion v2-1

トップページのReadMeはライセンスやモデルの説明、パラメタの特性などが書いてありますのでここは熟読しておいていただくとして、ダウンロードするにはここから “Files” をクリックしてアップロードされているファイルを直接、参照します。

Stable Diffusion v2-1 at Main

このファイルのリストから、拡張子が”.safetosors” や “.ckpt”のファイルの横にある ”↓” ボタンをクリックしてダウンロードしてください。

ダウンロードされたファイルを Stable Diffusion Web UI の”models/Stable-diffusion/“以下に移動させます。 これで Web UI からは利用可能です。

4. おわりにプラグインなど

Stable Diffusion Web UI には数多くのプラグインがあります。 以下のサイトにおすすめのプラグインが紹介されていましたので、これを参考してみてください。

本日は以上です!

[商品価格に関しましては、リンクが作成された時点と現時点で情報が変更されている場合がございます。]

Stable Diffusion AI画像生成ガイドブック [ 今村 勇輔 ]
価格:2,420円(税込、送料無料) (2023/6/7時点)