先日の記事でIntel MacにStable Diffusionの環境を構築して動かしましたが、画像生成に2時間近くかかったり、img2imgが動作しなかったりと早くも限界を迎えたため、RTX2080搭載のWindowsPCに環境を構築しなおして遊ぶことにしました。
GPUを利用することで、CPUとは比較にならないくらいの速度で画像生成が行えるはずです。
環境
・Windows11
・GeForce RTX2080 VRAM 8G
・メモリ 24GB
・ゲーミングノート
構築手順
Git For Windowsをインストール
以下からダウンロードしてください
Git for Windows
インストール時、いろいろと選択肢が出てきますが、すべてデフォルトでインストールしています
Anacondaをインストール
以下からダウンロードしてインストールしてください
https://www.anaconda.com/products/distribution
ちなみにAnacondaは一定の条件を満たす場合のみ無償で利用できます。
今後商用利用する場合は有償パッケージが必要になりますのでご注意ください
Fork版のStable DiffusionをCloneする
Anacondaをインストールすると、スタートメニュー内に「Anaconda Powershell Prompt(Anaconda)」ができていますので、こちらを起動して作業を進めていきます。
cdコマンドを使って、適当なディレクトリに移動します。
自分はFドライブで作業しているので、以下のようにしました
Stable Diffusionをクローンします。
ここでは本家を利用せず、最適化されたStable Diffusionを利用します。
理由として、本家を動かすには10GB以上のVRAMが必要とのことで、自分のPCでは動きませんでした。
最適化されたFork版では4GBのメモリ量から動かすことができるため、こちらを利用します
git clone https://github.com/basujindal/stable-diffusion.git stable-diffusion-optimize
cd stable-diffusion-optimize
環境を構築する
Cloneしたら、以下のコマンドで環境を構築します。Macの時のように、いろいろな手直しは必要ありません
conda env create -f environment.yaml
conda activate ldm
モデルファイルを配置
Hugging Faceからモデルをダウンロードします(要会員登録)
https://huggingface.co/CompVis/stable-diffusion-v-1-4-original
ダウンロードしたファイルを「model.ckpt」にリネームし、以下のようなフォルダ構成となるように配置します
stable-diffusion-optimize\models\ldm\stable-diffusion-v1\model.ckpt
早速実行してみる
これで環境構築は終了で、もう動作可能になっているはずです。
本家の動作用コマンドを実行し、確認してみましょう
python optimizedSD/optimized_txt2img.py --prompt "kawaii girl smile" --H 512 --W 512 --seed 27 --n_iter 2 --n_samples 10 --ddim_steps 50
コマンドを実行すると、ものすごい勢いでGPUに負荷がかかり始めます
自分の環境では10分ほどで計算が終了しました。Intel Macの1時間40分とは比較にならないくらい早いですね!(パラメータの違いもありますが・・・)
生成された画像はこちら かわいい、少女、笑顔 の呪文で生成したので、それっぽい画像が生成されました。
サムネで見るとよくできていますが、拡大してみると一部顔の形が崩れていたりするのでちょっと怖い・・・(不気味の谷現象)
AIに画像を生成させるのであれば、風景やファンタジー調のものが合うのかなと感じました
img2imgも動かす!
Intel Macでは動かなかった、img2imgも動かします。
python optimizedSD/optimized_img2img.py --prompt "hololive shirakami fubuki vtuber" --init-img ./shitae.jpg --strength 0.8 --n_iter 2 --n_samples 10 --H 512 --W 512
下絵に利用したのは、前回も登場した白上フブキちゃんですね
実行すると、かなりGPUメモリがやばい状態に・・・
生成された画像はこちら
あなたたちどちら様ですか?
まだまだうまく画像が生成できないので、使い方の勉強が必要ですね
以上です
GPU搭載のWindowsマシンでStable Diffusionを動かしてみましたという記事でした。
良いGPUを積んでいるのであれば画像生成も常識的な時間で完了するため、ついいろいろと試してみたくなります。
仮想通貨の暴落もあり、グラボの価格も落ち着いてきたそうなので、Stable Diffusionで遊ぶためにグラボを買い替えるというのもありかもしれないですね。
自分のはノートPCなので、交換できませんが・・・