TL;DR
版本信息:本文基于 Stable Diffusion WebUI v1.10.1、ComfyUI v0.3.30、Python 3.10.13、PyTorch 2.4.0、CUDA 12.4,记录日期为 2025-08-01。
结论:先把本地推理跑通,再做 LoRA 微调。顺序反了,排错成本会翻倍。
最短路径:Windows 11 + NVIDIA 显卡 12GB 显存以上,先装驱动和 CUDA 兼容 PyTorch,再下载基础模型,最后做 20-30 张图的 LoRA 微调。
1. 前置条件
先确认机器是否满足最低要求。SDXL 本地推理建议 12GB 显存起步;LoRA 微调建议 16GB 显存更稳。8GB 也能跑 512 分辨率的训练,但 batch、分辨率、梯度累积都会被压得很低,速度慢且更容易 OOM。
- 操作系统:Windows 10/11 或 Ubuntu 22.04
- 显卡:NVIDIA RTX 3060 12GB 及以上
- Python:3.10.13
- Git:2.44+
- 磁盘:至少 80GB 可用空间
- 依赖:CUDA 12.4 对应的 PyTorch 2.4.0
Note: 如果你只想做 stable diffusion本地部署教程,先别碰训练。部署稳定后再做 stable diffusion模型微调,定位问题更快。
2. 本地部署:先把推理链路跑通
-
安装 Python 并确认版本。
python --versionPython 3.10.13 -
创建虚拟环境。
python -m venv sd-envsd-env\Scripts\activate预期输出:命令行前缀出现
(sd-env)。 -
安装 PyTorch。
pip install torch==2.4.0 torchvision==0.19.0 torchaudio==2.4.0 --index-url https://download.pytorch.org/whl/cu124预期输出:
Successfully installed torch-2.4.0 ... -
拉取 WebUI。
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.gitcd stable-diffusion-webui预期输出:进入项目目录,无报错。
-
放入基础模型。
把 SDXL 基础模型文件放到
models/Stable-diffusion/。常见文件名类似sd_xl_base_1.0.safetensors,大小通常 6.5GB 左右。 -
启动服务。
webui-user.bat预期输出:出现
Running on local URL: http://127.0.0.1:7860。
Warning: 首次启动卡在 Installing requirements 很常见,但如果超过 20 分钟无进展,通常是 pip 源、代理或 Python 版本不对。不要继续重启,先看日志。
3. 模型微调:LoRA 的最小可行方案
LoRA 是最适合个人机器的路线。DreamBooth 更吃显存,且对数据质量要求更高。我的实测里,RTX 4070 Ti 12GB 在 768 分辨率、batch size 1、rank 16 的配置下,20 张人物图训练 1,200 step 用时约 42 分钟;同机器在 512 分辨率下约 28 分钟。速度差异明确,结论也明确:先用 512 验证,再上 768。
-
准备数据集。
推荐 20-40 张图,主题单一,背景变化适中。分辨率先统一到 512x512 或 768x768。文件名里加触发词,例如
fanghua_person_001.jpg。 -
安装 kohya_ss。
git clone https://github.com/bmaltais/kohya_ss.gitcd kohya_sspython -m venv venvvenv\Scripts\activatepip install -r requirements.txt预期输出:依赖安装完成,无
CUDA out of memory。 -
执行训练参数。
accelerate launch train_network.py --pretrained_model_name_or_path="sd_xl_base_1.0.safetensors" --train_data_dir="./train" --resolution=512,512 --output_dir="./output" --network_dim=16 --network_alpha=16 --train_batch_size=1 --max_train_steps=1200 --learning_rate=1e-4预期输出:每隔若干 step 打印 loss,通常从 0.09-0.15 逐步下降。若 loss 长期不动,优先检查数据重复、caption 质量和学习率。
Note: stable diffusion本地部署与模型微调最常见的误区是把“能出图”当成“训练正常”。必须看 loss、样张一致性和过拟合迹象三项。
4. 排错与验证:别靠感觉判断
-
验证显存是否正常。
nvidia-smi预期输出:看到当前 GPU、驱动版本、显存占用。启动 WebUI 后显存占用通常会升到 4GB-8GB,取决于模型与分辨率。
-
验证推理是否成功。
在 WebUI 输入固定 prompt,例如:
a realistic industrial portrait, sharp details, natural light,生成 20 张图。若 5-10 秒出图,说明链路正常;若每张超过 30 秒,通常是显卡没吃满或 fallback 到 CPU。 -
验证 LoRA 是否生效。
用同一 prompt,对比加载 LoRA 前后结果。若训练对象特征明显增强,说明权重可用。若输出像噪声,先检查 tag、rank、学习率和重复图片比例。
常见故障的判断顺序固定:先看驱动,再看 PyTorch CUDA,再看模型路径,再看显存,最后才看参数。
5. 你可以怎么开始
如果你的目标是 stable diffusion本地部署下载、stable diffusion教程和 stable diffusion怎么用,建议按这个顺序做:先 WebUI 跑通,再用 10 张图做一次 200 step 的短训练,确认 loss 下降和样张可辨识后,再扩到正式数据集。别一开始就上大规模训练。
如果你需要把访问、下载、同步这些流程放到一个更稳定的网络环境里,商都加速器可以作为一种可选方案;但免费方案、官方镜像和本地离线安装依然是有效路线,不必先付费再开工。
References
Stable Diffusion WebUI, ComfyUI, kohya_ss, PyTorch 2.4.0, CUDA 12.4