项目:AUTOMATIC1111/stable-diffusion-webui | 星数:165173 | 语言:Python | 协议:AGPL-3.0 | GitHub仓库
更新日期:2026-10-29 · 作者:CodeArts 编辑部
Stable Diffusion 的图形界面有好几个,但 AUTOMATIC1111 的 WebUI(165173 星)是装机量最大、插件生态最全的那个。它的核心价值不是"能生成图",而是把 diffusion 那一堆零散参数——采样器、步数、CFG、种子、重绘幅度——变成可交互的面板,让你能快速试错。对不想写代码的人来说,它是最短的路径。
| 方式 | 说明 | 适用 |
|---|---|---|
| 官方脚本 | Linux/macOS 跑 webui.sh,Windows 双击 webui-user.bat | NVIDIA 显卡、常规使用 |
| 自动安装包 | 社区打包的便携版,解压即用 | 不想碰 Python 环境 |
| Docker | 挂载模型目录,暴露 7860 端口 | 服务器、多用户 |
硬性前提:NVIDIA 显卡且显存建议 8GB 以上,需要 Git 和 Python 3.10。AMD 显卡要走 DirectML 分支,macOS 走 MPS,速度和兼容性都会打折,这一点要有预期。
国内用户几乎一定会卡在首次启动下载依赖上。常见解法是在 webui-user.bat 里加镜像:
set COMMANDLINE_ARGS=--xformers --autolaunch set PIP_INDEX_URL=https://pypi.tuna.tsinghua.edu.cn/simple set HF_ENDPOINT=https://hf-mirror.com
models/Stable-diffusion/ # 主模型大文件(.safetensors) models/Lora/ # LoRA 小模型 models/VAE/ # VAE 调色 embeddings/ # 文本反转 Embedding extensions/ # 插件 outputs/ # 生成结果
强烈建议只用 .safetensors 格式。旧的 .ckpt 是 pickle 序列化文件,可以携带任意代码执行,下载来源不明的 ckpt 等于在自己电脑上运行陌生程序,这不是危言耸听。
| 参数 | 作用 | 实用建议 |
|---|---|---|
| Sampler | 采样算法 | DPM++ 2M Karras 是通用首选,追求速度用 Euler a |
| Steps | 去噪步数 | 20~30 足够,超过 40 收益极小 |
| CFG Scale | 贴合提示词强度 | 7~9 最稳,超过 12 容易过曝崩图 |
| Seed | 随机种子 | 固定后可微调提示词做对比实验 |
| Size | 输出尺寸 | SD1.5 用 512 基数,SDXL 用 1024 基数 |
| Hires.fix | 高清修复 | 2 倍放大 + 0.4~0.5 重绘幅度 |
新手最容易犯的错是把尺寸设成 512×1024 这类极端长宽比,SD1.5 在训练时没见过,会直接生成"两个头"或肢体错乱。正确做法是用 512 或 768 的整数倍、接近方形的尺寸出图,再用 Hires.fix 放大。
正向提示词按重要度从左到右排,语法上用括号加权:
masterpiece, best quality, (cyberpunk street:1.2), neon lights, rain reflections, (cinematic lighting:1.1), 85mm lens Negative prompt: lowres, bad anatomy, extra fingers, watermark, text, blurry
权重超过 1.5 通常会让画面变形,建议控制在 1.1~1.3。负面提示词里 lowres、bad anatomy、extra fingers 属于通用基础项,几乎所有场景都值得带上。
Denoising strength 控制改动幅度。0.3 以下只做风格微调,0.6 以上接近重画。Mask blur 让边缘过渡自然。改手部是最高频需求。实操经验是:把手部区域单独圈出,重绘幅度设 0.5~0.65,提示词里明确写 perfect hands, five fingers,一次不行就换种子重来,比硬改整张图高效得多。
纯文生图最大的痛点是构图随机。ControlNet 用一张参考图约束生成结构,常用类型:
| 类型 | 输入 | 场景 |
|---|---|---|
| OpenPose | 骨骼图 | 人物姿势精确控制 |
| Canny / Lineart | 边缘线稿 | 保持轮廓、换风格 |
| Depth | 深度图 | 空间层次、场景重建 |
| Inpaint | 遮罩 | 局部修改与扩图 |
权重(Control Weight)建议从 0.6 起调,超过 1.0 会让画面变得僵硬、失去绘画感。
--medvram # 中等显存优化 --lowvram # 低显存,速度明显下降 --xformers # 注意力加速,最有效 --opt-sdp-attention # xformers 装不上时的替代
6GB 显存跑 SD1.5 用 --medvram --xformers 基本可用;SDXL 建议 12GB 以上,8GB 需要 --lowvram 并接受较慢速度。另外生成时尺寸越大显存占用呈平方增长,先小图 + Hires.fix 是省显存的标准套路。
WebUI 本身是 AGPL-3.0,如果你把它接入对外服务的网站,AGPL 的传染性需要严肃评估。另外模型权重的许可各自独立,例如部分 SD 版本对商用有额外条款,做商业项目前务必逐个确认,不要只看仓库协议。
可以但不推荐。4GB 显存需加 --lowvram,速度很慢;纯 CPU 模式出图一张要数分钟,实用性低。若只是尝鲜,建议用在线服务;若长期使用,一张 8GB 以上的 NVIDIA 显卡是明显更划算的投入。
有。.ckpt 是 pickle 序列化格式,加载时可能执行任意代码。请优先使用 .safetensors 格式,它对文件结构做白名单校验,无法嵌入可执行代码。来源不明的 ckpt 不要加载。
这是扩散模型训练数据的固有弱点。实用做法:用 Inpaint 圈出手部单独重绘(幅度 0.5~0.65),提示词明确写 perfect hands;或用 ControlNet OpenPose 给出手部骨骼约束;也可配合 Adetailer 插件自动检测并修复面部与手部。