mieki256's diary



2023/04/09() [n年前の日記]

#1 [cg_tools] 画像生成AI Stable Diffusion web UIを試用

画像生成AI、Stable Diffusion web UI を試してみたい。できれば、ローカル環境、手元のWindows10 x64 22H2上で動かしたい。

環境は以下。 (※ 2023/04/19追記。関連ファイルの総容量は120GBになった。HDDにそのぐらいの空き容量が必要、ということになるのだろうか。)

巷の解説記事を眺めると、「ビデオカードのVRAMは 12GB以上を推奨」と書かれてるけど、自分の環境、VRAM 6GB で、はたして動くのかどうか…? 結果を先に書いておくけど、現行版の Stable Diffusion web UI なら VRAM 6GB でも動いてくれました。

一応ざっくりとインストール手順をメモ。ちなみに、「Stable Diffusion web UI インストール」でググれば解説記事がたくさん出てくる。ありがたや。

Python と git が必要 :

Stable Diffusion web UI のインストールには、最低限、Python と git が必要らしい。Python 3.10.6 と git は既にインストール済み。

_Download Python | Python.org

Python 3.10.6 は、python-3.10.6-amd64.exe を入手して実行すればインストールできる。

今現在の Python の最新版は 3.11.x だけど、Python 3.10.6 で各種プログラムの動作確認が行われているらしいので、一応ソレに合わせておいた。

_Git for Windows

Git for Windows は、Git-2.40.0-64-bit.exe を入手して実行してインストール。

CUDAをインストール :

NVIDIA CUDA toolkit 11.8 も一応インストールしてみる。今現在の Stable Diffusion web UI なら、最初にbatファイルを実行した際に自動でインストールしてくれるという話も見かけたけれど、CUDA関連のファイルサイズが大きいので、自分で状況を把握しつつインストールしてみることにした。

以下のページを参考にしつつ作業を進めた。ありがたや。

_WindowsへのNVIDIA CUDAのGPU環境構築 | 鷹の目週末プログラマー

_CUDA Toolkit 11.8 Downloads | NVIDIA Developer
_CUDA Toolkit Archive | NVIDIA Developer

cuda_11.8.0_522.06_windows.exe (3.0GB) をDLして実行。サイズが大きいので、DドライブのHDDにインストールした。インストール場所は以下。
D:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\

環境変数 PATH に以下を追加。
D:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\bin
D:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\libnvvp

CuDNNもインストール。入手には NVIDIAアカウントが必要らしい。このあたり、Stable Diffusion web UI のbatファイルで自動インストールする時はどうなるのだろう…?

_CUDA Deep Neural Network (cuDNN) | NVIDIA Developer

cudnn-windows-x86_64-8.8.1.3_cuda11-archive.zip (667MB) を入手して解凍。中には、bin, include, lib の3つのフォルダが入ってる。CUDA のインストールフォルダにコピーする。

環境変数を追加。
CUDA_PATH = D:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8
CUDA_PATH_V11_8 = D:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8
CUDNN_PATH = D:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8

DOS窓(コマンドプロンプト, cmd.exe)を開いて、nvcc とやらが動きそうかどうかを確認。
> nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2022 NVIDIA Corporation
Built on Wed_Sep_21_10:41:10_Pacific_Daylight_Time_2022
Cuda compilation tools, release 11.8, V11.8.89
Build cuda_11.8.r11.8/compiler.31833905_0

Stable Diffusion web UI をgitでクローン :

Stable Diffusion web UI を導入。以下の記事を参考にさせてもらってインストールした。

_Stable Diffusion webui(AUTOMATIC1111版)の導入解説|感想日記

_GitHub - AUTOMATIC1111/stable-diffusion-webui: Stable Diffusion web UI

今回は、D:\aiwork\ というディレクトリを作成して、その中に入れることにした。エクスプローラ上で D:\aiwork\ を右クリック → Git Bash。Bash のウインドウが開くので以下を打ち込む。
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git

github から、Stable Diffusion web UI がクローンされて、D:\aiwork\stable-diffusion-webui\ に一式が入った。

モデルを入手 :

学習モデルデータを入手。コレが無いと画像を生成できない。

色んな種類の学習モデルデータがあちこちで配布されているけれど…。Stable Diffusion web UI の、インストールフォルダ\models\Stable-diffusion\ 以下に、.safetensors もしくは .ckpt ファイルを置けばいいらしい。

