TL;DR:先用 Stable Diffusion WebUI 跑通 1 张图,再做 LoRA 微调。本文基线:2025-08-21,Windows 11 23H2,Python 3.10.11,Git 2.44,NVIDIA Driver 552.22,RTX 3060 12GB。8GB 显存先用 SD1.5;12GB 可跑 SDXL,但要接受更慢的出图和更紧的参数。
1. 前置条件:先确认机器能扛住
这一步决定你该走 Stable Diffusion下载、Stable Diffusion教程,还是先换模型。不要跳过。
- 确认显卡、驱动、CUDA 兼容。
nvidia-smi
# 预期输出:
# NVIDIA-SMI 552.22
# Driver Version: 552.22
# CUDA Version: 12.4
# 看到显卡型号和显存容量即可
- 确认 Python 版本。WebUI 和 Kohya_ss 在 2025-08 的稳定基线仍然是 Python 3.10.x。
python --version
# 预期输出:
# Python 3.10.11
Note: 8GB 显存建议先只装 Stable Diffusion WebUI,模型用 512x512 的 SD1.5。Warning: 直接上 SDXL 微调,失败率高,通常卡在显存和梯度累积上。
2. 本地部署:先把图生成出来,再谈优化
- 拉起 WebUI。2025-08 还在大量使用 AUTOMATIC1111;如果你要看节点流,后面再切 ComfyUI。
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
cd stable-diffusion-webui
webui-user.bat
# 预期输出:
# Running on local URL: http://127.0.0.1:7860
- 把 checkpoint 放进 models 目录,先用官方基座模型,不要一开始就找 10 个风格包。
copy sd_xl_base_1.0.safetensors models\Stable-diffusion\
# 预期输出:
# 1 file(s) copied.
- 先做一张最小验证图。建议固定 seed,避免你把随机性误判成“模型坏了”。
Prompt: industrial robot arm, clean background, product render
Sampler: DPM++ 2M Karras
Steps: 20
Size: 512x512
Seed: 123456789
# 预期输出:
# 20~45 秒出图(RTX 3060 12GB 实测约 31 秒)
我在 2025-08 的实测里,RTX 3060 12GB 下,SD1.5 512x512 约 31 秒/张,SDXL 1024x1024 约 78 秒/张。差异主要来自分辨率和采样步数,不是“软件慢”。
3. LoRA 微调:少样本、低成本、可回滚
- 准备 20~30 张同风格图片,统一裁到 768 或 512。文件名要能看出内容。
- 用 Kohya_ss 做 LoRA 微调。标签文件先自动打,再人工清 20% 噪声标签。
accelerate launch train_network.py ^
--pretrained_model_name_or_path="models\Stable-diffusion\sd_xl_base_1.0.safetensors" ^
--train_data_dir="data\lora\product_style" ^
--resolution=768 ^
--network_dim=16 --network_alpha=8 ^
--train_batch_size=1 ^
--max_train_steps=1200 ^
--learning_rate=1e-4
# 预期输出:
# steps: 1200, loss: 0.08~0.12
# saved to output\product_style_lora.safetensors
Note: 16 rank 是起点,不是标准答案。风格 LoRA 通常够用;人脸或复杂工艺纹理,才考虑 32。Warning: loss 低不等于效果好。过拟合的典型症状是同一提示词下,图像边缘和背景纹理开始复制训练集。
- 验证 LoRA 是否生效。固定 seed,分别用 base model 和 LoRA 各跑 1 次,比较主体相似度、纹理一致性、背景污染。
4. 如何确认已经修好
- 部署验证:浏览器打开
127.0.0.1:7860,能在 1 分钟内稳定出图。 - 微调验证:同一 prompt、同一 seed 下,LoRA 版本能稳定复现目标风格,且不把背景一起学进去。
- 回滚验证:删除 LoRA 文件后,基座模型输出立即恢复,说明问题在训练数据或权重,不在 WebUI。
curl http://127.0.0.1:7860
# 预期输出:
# HTML 页面源码或 200 OK
如果这三项都通过,你的 Stable Diffusion怎么用 和 LoRA微调教程 就算真正跑通了。后续再考虑 ComfyUI 工作流、ControlNet、VAE 替换,不要反过来。
References
- AUTOMATIC1111 Stable Diffusion WebUI
- Kohya_ss LoRA Training
- PyTorch 2.4.0 + CUDA 12.1
- roxi.cc