最終更新:ID:DqSiI5hXpw 2023年01月25日(水) 04:23:47履歴
前よりは簡単になったけどまだ細かいところでめんどくさい。
- WindowsのWSL2(Linux)環境
- 普段使いのほかに16GB以上の空きメモリが必要
- ファイルの操作や編集はWindows上でおこなう
- Colab版に近い手順
- コンパイルは行わない
- この環境ではSD関連以外を使わない
- 使いこなすにはLinuxの知識が必要
最初からUbuntuが入ってる。なければインストールする。
リセットできないときもアンインストールして入れ直す。
- Microsoft Storeを起動
- ubuntu 22 で検索
- Ubuntu 22.04.1 LTS を選んでインストール(2023/01/25現在の最新)
Ubuntu 22.04.1 LTSを起動する
初期化(数分)
- Enter new UNIX username: user(なんでもいいけど)
- New password: (任意)
- Retype new password: (同じパスワードをもう一回入力)
初回の sudo 実行時にユーザーのパスワードを聞かれるので入力する
- password for user: (同じパスワードをもう一回入力)
sudo apt update sudo apt upgrade -y
3.10.6でいいことにする。
sudo apt autoremove sudo apt-get -y update sudo apt-get -y install python3.10 sudo cp `which python3.10` /usr/local/bin/python sudo apt install git libgl1 python3.10-venv -y python -V
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git cd stable-diffusion-webui
1111で推奨されるバージョンを使う。
venv/bin/pip install torch==1.13.1+cu117 torchvision==0.14.1+cu117 --extra-index-url https://download.pytorch.org/whl/cu117 venv/bin/pip install -U --pre triton venv/bin/pip install xformers==0.0.16rc425
Windowsエクスプローラーで以下の場所を開いて入れる
\\wsl$\Ubuntu\home\user\stable-diffusion-webui\models\Stable-diffusion
Ubuntu-22.04を入れたならここ(以下同)
\\wsl$\Ubuntu-22.04\home\user\stable-diffusion-webui\models\Stable-diffusion
もしくはダウンロードしてくる
wget -c "https://huggingface.co/aka7774/fp16_safetensors/resolve/main/7th_anime_v3_A-fp16-1833-2982-0018.safetensors" -P `pwd`/models/Stable-diffusion/
Windowsエクスプローラーで以下の場所をメモ帳などで開く
\\wsl$\Ubuntu\home\user\stable-diffusion-webui\webui-user.sh
#export COMMANDLINE_ARGS=""の行を任意に変更する。以下は一例。
export COMMANDLINE_ARGS="--xformers --opt-split-attention"
設定しないとこんなエラーが出る。
Could not load library libcudnn_cnn_infer.so.8. Error: libcuda.so: cannot open shared object file: No such file or directory
Windowsエクスプローラーで以下の場所をメモ帳などで開く
\\wsl$\Ubuntu\home\user\.bashrc
ファイルの先頭に以下の行を追加する
export LD_LIBRARY_PATH=/usr/lib/wsl/lib:$LD_LIBRARY_PATH
Ubuntu側で編集した内容を読み込む
source ~/.bashrc
sudo apt-get install -yqq npm sudo npm install -g wsl-open
手元の環境ではうまく動いていない。
Windows側で以下のバッチファイルを作成する
wsl bash -l /home/user/stable-diffusion-webui/webui.sh pause
VRAM 8GBでかろうじて解像度768のLoraがbatch_size=1なら動く。
(Windowsネイティブだと動かない環境なのでWSL2の導入メリットがあった)
cd ~ git clone https://github.com/kohya-ss/sd-scripts.git cd sd-scripts python -m venv venv venv/bin/pip install torch==1.13.1+cu117 torchvision==0.14.1+cu117 --extra-index-url https://download.pytorch.org/whl/cu117 venv/bin/pip install -U --pre triton venv/bin/pip install xformers==0.0.16rc425 venv/bin/pip install --upgrade -r requirements.txt
sudo apt install unzip wget -c "https://huggingface.co/JosephusCheung/ACertainModel/resolve/main/ACertainModel-half.ckpt" wget -c "https://huggingface.co/datasets/aka7774/zunko/resolve/main/7_Zunko%201girl.zip" wget -c "https://huggingface.co/datasets/aka7774/zunko/resolve/main/1_1girl.zip" unzip "7_Zunko 1girl.zip" -d train unzip "1_1girl.zip" -d reg_data
オプションを追加することで accelerate config 作業を省略している。
この設定でうちの2070だと30分くらいで仕上がる。
元が人に教えて貰ったDB用の設定なので適切かどうかはわからない。
venv/bin/accelerate launch --num_cpu_threads_per_process 8 --mixed_precision fp16 train_network.py \ --pretrained_model_name_or_path=ACertainModel-half.ckpt \ --train_data_dir=train \ --output_dir=output \ --output_name=Zunko-lora \ --reg_data_dir=reg_data \ --prior_loss_weight=1.0 \ --resolution=768 \ --train_batch_size=1 \ --learning_rate=3e-6 \ --max_data_loader_n_workers=8 \ --max_train_epochs=5 \ --gradient_checkpointing \ --xformers \ --mixed_precision=fp16 \ --save_precision=fp16 \ --logging_dir=logs \ --enable_bucket \ --min_bucket_reso=384 \ --max_bucket_reso=1024 \ --save_model_as=safetensors \ --clip_skip=2 \ --seed=17283378 \ --lr_scheduler=cosine \ --caption_extension=txt \ --color_aug \ --network_dim=128 \ --network_module=networks.lora
--use_8bit_adam \をつけてるとエラーが出て動かなかったので外した。
NameError: name 'str2optimizer8bit_blockwise' is not defined
バージョンを sd-scripts 推奨まで下げても同じエラー。
xformers 0.0.14のインストール方法は調べてない。
venv/bin/pip install torch==1.12.1+cu116 torchvision==0.13.1+cu116 --extra-index-url https://download.pytorch.org/whl/cu116 venv/bin/pip install -U --pre triton
タグ
このページへのコメント
COMMANDLINE_ARG"の設定はwebui.shかwebui.batじゃないと機能してないみたい
No module 'xformers'. Proceeding without it.のエラーが出るときは"--reinstall-xformers --xformers"
ttps://github.com/AUTOMATIC1111/stable-diffusion-webui/discussions/5303
特にCUDA ToolkitやcuDNN入れた記憶ないのに動いててなんでだろうと思って調べてたんだけど、
PyTorchを入れた時点でCUDAもcuDNNも一緒に入ってくるんだね。
ttps://kivantium.hateblo.jp/entry/2022/12/19/094523