はじめに
- 2022年8月に書いた以下の記事が古くなったので書き直し
- Macbook Air M2(mem16GB)で環境作ってStable-Diffusionを試す(2022/8/24版)
- 参考ページとしていた magnusviri氏によるapple-silicon-mps-supportブランチがメイン(?)の方にマージされて消えたため
- Macbook Air M2 (mem16GB)利用。GPU(MPS)利用。1画像出力で3分くらい。使用メモリーはおよそ13GBくらい。
参考ページ
- 使うリポジトリ
- 参考としたドキュメント
事前に学習済みモデルをダウンロードしておくこと
- https://huggingface.co でsignupしておく
- https://huggingface.co/CompVis/stable-diffusion-v-1-4-original へ移動
- 「Access Repository」ボタンを押して承認
- 「sd-v1-4.ckpt」をダウンロード。4.27GBなので相当にサイズ大きい。たいていは自PCの~/Downloads フォルダにダウンロードされるはず
brew でインストール
- python3が必要
- インストール: git, cmake, protobuf, rust
% python3 -V
Python 3.8.9
% brew install git cmake protobuf rust
省略
minicondaのインストール
% brew install miniconda
省略
% conda -V
conda 4.12.0
% conda init zsh
省略
% source ~/.zshrc
- 「conda init <SHELL_NAME>」で、うちはzsh使っているため。
- 「~/.zshrc」を生成してくれるので、読み込む。
- % プロンプトの前に(base)と表示されることを確認
repo. をクローンしてそのディレクトリで作業
(base) % git clone https://github.com/lstein/stable-diffusion.git
省略
(base) % cd stable-diffusion
ダウンロードしたモデルファイルを指定位置に配置・ファイル名変更
(base) % mkdir -p models/ldm/stable-diffusion-v1/
(base) % mv ~/Downloads/sd-v1-4.ckpt ./models/ldm/stable-diffusion-v1/model.ckpt
Pythonパッケージのインストール
(base) % PIP_EXISTS_ACTION=w CONDA_SUBDIR=osx-arm64 conda env create -f environment-mac.yaml
(大量のインストール表示)
(base) % conda activate ldm
- 以降、%プロンプトの前は(base)から(ldm)に変わる
一回だけ実行しよう
(ldm) % python3 scripts/preload_models.py
(succcessなどの数行の表示)
enjoy!
(ldm) % python3 scripts/orig_scripts/txt2img.py --n_samples 1 --plms --prompt "a photograph of a space cat"
- 「--n_samples 1」にして一度に出力する画像数を減らすと処理が早く終わる
- だいたい3分30秒くらい。
- 標準だと縦横512x512サイズの画像だけど、横幅を「--W 256」に小さくするともっと早い。なお縦横ともにサイズは64の倍数である必要
どこに画像出力?
毎回CUIでパラメータやpromptを入力するのが面倒なら
% python3 scripts/dream.py --web
- ブラウザで http://localhost:9090 を開くと以下のようなUI表示。