Stable Diffusionで色んなことをする。リンク集とかメモ

アレから一週間Stable Diffusion(以下SD)に異常にハマっている俺だ

 

異常にハマっているのは俺だけではなく色んな人がハマり記事を書いたりGitのリポジトリ更新してたりでSDを取り巻く環境は目まぐるしく変化してる

 

 

導入

プログラミング知らないので導入でコケてyamlファイル*1にコマンドを追加する意味がわからなかった

dependencies: -git

これは依存関係のファイルのダウンロード先の追加だった

 

conda install pytorch torchvision -c pytorch
pip install transformers==4.19.2 diffusers invisible-watermark
pip install -e .

大して意味はないと言ってたこれコードを更新したあとはこれをやらないと動かなくなる

 

RTX3080のVRAM10GBじゃメモリー容量不足で動かないからバスジンダル版ってフォークを入れれば速度を犠牲に容量減らして実行できる

GitHub - basujindal/stable-diffusion

 

とか地味に自分の知識を前進させてた

 

 

一週間後その知識は不要になるぐらい導入が簡単になった

GitHub - hlky/stable-diffusion

hlky版は学習データを指定のフォルダに入れて、Miniconda3をインストールした後にwebui.cmdをダブルクリックするだけでブラウザが立ち上がって使いやすいWebGUIが表示されるようになった

 

それも面倒な場合はインストーラーももう出来てる

NMKD Stable Diffusion GUI - AI Image Generator by N00MKRAD

Stable Diffusion GRisk GUI 0.1 by GRisk

 

バスジンダルとhlkyで足りるから俺は導入してない

両方ともWebGUIで使える

 

バスジンダルは簡単に起動させられるcmdファイルがないからhlky版の流用とGoogleでバッチファイルの作り方を調べて作った

ちゃんと動いてるかは怪しいが一応動いてる

GitHub - NEXTAltair/stable-diffusion

 

 

絵を書いてもらう

Lexica – Portrait of a young very beautiful cute tribal woman with a steampunk gun, in a post apocalyptic city overgrown with lush vegetation, by Lui...

良さげな呪文を検索できるサイト

 

 

 

ファインチューニングという言葉を知る

SDの学習モデルは色んなサイトからかき集めた画像*2を学習して構築されたので特定のなにかを出力したい場合は膨大なデータが邪魔になる

そこで出力したいイメージを学習させることで出力の狙いを絞ることができる(という認識でいいね?)

Stable Diffusionをいらすとやでファインチューニングする - ほげほげ

 

上記の方法でできなかったので

GitHub - nicolai256/Stable-textual-inversion_win

これを使った

しかし、コードやコマンドの問題はなさそうだったがVRAM10GBじゃ足りないのでフロントページの下の方にあるGoogle Colab版をわざわざ有料プランに入ってやり始める

 

Stable Diffusionファインチューニング用のColab - ほげほげ

使ってはないがメモ

 

Colabがあるから動かせはするが狙ったセッティングが出るかはわからない

学習だから枚数と時間が多ければいいわけじゃない

学習させるワードは何が適切なのかなど

GitHub - hlky/sd-enable-textual-inversion: Copy these files to your stable-diffusion to enable text-inversion

 

アニメ・マンガ特価のファインチューニング済みモデルTrinArt

naclbit/trinart_stable_diffusion · Hugging Face

sd-v1-4.ckptより容量が減ってるのはなぜだ?

model.ckptと差し替えで動くからまあ良しなんだけど、何か間違っているという予感はある

リネームで差し替えは面倒だからTrinArtはバスジンダル版でsd-v1-4はhlkyで動かしてる

 

TrinArtを簡単にhlky版に導入するためのバッチ

GitHub - diaphragm/wsl-sd: setup stable diffusion to wsl2b

DockerのLinuxのコマンドなのでWindowsではそのまま使えないから大幅に書き直しが要るそれかWindowsでLinuxのコマンドを使えるようにする必要がある

コマンドプロンプトでlinuxコマンドを使用できるようにしてみた - Qiita

Gowダウンロード元

Releases · bmatzelle/gow · GitHub

 

終わり

奥深い

Pythonも機械学習やら拡散モデルなんかも理解することは一生ないだろう

ツールをガチャガチャやって楽しいで十分だから

 

やってる間はモンハンができない問題が生じるが次に来るエスピナス亜種までにはこのSDにも飽きが来てそう

 

 

 

 

 

 

 

*1:環境の設定を保存するファイル

*2:laion-aesthetic-6pls: images: 12,096,835 rows この中の高解像度で透かし無しの画像、割合として0.5%を使ってトレーニング