节点概览
原生 LoRA 训练系统由数据集节点和训练节点两个部分组成。数据集节点
用于准备和管理训练数据:训练节点
用于执行训练、保存和推理:系统要求
- 具有足够显存的 GPU(训练通常比推理需要更多内存)
- 训练图像(存放在
ComfyUI/input/的子文件夹中) - 基础模型(checkpoint)
典型训练流程
1
加载训练图像
将训练图像放入
ComfyUI/input/ 下的子文件夹。- 若只需图像,使用 Load Image Dataset from Folder
- 若需要图文配对,使用 Load Image and Text Dataset from Folder(每张图像需对应同名
.txt说明文件)
2
编码数据集
将图像和文本连接到 Make Training Dataset 节点,提供 VAE 和 CLIP 模型进行编码,得到
latents 和 conditioning 输出。若需要多次训练同一数据集,可用 Save Training Dataset 将编码结果保存到磁盘,后续直接用 Load Training Dataset 加载,避免重复编码。3
(可选)分辨率分桶
若训练图像尺寸不一致,将编码后的数据通过 Resolution Bucket 节点按分辨率分组,并在 Train LoRA 节点中启用 bucket_mode,以实现高效的批量训练。
4
配置并运行 Train LoRA
将模型、潜空间数据和条件数据连接到 Train LoRA 节点,根据需要调整训练参数后执行工作流。常用起始配置:
节点将输出训练好的
lora 权重、loss_map 损失历史和完成的 steps 数。5
监控训练进度
将
loss_map 连接到 Plot Loss Graph 节点,查看训练损失曲线。损失趋于平稳后即可停止训练。6
保存并测试 LoRA
将
lora 输出连接到 Save LoRA Weights 导出为 .safetensors 文件,保存在 ComfyUI/output/loras/ 目录中。在推理工作流中,使用 Load LoRA Model 节点将训练好的 LoRA 应用到基础模型进行测试。显存优化
量化模型训练
对 FP8/FP4 等量化模型训练 LoRA,推荐在 Train LoRA 中使用以下配置:training_dtype:nonequantized_backward: 启用bypass_mode: 启用
bypass。
继续训练
在 Train LoRA 的existing_lora 参数中选择已保存的 LoRA 文件,即可从之前的检查点继续训练,总步数会自动累积。
支持的训练算法
通过 Train LoRA 的algorithm 参数可选择不同的权重适配器: