SD-Trainer 快速上手:AI 绘画模型微调实战
SD-Trainer 是一个专为 Stable Diffusion 模型设计的轻量级训练框架,旨在简化微调流程。无论你是想训练个性化 LoRA 模型还是 ControlNet 控制网络,这个工具都能帮你轻松实现,无需陷入复杂的依赖管理泥潭。
环境搭建与依赖
拿到项目后,先拉取代码并安装所需依赖。建议在一个干净的虚拟环境中操作,避免版本冲突。
git clone https://github.com/bmaltais/kohya_ss.git cd sd-trainer pip install -r requirements.txt
注:实际项目中请替换为官方仓库地址,此处仅为演示流程。
配置你的训练参数
在 config 目录下创建你的训练配置文件。参考示例配置进行修改,核心在于指定基础模型路径、输出目录以及训练模式。
# 基础设置
main:
model_path: "cagliostrolab/animagine-xl-3.0"
output_path: "output"
seed: 4545
epochs: 5
# 训练器配置
trainer:
module: modules.trainer.BaseTrainer
train_unet: false
learning_rate: "1e-3"
# 数据集设置
dataset:
module: modules.dataset.BaseDataset
args:
batch_size: 1
path: "dataset"
这里要注意学习率的设置,对于 LoRA 训练,通常建议在 1e-4 到 1e-3 之间寻找平衡点。批次大小则需根据显存容量灵活调整,一般 1 到 4 即可。
启动训练流程
准备好配置后,使用简单的命令行即可开始训练。控制台会实时反馈进度,这是监控训练状态最直观的方式。
python main.py config/your_config.yaml
核心功能模块解析
模型训练模块
训练器位于 modules/trainer.py,支持多种训练模式。除了基础的 UNet 和文本编码器微调外,还支持低秩适应(LoRA)训练和可控图像生成训练(ControlNet)。这些功能通过模块化设计解耦,方便扩展。

