Debian 12 bookworm
Sponsored Link

Stable Diffusion : インストール2023/08/11

 

ディープラーニングの Text-to-Image モデルである [Stable Diffusion] のインストールです。

[1]

こちらを参考に、コンピューターに搭載しているグラフィックカード用のドライバーをインストールしておきます

[2]

Debian 12 の Python パッケージは 3.11 ですが、2023/8 時点では、このバージョンは Stable Diffusion で使用している PyTorch がサポートしていないため、 Python 3.10 以前を使用する必要があります。よって、当例では、他の Linux コンテナーを使用して起動します。
まずは、こちらを参考に、NVIDIA Container Toolkit をインストールしておきます

[3] システム要件を満たすコンテナーを Pull して、Stable Diffusion 用のイメージを登録しておきます。
root@dlp:~#
docker pull nvidia/cuda:11.8.0-runtime-ubuntu22.04
root@dlp:~#
docker run --gpus all nvidia/cuda:11.8.0-runtime-ubuntu22.04 /bin/bash -c \
"apt-get update; apt-get -y install python3.10 python3.10-venv python3-pip git curl libgl1-mesa-dev libglib2.0-0; git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui; cd /stable-diffusion-webui; python3 launch.py --lowvram --xformers --listen"


.....
.....

Calculating sha256 for /stable-diffusion-webui/models/Stable-diffusion/v1-5-pruned-emaonly.safetensors: Running on local URL:  http://0.0.0.0:7860

To create a public link, set `share=True` in `launch()`.
Startup time: 469.3s (launcher: 324.0s, import torch: 2.9s, import gradio: 1.1s, setup paths: 1.3s, other imports: 1.0s, list SD models: 137.5s, load scripts: 0.6s, create ui: 0.7s, gradio launch: 0.1s).
6ce0161689b3853acaa03779ec93eafe75a02f4ced659bee03f50797806fa2fa
Loading weights [6ce0161689] from /stable-diffusion-webui/models/Stable-diffusion/v1-5-pruned-emaonly.safetensors
Creating model from config: /stable-diffusion-webui/configs/v1-inference.yaml
LatentDiffusion: Running in eps-prediction mode
DiffusionWrapper has 859.52 M params.

# 正常に起動まできたら一旦キャンセルしてコンテナーを停止

root@dlp:~#
docker ps -a | head -2

CONTAINER ID   IMAGE                                    COMMAND                  CREATED          STATUS                     PORTS     NAMES
1b500b8780d8   nvidia/cuda:11.8.0-runtime-ubuntu22.04   "/opt/nvidia/nvidia_…"   10 minutes ago   Exited (0) 7 seconds ago             jolly_leavitt

root@dlp:~#
docker commit 1b500b8780d8 srv.world/stable-diffusion

[4] Stable Diffusion Web を起動します。
root@dlp:~#
docker images

REPOSITORY                   TAG                          IMAGE ID       CREATED         SIZE
srv.world/stable-diffusion   latest                       39a471b415f3   2 minutes ago   16.4GB
nvidia/cuda                  11.8.0-runtime-ubuntu22.04   af0cef3d3ee9   7 weeks ago     2.65GB

root@dlp:~#
docker run --gpus all -dt -p 7860:7860 srv.world/stable-diffusion /bin/bash -c \
"cd /stable-diffusion-webui; python3 launch.py --lowvram --xformers --listen"

[5] 起動時に設定したポートへアクセスすると [Stable Diffusion] を利用することができます。
[6] 生成したい画像のテキストを入力して [Generate] ボタンをクリックすると、画像が生成されます。
下例では [sugar glider on the sea] (海の上のフクロモモンガ) を入力 (似ていないが)
関連コンテンツ