采样器列表里几十个名字,官方文档也说不清差别。其实只要理解一件事:采样器 = 求解器 + 噪声调度。前者决定怎么一步步逼近目标,后者决定每一步该用多大的噪声。
求解器:确定性的与带随机的
扩散模型的去噪过程,本质是解一个微分方程。数值解法分两类:
- 确定性解法:给定起点,路径唯一。Euler、Heun、DPM2 属于这类。
- 随机解法:每一步都重新注入噪声,路径带随机性。名字里带
a(ancestral)或SDE的属于这类。
这个区别决定了你能否复现。同一个种子:
- 确定性采样器 → 每次出图完全一致。
- 祖先采样器 → 每次都不一样,只能保证「风格相近」。
所以做参数对比时必须用确定性采样器,否则你永远分不清变化来自参数还是噪声。
几个常用采样器的实际表现
| 采样器 | 类型 | 步数需求 | 特点 | 适合 |
|---|---|---|---|---|
| Euler | 确定性 | 20–30 | 简单直接,细节一般,稳定 | 快速预览、参数测试 |
| Euler a | 祖先 | 20–30 | 画面活泼,细节丰富,不可复现 | 二次元、插画、抽卡 |
| Heun | 确定性 | 25–40 | 比 Euler 精细,慢一倍 | 需要干净结果的写实 |
| DPM++ 2M | 确定性 | 20–25 | 多步法,收敛快,性价比高 | 通用默认 |
| DPM++ 2M Karras | 确定性 | 20–25 | 换 Karras 调度,暗部更干净 | 写实、人像 |
| DPM++ SDE Karras | 祖先 | 25–35 | 细节最强,速度最慢 | 成品输出、质感要求高 |
| UniPC | 确定性 | 10–20 | 低步数表现好,预测式求解 | 快速迭代 |
| LCM / Turbo | 专用 | 4–8 | 需配套模型,极快 | 实时预览 |
Karras 调度是什么
它不是一个采样器,是一条噪声曲线。默认的 normal 调度在时间轴上均匀分配噪声等级,karras 则在高噪声区多分配几步、低噪声区少分配几步。
实际感受是:Karras 在高步数下暗部噪点更少、渐变更平滑。低步数(低于 15)时反而可能不如 normal 稳。
所以「DPM++ 2M Karras」这个组合之所以流行,是因为它在中高步数区间同时拿到了收敛速度和画质。
怎么自己判断,而不是听推荐
方法很朴素,但绝大多数人没做:
- 固定种子、固定提示词、固定步数(比如 25)。
- 只换采样器,每个出一张。
- 把图拼在一起看,而不是一张张单独看。
对比时重点看三处:
- 细节密度:头发丝、布料纹理、远景建筑,哪个更实。
- 结构稳定性:手指、耳部、背景透视有没有崩。
- 色彩倾向:是否过饱和,暗部是否发脏。
你会发现差别没想象中大——多数采样器在 25 步时都能出可用结果。真正拉开差距的是低步数(10 步以下)和高细节需求(SDE 系)。
步数与采样器的匹配
| 采样器 | 低于推荐步数 | 高于推荐步数 |
|---|---|---|
| Euler / Euler a | 结构没定型,糊 | 基本无收益 |
| DPM++ 2M | 15 步以下明显欠采样 | 30 步后趋平 |
| DPM++ SDE | 20 步以下噪点多 | 40 步仍有细微提升 |
| UniPC | 8 步即可用 | 20 步后无收益 |
实践中怎么定
给一套可以直接用的决策:
- 日常出图:DPM++ 2M Karras,25 步,CFG 7。够快够稳。
- 要可复现:Euler 或 DPM++ 2M,别用带 a / SDE 的。
- 追质感:DPM++ SDE Karras,30 步,接受它慢。
- 快迭代:UniPC,12 步,看构图不看细节。
- 实时预览:LCM/Turbo 配套模型,6 步。
定下来之后就别频繁换了。采样器换一次,之前调好的 CFG 和步数经验全部作废——它们是一套组合,不是独立参数。
一个常见的误解
「换采样器能救回一张坏图」——不能。采样器只影响求解路径,不改变模型对提示词的理解。构图错了、主体缺失、风格不对,这些都不是采样器能解决的。
采样器能解决的是:细节够不够、噪点多不多、收敛快不快。仅此而已。
评论 0