Stable Diffusion
世界にめちゃめちゃ影響を与えるパブリックな ML モデル。高精度な text2img を行う。
Google Colab とか使わずに、自分でインスタンス立ててやってみたい
プライベートな Web API を作って、いずれは Discord から呼びたいので
VRAM 10GB は必要になるらしいので、多少の出費を覚悟しよう
ある程度作業できたらマシンイメージ取っておいて、あとはプリエンプティブインスタンスで実行すると良いかも
Google Cloud で実行してみる
日曜の午後だけど数分で上限緩和のメール来た
NVIDIA Tesla T4 で立ててみる
1 GPU, VRAM 16GB
ストレージは 100GB とする(50GB じゃ足りなかった)
イメージに Debian 10 based Deep Learning VM with CUDA 11.0 M95 を自動で推奨してくれた!
NVIDIA CUDA Toolkit, cuDNN lib が入ってるので、あとは Stable Diffustion を入れれば良い!
初回実行時に自動でドライバをインストールしてくれる
code:install.sh
sudo apt update
sudo apt install git-lfs
conda init bash
conda env create -f environment.yaml
# Hugging Face のユーザー名とパスワードを入力
cd ~/stable-diffusion/models/ldm
mkdir stable-diffusion-v1
mv ../../../stable-diffusion-v-1-4-original/sd-v1-4.ckpt stable-diffusion-v1/model.ckpt
conda activate ldm
cd ~/stable-diffusion
python3 scripts/txt2img.py --prompt "a photograph of an astronaut riding a horse" --plms
JupyterNotebook
code:run.sh
conda install jupyterlab
jupyter-lab
# ローカルで SSH のポートフォワードを実施
# その後ローカルのウェブブラウザでアクセストークン付きの URL を開く
ssh -L 8888:localhost:8888 HOST
参考