.safetensors のほうが、新しくて、高速に処理できて、危険性が少ないフォーマット、らしい。.ckpt は、中にスクリプトが入っていて実行できたりするそうで、身元不明のデータは何をするのか分からなくて危険だから注意するべし、と説明されてた。

ちなみに、1ファイルに付き、2〜7GBのファイルサイズ。あっという間にHDDの空き容量が減っていく…。

今回は、v2-1_768-ema-pruned.ckpt と、chilloutmix_.safetensors を入手させてもらった。後者は、Civitai というサービスにアカウントを作らないと入手できない。

_stabilityai/stable-diffusion-2-1 at main
_ChilloutMix | Stable Diffusion Checkpoint | Civitai


巷の解説記事によると、ほとんどの場合、Hugging Face、もしくは Civitai でモデルデータの入手はできるとのこと。

_Hugging Face - The AI community building the future.
_Civitai | Stable Diffusion models, embeddings, hypernetworks and more


どんなモデルが存在しているのか、そのあたりは以下のまとめ記事が参考になった。ありがたや。

_リアル系モデル比較・雑感 - NovelAI 5ch Wiki
_モデルについて - としあきdiffusion Wiki*

Stable Diffusion をインストール :

中に入ってる、webui-user.bat を編集して、ビデオカードのVRAMが少ない環境でも少しは高速に処理ができるようになるという、xformers なるものをインストールするように指定。
set COMMANDLINE_ARGS= --xformers

xformers を導入すると処理時間が短くなるけれど、その代わり、処理の再現性が犠牲になるらしい。同じ呪文(プロンプト、と呼ばれているらしい)を打ち込んでも少し違う画像が生成されるようになるのだとか。

webui-user.bat をダブルクリックして実行。DOS窓が開いて、自動でインストール処理が進む。Python でAI関係の何かを処理できる、PyTorch (torch) というライブラリその他がインストールされる。

ちなみに、PyTorch は2GB以上のファイルだったので、処理が終わるまでそこそこ待たされる。

使ってみる :

インストール処理が終わると、DOS窓上に、以下の文字列が表示される。
http://127.0.0.1:7860/
ローカル環境でWebサーバが立ち上がって、上記のURLにアクセスすれば使えるよ、と伝えてくれている。

Google Chrome で上記URLを開く。ちなみに、Firefox で試そうとしたら、なんだかちょっと反応が妙な感じで…。おそらくこういうアレコレは、Google Chrome を使うことを前提にして作られているのだろうなと。

txt2img という、呪文を打ち込むと画像が生成されるツールで動作確認してみた。とりあえず、「Prompt」と表示されてる入力欄に、「1girl, cute」と打ち込めば、女の子の絵が生成されるらしい。

手元の環境は、Geforce GTX 1060 6GB ―― VRAMが6GBしかないからエラーが出るのかなと思ったけど、ちゃんと画像を生成してくれた。512 x 512 の画像一枚を、30秒以上かけて生成してくれている。

ちなみに、GeForce RTX 3060 12GB あたりを使えば、1枚6秒ぐらいで生成してくれるらしい…。まあ、お値段が5万円前後らしいけど…。

左上のリストボックス?で、モデルデータを切り替えることができる。自分の環境では、切り替える際に数分ぐらい待たされる。

拡張機能をインストール :

拡張機能(Extensions)をいくつかインストールしてみた。UIを日本語化したり、キーワードの補完ができるようになるらしい。

_GitHub - journey-ad/sd-webui-bilingual-localization
_GitHub - Katsuyuki-Karasawa/stable-diffusion-webui-localization-ja_JP
_GitHub - DominikDoom/a1111-sd-webui-tagcomplete

Extensions → Install from URL、を選択して、URL for extension's git repository の欄に github の URL をコピペして、Installボタンをクリック。Installed タブを選択して、インストールした拡張にチェックを入れて有効化。

以上です。

過去ログ表示

Prev - 2023/04 - Next
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30

カテゴリで表示

検索機能は Namazu for hns で提供されています。(詳細指定/ヘルプ


注意: 現在使用の日記自動生成システムは Version 2.19.6 です。
公開されている日記自動生成システムは Version 2.19.5 です。

Powered by hns-2.19.6, HyperNikkiSystem Project