你有没有过这样的经历:在 Civitai 上翻模型,看到一个叫“Anything V5”的,一个叫“ChilloutMix”的,还有一个叫“Realistic Vision”的,每个都标着“基于 Stable Diffusion”。你下载了它们,跑出风格迥异的图,但你有没有想过——这些模型之间到底是什么关系?我最早以为,每个模型都是从零开始、用不同数据训练出来的。后来我去看了模型卡,才发现我错得离谱。它们中的绝大多数,都是同一个祖先的孩子——那个祖先叫 Stable Diffusion 1.5。

2022年8月,Stability AI 开源了 Stable Diffusion 1.4,紧接着 Runway 和 Stability 合作发布了 1.5。后者成了整个社区默认的“地基”。你可能会问,为什么是 1.5 不是 1.4?因为 1.5 在 1.4 的基础上用更多数据微调过,质量更稳,而且它的模型卡里明确写了“适合作为其他模型的基础”。这句话被无数开发者当真了——后来的事情你也看到了:任何用 SD1.5 微调出来的模型,都继承了这个基础模型的全部能力,包括它的缺点。
SD1.5 的核心,是一个在“潜在空间”里工作的扩散模型。说人话:它先把 512×512 的图片压缩成一个更小的“格子”,然后在格子里逐步去噪,最后再解码成图。这个设计让显存占用小到普通显卡都能跑。但代价是,它对细节和文字的理解能力有限——这也是为什么 SD1.5 画不好手和文字。它的技术基础是CVPR 2022 那篇 Latent Diffusion 论文。
这里有个简单的训练流程,可以帮助你理解“基础模型”到底是怎么来的:
- 收集海量图文对——SD1.5 用了 LAION-2B 的一个过滤子集。
- 用 VAE 把图片压缩到潜在空间,得到一个小得多的张量。
- 在前向过程逐步加噪声,让图片变成纯噪声。
- 训练一个 U-Net(SD1.5/SDXL)或 DiT(SD3+)学习反向去噪。
- 推理时输入文本条件,模型从随机噪声中一步步还原图片。
2022年11月,Stability AI 发布了 SD2.0。理论上这是“正牌接班人”,结果社区的反应可以用两个字形容:不买账。原因很多,最致命的是两条:第一,它换了文本编码器,从 OpenAI 的 CLIP 换成了自家的 OpenCLIP,导致所有基于 SD1.5 训练的 LoRA 和模型全部失效;第二,它为了安全过滤了大量训练数据,结果生成质量不升反降。开发者们一算账:手里的几百个 LoRA 全废了,换来的却是一个没那么好的模型。于是大家默契地留在了 SD1.5。这就是生态的惯性:一个模型用的人越多,迁移成本就越高,哪怕官方出了“升级版”,大家也不愿意动。
SDXL 是 Stability AI 在 2023年7月 发布的重磅更新。这次它学乖了:不再强行兼容旧生态,而是干脆做新生态。SDXL 的参数从 SD1.5 的 0.86B 涨到了 3.5B,原生支持 1024×1024 分辨率,还加入了双文本编码器。最关键的改进是,它对细节和文字的理解能力大幅提升——画手终于不像香肠了。SDXL 的出现让社区迎来了第二次繁荣。但代价是,你以前在 SD1.5 上练的 LoRA、ControlNet 模型,在 SDXL 上全都要重新来一遍。于是生态出现了一个有趣的现象:老玩家手里有两套模型,一套留着 SD1.5 用老插件,一套切 SDXL 用新玩具。
什么是潜在空间?
潜在空间就是把高分辨率图片压缩成低维表示的空间。扩散模型在低维空间里做去噪,所以显存占用小。你可以把它想象成:把一张照片存成一个小小缩略图,修改缩略图再放大回原图——只不过这个压缩和解压过程是模型学出来的。
2024年,Stability AI 推出了 SD3 Medium,用了全新的 DiT 架构,号称文本渲染能力飞跃。但它的开源许可证限制太多:月收入 100 万美元以下的个人和企业才免费。这就等于把大公司拒之门外,也把很多想要商用的小团队惹毛了。直到 SD3.5,他们才改用 Apache 2.0 许可证,完全开放。但这时候,社区的热情已经被消耗了不少,SD3.5 的生态还没有完全长起来。你看,开源生态的繁荣,靠的不只是技术,还有许可证的诚意。
下面这张表,可以让你一眼看清四个主要基础模型的家底:
| 基础模型 | 发布时间 | 参数量 | 默认分辨率 | 生态状态 | 一句话评价 |
|---|---|---|---|---|---|
| SD1.5 | 2022.10 | 0.86B | 512×512 | 最庞大,插件和模型最多 | 兼容性之王,但上限低 |
| SD2.1 | 2022.12 | 0.86B | 768×768 | 基本废弃 | 不兼容1.5,没人用 |
| SDXL | 2023.7 | 3.5B | 1024×1024 | 快速增长,新生态 | 质量高,但需要重训插件 |
| SD3.5 | 2024.10 | 8B | 1024×1024 | 早期,生态未成熟 | 架构最新,文本最强 |
理解了基础模型,我们再来看看衍生版。我总结下来,衍生版一共就三种套路:微调、蒸馏、控制。
- 微调:代表是 LoRA 和 DreamBooth。LoRA 是给模型加一小块可训练的模块,只改几千个参数,就能把模型变成某个风格。DreamBooth 是让模型学会一个特定物体或人物。这是给模型“换衣服”。
- 蒸馏:代表是 LCM 和 SD-Turbo。它们把原本需要 50 步的采样压缩到 4 步甚至 1 步,让实时生成成为可能。这是给模型“减肥”。
- 控制:代表是 ControlNet 和 IP-Adapter。ControlNet 通过额外输入(比如深度图、线稿)精确控制生成结构;IP-Adapter 用参考图引导风格。这是给模型“加装备”。
我自己就踩过这个坑:花了一整天,在 SDXL 上加载 SD1.5 的 ControlNet,结果一直报错。后来才明白,不同基础模型的潜在空间差异很大,连预处理器都需要换。所以你现在看到的各种“SDXL 版 ControlNet”,都是社区重新训练过的,不是官方白送的。
那我到底该用哪个模型?
如果你是新手,直接上 SDXL 的社区微调版,比如 RealVisXL 或 Juggernaut XL,出图质量和容错率都更好。如果你要玩大量现成的 LoRA 和插件,SD1.5 的生态仍然是最全的,但你需要接受它的上限。至于 SD3.5,除非你需要它的文字渲染能力,否则暂时别折腾。
说完了这些,你会发现 Stable Diffusion 的生态很像生物学里的“物种辐射”:一个祖先,因为适应不同环境,演化出无数形态。基础模型决定了天花板的高度,衍生版决定了你能摘到多少果子。但生态的繁荣也有代价——它让新人进来时一脸懵。我的建议是:如果你只是玩玩,选 SDXL;如果你想用最成熟的生态,选 SD1.5;如果你想要最强的文本理解,可以试试 SD3.5,但请做好遇到 bug 的心理准备。
更值得警惕的是,这个生态的核心——Stability AI——本身并不稳定。公司差点倒闭,CEO 频繁更换,开源策略摇摆不定。但社区已经做好了“即使 Stability AI 没了,我们也能继续”的准备,因为所有模型权重都开源了,而且很多衍生版比官方版还受欢迎。这才是开源生态真正的生命力:它不是一棵树,而是一片森林。树可能会倒,但种子早就撒得到处都是。
原创文章,作者:guanweilu,如若转载,请注明出处:https://guanweilu.cn/article/296.html