用 kohya_ss 一小时练出你的第一个 LoRA 模型:Stable Diffusion 微调实战 用 kohya_ss 一小时练出你的第一个 LoRA 模型Stable Diffusion 微调实战【免费下载链接】kohya_ss项目地址: https://gitcode.com/GitHub_Trending/ko/kohya_sskohya_ss 是一个基于 Gradio 图形界面的 Stable Diffusion 模型训练工具它把 Kohya 的训练脚本封装成网页表单LoRA 微调、DreamBooth、文本反转都不用敲命令行填完参数即可开练。本文以一次完整的 SD LoRA 训练为主线从数据整理讲到结果验证。kohya_ss 是什么该选哪种训练方式kohya_ss 是 Kohya 的 sd-scripts 训练脚本的图形化前端你在界面里填表单它自动生成对应的训练命令并在后台执行环境虚拟环境、依赖也由自带的安装脚本管理好。和纯命令行训练相比你不需要记住每条参数的写法但底层训练逻辑完全一致需要深挖时可以直接编辑拼好的命令。它支持的基座模型包括 Stable Diffusion 1.5/2.x、SDXL、SD3、Flux.1、Lumina Image 2.0、Anima、HunyuanImage-2.1 等。常用的训练方式有三种训练方式产出物显存要求参考适用场景LoRA单个文件几 MB 到几百 MB6GB 可起步SDXL 建议 12GB风格、角色、概念微调Dreambooth完整模型文件GB 级高于 LoRA需要独立完整模型的个性化主体微调文本反转嵌入文件KB 级三者中最低教模型认一个新词或专有名词LoRA 的显存参考值来自仓库文档docs/LoRA/top_level.md 建议 SDXL LoRA 训练使用至少 12GB 显存的 GPUdocs/LoRA/options.md 提到 6GB 显存下 batch size 开到 2 已是极限。准备与启动三步打开训练界面第一步获取代码并安装环境git clone https://gitcode.com/GitHub_Trending/ko/kohya_ss cd kohya_ss然后运行setup.batWindows或./setup.shLinux/macOS脚本会创建虚拟环境并装好依赖。uv与pip两种安装路线的区别和细节见 docs/Installation/。第二步配置默认路径可选但推荐把仓库里的config example.toml复制一份改名为config.toml填入基座模型、数据集、输出目录等路径。GUI 启动时会自动加载免去每次手动选文件夹。第三步启动图形界面# Windows gui.bat # Linux/macOS ./gui.sh如果是通过 SSH 或远程方式使用记得加--listen 0.0.0.0 --headless否则本机文件选择对话框会在服务端弹出、卡住训练流程。用 10 张图完成一次 LoRA 训练整理数据集10 张图起步目录结构要平仓库自带了一份标准格式的示例数据集 test/img/图片与同名 caption 文件放在同一目录。例如Dariusz_Zawadzki.jpg对应的Dariusz_Zawadzki.txt只有一行描述a painting of a steam punk skull with a gas mask, by darius kawasaki几个要点10-20 张图足够起步风格类 LoRA 不必贪多caption 描述主体 风格各图保持一致并统一一个固定标识词如角色名后面提示词就靠它调出效果图片分辨率 512-1024 之间即可GUI 的 bucket 机制会自动分桶裁切设置关键参数抓住 5 个就够LoRA 标签页里大部分参数都有可用的默认值真正决定成败的是下面 5 个network_dim网络维度/rank——决定小网络的容量上限。简单概念 4-16 即可角色风格用 16-32。设得比数据量高会过拟合设太低模型学不动。network_alpha——参与小网络输出缩放通常与 dim 相等或取 dim/2。跟着预设里的组合走即可不用单独纠结。learning_rateLoRA 学习率——最敏感的参数。SD1.5 配 AdamW 一般在 1e-4 到 1e-5SDXL 配 Adafactor 约 4e-7、配 AdamW 可到 1e-4。presets/lora/ 里每份预设都是经过验证的优化器 学习率组合。epoch——LoRA 训 2-3 个 epoch 就够。数据少时每个 epoch 内图片已被重复读取多次epoch 开大会直接过拟合。save every N epochs——建议每个 epoch 存一次文件。最终版往往不是最好的中间版本对比后择优保留。启动训练并监控点击开始训练后GUI 会在后台跑 sd-scripts页面上能看到进度、loss 曲线配置了 TensorBoard 的话还能看更细的曲线。想边训边看效果可以在保存节点让训练生成样本图提示词文件里支持--w/--h/--s/--l/--d等选项控制尺寸、步数、CFG 和种子格式见 README.md 的 Sample image generation 一节用固定提示词对比不同阶段的效果最直观。验证产出怎么判断 LoRA 练成了把训练出的 LoRA 文件装进你的推理软件用三类提示词测试加上新标识词的提示词——训练的概念应该稳定出现不加标识词的提示词——出图应接近基座模型不该被绑架固定种子连续出图——概念要能复现细节不能退化成某一张训练图都通过才算合格如果生成的图几乎和训练集某张一模一样说明过拟合了回上一步减 epoch、降学习率。易错参数速查表参数建议范围典型出错表现一句话解释learning_rate1e-5~1e-4SD1.5 AdamW4e-7~1e-4SDXL随优化器过高噪点、画面崩坏过低无变化调它按十倍级试小步微调没有意义network_dim4~32过高 数据少 → 过拟合过低 → 效果弱先看要学的内容复杂度再定network_alpha等于 dim 或 dim/2效果不稳定、难以对比照抄预设里与 dim 的搭配epoch2~3过多 → 过拟合小数据集下每个 epoch 已重复读图多次train batch size1~26GB 显存约 2过大 → 显存不足崩溃放不开就降回 1用步数补max_resolution512x512SD1.5~ 1024x1024SDXLSDXL 设太低 → 细节发糊SDXL 按文档要求至少 1024x1024save every N epochs1只留了终版错过最佳点多存中间版本用于择优常见坑与自救显存不足OOM 中断——原因batch 过大、没开混合精度或 SDXL 双文本编码器吃显存。处理batch 降到 1打开 gradient checkpointing 和 bf16 混合精度预设里默认就是开的SDXL 加--network_train_unet_only只训 U-Net。过拟合——现象输出几乎复刻训练集里的某张图。原因epoch 或步数过多、dim 与学习率偏高。处理epoch 减半学习率降一档必要时打开 flip / color 增强或 caption dropout 这几个开关。效果不明显——现象模型认不出新标识词。原因训练步数太少、学习率偏低或 caption 里的标识词没每张图都写。处理先核对 caption 一致性再加步数、升一档学习率重跑。远程启动卡死在文件选择对话框——原因SSH 环境下本地对话框跑在服务端进程上无人能点。处理用--headless参数启动 GUI它会隐藏本机选择按钮并在同名文件存在时自动覆盖。进阶能力与资源索引跑通一次之后可以顺手试试这些能力presets/ 目录里有社区验证过的参数组合LoRA、LoHa、LoKR、分阶段微调加载后按需改masked loss 功能用掩码图指定只对这个区域计损失掩码为 RGB 图、R 通道 255 处生效test/masked_loss/ 里有现成样例复杂任务可采用低学习率打底 → 提高学习率收细节的多阶段训练examples/LoRA%20based%20finetuning%202%20phase.ps1 是完整脚本示例。常用入口LoRA 训练参数逐项讲解docs/LoRA/options.md分平台安装指南uv/pipdocs/Installation/自动打标、图片分组、格式转换等辅助工具tools/训练脚本示例examples/含 caption 的示例数据集与掩码样例test/写在最后kohya_ss 把参数拼装、环境管理和模型保存收进同一个窗口Stable Diffusion 微调的试错成本从先啃文档和源码降到了填表单、点开始。下一步很具体挑 10 张你真正想训的图照本文主线跑一遍 LoRA再把你按 epoch 保存下来的几个中间版本挨个对比——最好的那个往往不是最后一个。【免费下载链接】kohya_ss项目地址: https://gitcode.com/GitHub_Trending/ko/kohya_ss创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考