まずpythonを入手してパスを通しておきます。
3系でないといけないので、最新版を入手しました。(3.11)
pipもインストールしておく必要があります。
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
cd .\stable-diffusion-webui\
.\webui-user.bat
とします。
ここでwebui-user.batを実行するのですが、
GPUを積んでないので色々とエラーが出ました。
具体的には、
AssertionError: Torch is not able to use GPU;
とか、
RuntimeError: "LayerNormKernelImpl" not implemented for 'Half'
です。
対策として、webui-user.batエディタで開くと、set COMMANDLINE_ARGS= という欄があるので、オプションを追記します。
set COMMANDLINE_ARGS=--skip-torch-cuda-test --precision full --no-half
こんな感じでした。
これで起動すると、ローカルホストのURLが表示されるので、アクセスしてみると使えるようになりました。
ところがどっこい、1枚生成するのに5分以上かかるのです。
CPUで処理するのは遅すぎるか・・・とダメもとで、 --use-cpu all のオプションをつけてみましたが無駄でした。
Google Collabで試したらすぐに容量制限にひっかかってしもうた。
ちなみに、 stable-diffusion そのままを落としてきたところ、
txt2img.pyにckptモデルではなくてsafetensorsモデルを食わせる方法が分からず詰んだ
!python scripts/txt2img.py --prompt="Horse" --plms --ckpt /content/drive/MyDrive/Models/MyModel_01.safetensors --skip_grid --n_samples 1
上記の様に、ckptオプションに、safetensorsを指定すると当然のごとくエラーを吐いて終了する。
これが回避する方法が分からなかったので、stable-diffusion-webUIを使うようにした
!python launch.py --share --xformers --enable-insecure-extension-access