资讯动态

kohya_ss 完整指南:跑通 Stable Diffusion LoRA 训练全流程

发布时间:2026/9/13 18:50:31 来源:尧图企业网站定制
kohya_ss 完整指南跑通 Stable Diffusion LoRA 训练全流程【免费下载链接】kohya_ss项目地址: https://gitcode.com/GitHub_Trending/ko/kohya_ssStable Diffusion 微调的门槛在环境搭建和几十个命令行参数上LoRA 训练要手敲 rank、学习率、分桶、优化器选项新手很容易在一条报错上卡住半天。kohya_ss 把这些参数收进一个 Gradio 图形界面选好文件、填好数值后由它自动生成并执行train_network.py等训练命令覆盖 LoRA、LoHa、LoKr、Dreambooth、全量微调与 Textual Inversion 六种训练方式。项目支持 SD 1.5/2.x、SDXL、SD3、Flux.1、Lumina Image 2.0、Anima、HunyuanImage-2.1 共七类底模本文给出一条最短安装路径、三档参数分法和三张场景配方。⚙️ 跑通第一次训练安装到产出首个 LoRA 文件的连贯流程本地训练先装依赖uv 方式用 Python 3.11.9 并勾选 Add to PATHpip 方式用 Python 3.10.11两者都要装 CUDA Toolkit 12.8 和 GitNVIDIA 显卡用户可再装 cuDNN 提速。然后带子模块克隆仓库--recursive会拉取训练引擎 sd-scripts当前 v0.11.1git clone --recursive https://gitcode.com/GitHub_Trending/ko/kohya_ss。Windows 下运行gui-uv.bat首次运行会询问是否自动安装 uv选 YLinux 下运行./gui-uv.sh脚本自动管理依赖并启动 Gradio 服务默认端口 7860加--inbrowser可直接弹出浏览器。进入 LoRA 页签后指定底模文件、指向数据集目录点训练即可产出的.safetensors文件落在输出目录。各平台最短路径对照平台安装方式启动命令关键前提Windowsuv推荐gui-uv.batPython 3.11.9 CUDA 12.8Windowspipsetup.bat后gui.batPython 3.10.11可选 CondaLinux / macOSuv 或 pip./gui-uv.sh或./gui.sh社区维护Linux 优先 uv无本地 GPUColab / Runpod / Docker按 docs/installation_runpod.md 等文档远程场景加--headless数据集按固定目录组织每个概念一个子文件夹前缀数字表示重复次数图片旁放同名.txt标注docs/image_folder_structure.mddataset/ ├── 30_人物名.jpg/.txt # 20~40 张图txt 内容写触发词描述 └── 1_cat/ # Dreambooth 正则化图LoRA 可省略不想每次手填路径的话把根目录的config example.toml复制为config.toml填入model_dir、dataset_dir、output_dir等绝对路径用正斜杠GUI 启动时自动加载外部硬盘可用allowed_paths白名单放行。️ 按效果强度分三档选择参数预设的决策表参数不必从零理解。kohya_ss 仓库的 presets/lora/ 目录自带 30 余个经过验证的 JSON 预设直接加载就能对应到下面三档强度再按档位决定是否手动微调。档位一预设跟随档。适用人群第一次训练、只想确认流程能跑通。加载SDXL - LoRA AI_characters standard v1.0.json类预设关键值网络类型 Standardrank/alpha 32/32AdamW 学习率 3e-5batch 3最多 50 epoch 且每 1 epoch 存一次盘。你只负责给数据和触发词。档位二小数据集档1~10 张图。适用人群单角色、单风格试水。用SDXL - 1 image LoRA v1.0.json网络类型 LoKrProdigy 优化器max_train_steps160 步按步数止损而非按 epoch开启train_on_input在原始图上训练而非加噪后的桶图和 5 次 multires noise 迭代min_snr_gamma5 压低高噪步权重防止小数据过拟合。档位三全手动档。适用人群20 张以上数据集、追求可控结果。以 SDXL 为例按 docs/LoRA/top_level.md 官方建议配置参数档位一 预设档位二 小数据集档位三 全手动SDXL网络类型Standard LoRALoKrStandardrank 16~32优化器 / 学习率AdamW / 3e-5Prodigy自动Adafactor / 4e-7调度与轮数每 epoch 存档50 epoch160 步constant_with_warmupwarmup 100 步2~3 epochbatch / 分辨率3 / 10241 / 10241~3 / 至少 1024×1024显存门槛12GB12GB12GB勾选--network_train_unet_only全手动档两个必做动作Adafactor 用scale_parameterFalse, relative_stepFalse, warmup_initFalse三个参数关掉自适应步长勾上--network_train_unet_only避免 SDXL 双 text encoder 带来的不可预期结果。6GB 显存也能跑但 batch 上限约为 2配合 fp16 混合精度和cache latents to disk。 场景配方人物 LoRA、单图实验与 Dreambooth配方一SDXL 角色 LoRA20~40 张图输入/前置同一角色不同姿势与光照的图 20~40 张每张配同名.txt内容写固定触发词加外貌描述底模选 SDXL显存 12GB。关键参数rank/alpha 32/32AdamW 3e-52~3 epochsave_every_n_epochs设为 1开启训练中样例图生成prompt 文件里用--w 1024 --h 1024 --l 7.5 --s 28控制出图尺寸、CFG 与步数。预期效果每隔一个 epoch 出一个中间 LoRA挑触发词出图最稳、且不带入训练集背景的那一版。配方二单图快速实验输入/前置1 张高质量目标图角色或画风显存 12GB。关键参数加载SDXL - 1 image LoRA v1.0.jsonLoKr Prodigymax_train_steps160train_on_input与cache_latents_to_disk开启多分辨率噪声 5 次迭代。预期效果低成本得到一个能出神韵的 LoRA适合验证素材是否值得扩量训练。配方三Dreambooth 正则化图输入/前置主体图一个子文件夹再加同名的 regularization 图通用概念图防止模型忘掉该概念的其他表现prior_loss_weight保持默认 1.0。关键参数batch 1学习率按底模走对应预设SD1.5 默认约 1e-4SDXL 降到 4e-7 量级fp16 混合精度。预期效果概念名被记住且通用生成能力不被破坏若概念学不进先查标注文件后缀与caption_extension是否一致而不是直接加大学习率。 性能与效率显存、后端与多卡怎么选运行时配置按硬件对号入座核心是一张决策表硬件 / 场景选择依据6GB 显存batch 1~2fp16开cache latents to disk文档注明 6GB 下 batch 2 是极限12GB 显存SDXL LoRA 常规档batch 1~3xformers官方建议 SDXL LoRA 至少 12GB24GB 显存全量微调batch 1 梯度检查点 缓存 text encoder 输出 Adafactordocs/Finetuning/top_level.md多 GPUAccelerate launch页签勾选/指定 GPU ID多任务用nohup ./gui.sh --listen 0.0.0.0 --server_port 7861 --headless起多实例各占不同端口README Guides 一节Intel Arc / AMD 显卡启动加--use-ipexXPU或--use-rocm启动参数列表NVIDIA 30/40 系setup 时可选装 cuDNN 8.9允许更大 batch、提速两个通用提速手段用 PyTorch 2 而非 PyTorch 1显存占用更低同一数据集反复调参时保持cache latents to disk开启压缩后的 latent 临时文件重启后仍可复用。批量复用配置则靠预设把自己的成功参数存为 JSON 放进presets/lora/user_presets/下次直接加载相当于训练侧的模板队列。 避坑清单高频问题与训练前检查Windows 报 page file 相关错误→ 页面文件上限不足 → 在系统设置中调大 Windows 页面文件大小。启动报No module called tkinter→ Python 环境缺少 tkinter → 重装官方 Python 包3.10 或 3.11。SSH/远程启动后训练无限卡住→ 服务器进程里弹了本地文件选择或覆盖模型对话框且无人应答 → 启动时加--headless隐藏本地文件选择器并跳过覆盖确认。SDXL LoRA 训练结果异常→ 双 text encoder 同时参与训练引入干扰 → 勾选--network_train_unet_only。Tesla V100 上 LoRA 显存利用率低→ 该卡的已知兼容性问题 → 按 docs/troubleshooting_tesla_v100.md 处理。标注文件不生效、模型只学文件夹名→caption_extension与实际标注后缀不一致 → 两者统一为.txt缺省时默认找.caption。训练/输出前检查清单底模与参数档匹配SDXL 模型用 1024 分辨率档SD1.5 用 512 档数据集每张图片都有同名.txt触发词拼写全数据集一致config.toml中填过的目录真实存在路径用正斜杠save_every_n_epochs已设置保证能挑中间结果远程/无显示环境启动参数带--headless 进阶入口架构、生态与开发者扩展架构上kohya_ss 本身是一层 Gradio 前端每个页签kohya_gui/下的类负责收集参数并拼装成底层训练引擎 sd-scripts子模块v0.11.1的 CLI 命令所以 GUI 里的每个按钮都能在控制台里找到等价命令行。生态侧训练出的 LoRA 装进 ComfyUI 或 auto1111 即可用auto1111 需安装 sd-webui-additional-networks 扩展仓库还提供 LECO 概念擦除训练SD1.x/2.x 与 SDXL和 masked loss--masked_loss用 ControlNet 式 mask 的 R 通道限定 loss 计算区域128 灰度视为半权重。![kohya_ss masked loss 训练示例图按 mask 白色区域限定 loss 计算范围](https://raw.gitcode.com/GitHub_Trending/ko/kohya_ss/raw/f44226cfccca008094f958d829c49c74a7e9289d/test/img/10_darius kawasaki person/Dariusz_Zawadzki_2.jpg?utm_sourcegitcode_repo_files)开发者扩展方面GUI 代码已重构为FIELD_REGISTRY dict-adapter 模式字段注册表保证参数按位安全新增页签可仿照kohya_gui/中任一类实现tools/目录提供标注清洗、LoRA 提取、合并等独立脚本tests/目录有完整 pytest 用例可参考。目录结构一览kohya_ss/ ├── kohya_gui/ # 各训练页签参数收集 命令生成lora_gui.py 等 ├── presets/ # lora / finetune / dreambooth 预设 JSON 与 user_presets ├── docs/ # 安装与训练文档中日英 └── tools/ # 标注、合并、LoRA 提取脚本先用presets/lora/里的 AI_characters 预设配 20 张图跑通一个角色 LoRA成功后再逐档解锁手动参数是风险最低的路径参数逐项解释见 docs/LoRA/options.md完整训练选项见 docs/train_README.md。【免费下载链接】kohya_ss项目地址: https://gitcode.com/GitHub_Trending/ko/kohya_ss创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价