💭
Macbook Air M2(mem16GB)のローカル環境でStable Diffusionを動かす(2022.9.6版)
はじめに
- Qiitaに書いた以下の記事と同様のもの
- python3必須。minicondaを利用。学習済みモデルファイル(約4GB)は事前にダウンロードしておくこと
- 1画像出力で3分30秒くらい。
参考ページ
- 使うリポジトリ
- 参考としたドキュメント
事前に学習済みモデルをダウンロードしておくこと
- 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の倍数である必要
どこに画像出力?
- ./outputs/txt2img-samples 以下
毎回CUIでパラメータやprompt入力するのが面倒なら
(ldm) % python3 scripts/dream.py --web
- そして、ブラウザで http://localhost:9090 を開くとブラウザで入力可能。
Discussion