![見出し画像](https://assets.st-note.com/production/uploads/images/112121012/rectangle_large_type_2_adfc05277d145fede103efc2529d8dec.png?width=800)
SDXL1.0のLoRA作成メモ (RTX3060 12GB)
SDXL1.0でLoRA作りました
見出しの通り、7/27に公開されたSDXL1.0でLoRAを作成しました。
こんな感じのケモキャラ生成LoRAです。
![](https://assets.st-note.com/img/1690735665129-HLmndQ1tor.png?width=800)
私自身はそれほどLoRA作成に手慣れているわけでもなく、経験も少ないですが、とりあえず出来たは出来たということで、設定値等を共有したいと思います。
(細かい部分はあまり分かっていないので聞かれても答えられないと思います。雰囲気でAIをやっている。)
使用したグラフィックボード
RTX3060 12GBで作成しています。
SDXLのLoRA作成はSD1系よりもメモリ容量が必要です。
(これはマージ等も同じ)
ですので、1系で実行出来ていた設定ではメモリが足りず、より低VRAMな設定にする必要がありました。
学習に使用した素材
1系で使用した画像データをそのまま流用しました。
過去に1系/2系でLoRA作成をしたことがある方は設定値を変えるだけで、そのまま試すことが出来ると思います。
ちなみに、1系バージョンのLoRAはこちら。
実行コマンド全文
変に細かく書いても分かりづらいと思うので、
コマンド丸ごとごそっと貼っちゃいます。
実行自体はKohya_ss GUIから行っています。
accelerate launch --num_cpu_threads_per_process=2 "./sdxl_train_network.py" --enable_bucket --min_bucket_reso=256 --max_bucket_reso=2048 --pretrained_model_name_or_path="E:/ComfyUI/models/checkpoints/sd_xl_base_1.0.safetensors" --train_data_dir="E:/kohya_ss/training/ToraFurry/images" --resolution="1024,1024" --output_dir="E:/kohya_ss/training/ToraFurry/output/XL_p1-v1" --logging_dir="E:/kohya_ss/training/ToraFurry/log" --network_alpha="1" --save_model_as=safetensors --network_module=networks.lora --unet_lr=0.0001 --network_train_unet_only --network_dim=32 --output_name="ToraFurry_XL_p1-v1" --lr_scheduler_num_cycles="400" --cache_text_encoder_outputs --no_half_vae --learning_rate="4e-07" --lr_scheduler="constant_with_warmup" --lr_warmup_steps="1200" --train_batch_size="1" --max_train_steps="12000" --save_every_n_epochs="20" --mixed_precision="fp16" --save_precision="fp16" --seed="1234" --caption_extension=".txt" --cache_latents --cache_latents_to_disk --optimizer_type="Adafactor" --optimizer_args scale_parameter=False relative_step=False warmup_init=False --max_data_loader_n_workers="0" --keep_tokens="1" --bucket_reso_steps=64 --gradient_checkpointing --xformers --bucket_no_upscale
慎重を期してtrain_batch_size="1"になっていますが、
後日"4"でもいけました。
所要時間はbatch_size1で8時間程度だったので、
4なら2時間程度で済むはずです。
Tips
ここからはちょっとしたメモです。
SDXL用の推奨設定値
GitHubにSDXLのトレーニングに関するガイドが載っています。
まずはこちらを見ると良いと思います。
GUIを使っている場合、Guidesタブにも同様の記載があります。
![](https://assets.st-note.com/img/1690736455624-FkSr6Kb2nY.png?width=800)
GUIでの設定個所
赤ラインはGuidesにあるSDXLでの推奨設定です。
黄ラインは私が手当たり次第に入れた低VRAM設定です。
(合ってるかはともかく動いた)
![](https://assets.st-note.com/img/1690736864943-sBNdtV65Ng.png?width=800)
でもコマンド見ると--lr_warmup_steps="1200"になっている。よく分からない。
![](https://assets.st-note.com/img/1690737088646-JjzcuIqcT5.png?width=800)
![](https://assets.st-note.com/img/1690737546035-z03KptzPHX.png?width=800)
最後に
とりあえず勢いで作ったので、これが最適解かは分かりませんが、設定でどうにも詰まっている方のヒント等になれば幸いです。
追記(8/1 11:30)
hugging faceにkohya_ss GUIの学習設定用jsonファイル置きました。
GUIで読み込めば上に書いた実行コマンドを再現できます。
この記事が気に入ったらサポートをしてみませんか?