在 AMD(ROCm)上跑通 kohya_ss:完成你的第一次 LoRA 训练
2026/9/13 17:23:52 网站建设 项目流程

在 AMD(ROCm)上跑通 kohya_ss:完成你的第一次 LoRA 训练

【免费下载链接】kohya_ss项目地址: https://gitcode.com/GitHub_Trending/ko/kohya_ss

ROCm 驱动装好了,kohya_ss 界面也启动了,一点"开始训练"却报错或只跑 CPU——这是 AMD GPU 用户最常见的卡点。这篇文章面向会用终端、但没训练过模型的人,在 Linux 上把 kohya_ss 完整跑一遍:先逐项自查环境,装 ROCm 依赖,再启动图形界面,最后完成一次最小 LoRA 训练。

环境自查:开训前逐项核对

kohya_ss 是一个基于 Gradio 的模型训练图形界面,LoRA、DreamBooth、文本反转都靠它操作。ROCm 是 AMD 的 GPU 计算栈,作用类似 NVIDIA 的 CUDA。下表是硬性条件,装驱动之前先核一遍。

项目要求怎么核对
显卡支持 ROCm 的 AMD 卡,RX 6000/7000 系列(RDNA 2/3)成熟度最高终端运行rocm-smi,能看到卡名与显存即通过
系统Linux,Ubuntu 22.04 及以上最省心cat /etc/os-release查看发行版
Python3.10 或 3.11(项目要求>=3.10,<3.12,见 pyproject.toml)python3 --version
ROCm 驱动6.x 版本;仓库锁定的 PyTorch 是 rocm6.3 轮子,见 ROCm 依赖rocm-smi无报错,且rocminfo能列出设备

验证命令只有一条:

rocm-smi

预期结果是列出你的显卡、显存容量和占用率。如果提示找不到设备,说明 ROCm 驱动没装好,先解决这一项再往下走。

完整流程:从空环境到第一次训练

环境准备

把仓库克隆下来,--recursive不能省,kohya_ss 的训练逻辑在 sd-scripts 子模块里:

git clone --recursive https://gitcode.com/GitHub_Trending/ko/kohya_ss cd kohya_ss

安装 ROCm 依赖

在仓库目录里运行安装脚本,--use-rocm让脚本走 AMD 分支:

./setup.sh --use-rocm

脚本会创建 venv 虚拟环境,检测到 ROCm 环境(它检查rocminfo命令)后,先升级 pip 再按 ROCm 依赖 安装——该文件锁定了torch==2.7.1+rocm6.3tensorflow-rocm,比 CUDA 版体积大,所以老版本 pip 装不动。怎么算成功:结尾打印Setup finished! Run ./gui.sh to start.。装 Python 依赖前注意选对版本,细节可查 pip 安装文档 和 uv 安装文档。

启动验证

./gui.sh --use-rocm --listen 127.0.0.1 --server_port 7860 --inbrowser

浏览器会打开 kohya_ss 界面,左上角显示项目名和版本。远程 SSH 环境下要加--headless,否则文件选择框会卡住进程。也可以用 uv 方式启动:./gui-uv.sh

第一次训练

数据集就是"图片 + 同名 txt"。每张图旁放一个同名的.txt,写一句画面描述,作用像给照片贴标签,告诉模型图里有什么。支持.png.jpg.jpeg.webp.bmp。目录结构参考 test/img/ 和数据集目录结构说明。

图里的.txt内容是a painting of a steam punk skull with a gas mask, by darius kawasaki,这就是配套标注。

数据准备好后进界面 LoRA 页签:选源模型,数据集路径指向图片目录,训练参数可以先用 LoRA 预设 里的一份起步。怎么算成功:输出目录里出现.safetensors文件,且训练过程中生成的示例图越来越像你给的照片,而不是越来越糊。

LoRA 和 DreamBooth 怎么选

中文训练文档 里列了四种训练方式,对应不同脚本,差异见下表。显存一栏是相对关系,具体数值随模型和分辨率变化。

训练方式对应脚本适用场景显存消耗(相对)
LoRAtrain_network.py学一个角色、画风,产物是小插件文件,可挂到任何兼容模型上最低
DreamBoothtrain_db.py把目标学进底模本身,不产出插件较高,训练整个网络
全模型微调fine_tune.py数据量大、想整体改变模型风格最高
SDXL 底模以上均可换 SDXL 模型出图分辨率和细节更高比 SD1.5 对应方式高一档

第一次训练建议直接选 LoRA:数据集小、跑得动、失败成本最低。想省参数调优的时间,LoRA 预设 和微调预设 里都有现成 JSON。

排障速查:按现象查表

现象可能原因处理方法
pip 装依赖时报冲突或中断Python 不在 3.10/3.11 范围,或 pip 过老装不动大轮子核对python3 --version;删除 venv 重跑./setup.sh --use-rocm,脚本会自动升级 pip
onnxruntime-rocm安装失败该包没有 Python 3.11 的构建(依赖文件里有注释)换到 Python 3.10 再装
训练跑在 CPU 上,GPU 无占用ROCm 驱动未装好,或启动时没加--use-rocm先跑rocm-smi确认识别到卡,再用--use-rocm参数启动 GUI
AMD 显存不足,报 OOM 或 HSA 错误分辨率、batch 开太大打开梯度检查点(GUI 高级选项默认开启),调低训练分辨率和 batch size,用 fp16/bf16 混合精度;Accelerate 配置里还有 fp8 选项可进一步压显存
启动 GUI 提示"Please run setup.sh first"venv 不存在,说明没跑过安装脚本先执行./setup.sh --use-rocm

资源索引

  • 中文训练说明(数据准备、各方式选项):docs/train_README-zh.md
  • 数据集目录结构:docs/image_folder_structure.md
  • 安装文档:pip 方式、uv 方式
  • ROCm 依赖清单:requirements_linux_rocm.txt
  • 预设配置:LoRA 预设、微调预设
  • 训练脚本示例:examples/
  • 示例数据集:test/img/
  • 界面源码(想改默认参数时看这里):kohya_gui/

一个低门槛的起步

先用仓库自带的 test/img/ 数据(8 张图加标注)配一份 SD1.5 的 LoRA 预设跑通全流程,确认界面、GPU、显存都正常,再换自己的数据集。跑通这一次,剩下的都是参数调整。

【免费下载链接】kohya_ss项目地址: https://gitcode.com/GitHub_Trending/ko/kohya_ss

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询