StableDiffusionをローカルにインストールしてみた/Google Colabを触ってみた

別に何が作りたいというわけでもないんだけど、せっかくRTX 4070のPCを新調したからには、やってみようかなと。


StableDiffusion Web UIのインストール

まずPythonってWindowsプリインストールじゃないよね?と思いつつもバージョン確認すると、応答があるけどバージョン情報が「python」だけしか出ない。確認って大事ね・・・

インストールすれば上書きしてくれるような気もしたけど、一応上記手順に従ってアプリ実行エイリアスを無効化。
続いて以下手順に従い、Python3.10.6、Git、Stable Diffusion web UIを導入。

普通にStableDiffusion(以下SD)を使うとコマンドラインで作らなきゃいけないので、ブラウザで利用できるSD WebUIが推奨されている様子。
学習モデルはむちゃくちゃ種類が多くてわからなかったので、一番無難っぽかったAnythingというものをとりあえず入手。複数のモデルを入れておいてもWeb UIで使うのを選択できるっぽい。また、SD上では正式にはCheckpointと呼ばれるようなので、一応用語を覚えておく。
起動用に、webui-user.batをデスクトップのショートカットに置いておく。
デフォルトだと英語なので日本語化する。

「Localization (requires restart)」の位置が変わっており、User interface>User interfaceの一番上にあった。設定したてだとNoneしかなかったので、右側の更新ボタンを押したら出てきた。
これでいくらでも(電気代のみで)画像生成できる環境ができた。
作ったものはoutputsフォルダに自動保存されているので、定期的に削除しないと容量に注意する必要がある。

Google Colabのお勉強

ここで動作しているSDはVer1.7らしいが、どうもVer2.1というのも出ているらしい。

画像サイズが大きくできたり指の生成が改善されているらしくええやん?と思ったけど、上記のWeb UIでは対応していない。
どうしたもんかなーと思ったら「Google Colabでできますよ!」という記事が。

まって、GoogleColabって何?

Colab(正式名称「Colaboratory」)では、ブラウザ上で Python を記述、実行できます。以下の機能を使用できます。
・環境構築が不要
・GPU に料金なしでアクセス
・簡単に共有

開発環境というかプリセット版VScodeみたいな感じか。ふええ・・・

”maintained by TheLastBen”を自分のGoogleDriveにコピーして、各セクションの再生マーク(右三角)を順に押していく。
最初の「Connect Google Drive」では自分のアカウントの認証が入る。
その後、Model Loadさせるには自分のGoogleドライブにモデルをアップロードしておく必要があるらしい。まあ必要なんだろうけど、ファイルサイズが2GB以上あるから難儀だな・・・プリセットのモデルも4つほど用意されているので、お試しで使うならそれでもいいかもしれない。
アップロードしたモデルのアクセスパスを指定するところでちょっとつまづいた。手打ちで入力したら認識しなかった。ファイルパスを取りたいが、Googleドライブではファイルパスが取れない・・・
Colab上でドライブをマウントしたあとは、左側のフォルダアイコンをクリックするとパスがみられるので、エクスプローラー的にたどってから右クリックでファイルパスを取得する。
Download LoRAとControlNetは無視して、Start Stable-Diffusionを実行。
「https://XXXXXXXX.gradio.live/」というURLでWeb UIが起動した。

とここまではよかったのだが、やはり無料版Colabでは負荷が高すぎる禁止コードとして、ブラックリスト扱いになっている様子。これ以上は実行できなかった。

そらそうよ でも金払えば動くんだよな

SD2.1の導入?

その後色々と調べたら、普通に2.1モデルとYAMLファイルをダウンロードしたらWebUI上で動くことが判明。なんだよう・・・

しかも512x512は動いたが768x768は動かなかった。そして出てくる画像もAnythingと比べるとしょぼい。
そもそもVer2.1というのはモデルの話なのか・・・?根本のエンジン的なものなのかと思っていたがどうも違うらしい。学習させる(モデルを作る)時だけ気にすればよいのかも。

というわけで本日のお勉強はここまで。まとめ。
・ローカル環境でのStableDiffusion Ver1.7がWebUIで動いた。
・いくつか画像が生成できた。
・モデル(Checkpoint)が違えば出力も全然違う。
・Google Colabの機能がなんとなくわかった。すごい。
次はLoRAとは何かを調べたい。


この記事が気に入ったらサポートをしてみませんか?