更新时间:2024-10-18 GMT+08:00
分享

Finetune训练

本章节介绍SDXL&SD 1.5模型的Finetune训练过程。Finetune是指在已经训练好的模型基础上,使用新的数据集进行微调(fine-tuning)以优化模型性能。

训练前需要修改数据集路径、模型路径。数据集路径格式为/datasets/pokemon-dataset/image_0.png,脚本里写到pokemon-dataset路径即可。

将kohya_finetune.toml文件里数据集路径更改为pokemon-dataset路径。

cd koyha_ss
cp run_* sd-scripts
cp kohya_finetune.toml sd-scripts
cd sd-scripts
vim run_finetune.sh
vim kohya_finetune.toml
python finetune/make_captions.py {数据集路径pokemon-dataset路径}
python finetune/merge_captions_to_metadata.py {数据集路径pokemon-dataset路径} meta_cap.json

创建default_config.yaml文件,并将以下配置粘贴进去。

compute_environment: LOCAL_MACHINE
debug: false
distributed_type: MULTI_NPU
downcast_bf16: 'no'
gpu_ids: all
machine_rank: 0
main_training_function: main
mixed_precision: fp16
num_machines: 1
num_processes: 8
rdzv_backend: static
same_network: true
tpu_env: []
tpu_use_cluster: false
tpu_use_sudo: false
use_cpu: false

启动SD1.5 Finetune训练服务

使用ma-user用户执行如下命令运行训练脚本。
sh run_finetune.sh

所有数据保存在auto_log/avg_step_time.txt文本中 auto_log/log/目录下存放各个shapes的数据

相关文档