一、Checkpoint 是什么?
Checkpoint(检查点)通常指一份 完整的 Stable Diffusion 类模型权重文件,常见格式:
-
.safetensors(推荐,安全) -
.ckpt(旧格式)
存放路径:
ComfyUI/models/checkpoints/
在 ComfyUI 中,Load Checkpoint(CheckpointLoaderSimple)读取一个 Checkpoint,并拆成三个部分输出——这就是常说的 「三件套」。
二、三件套总览
┌─────────────────────────────────────┐
│ Checkpoint 文件 │
│ ┌─────────┬─────────┬─────────┐ │
│ │ MODEL │ CLIP │ VAE │ │
│ │ (UNet) │ (文本) │ (编解码)│ │
│ └─────────┴─────────┴─────────┘ │
└─────────────────────────────────────┘
│ │ │
▼ ▼ ▼
KSampler CLIP Text VAE Encode
Encode VAE Decode
|
输出 |
类型色(约) |
角色 |
一句话 |
|---|---|---|---|
|
MODEL |
紫 |
UNet 扩散模型 |
在 latent 里一步步去噪「画」 |
|
CLIP |
黄 |
文本编码器 |
把 Prompt 变成 AI 能懂的条件 |
|
VAE |
红 |
变分自编码器 |
latent ↔ 像素图互转 |
三、MODEL(UNet)详解
3.1 作用
MODEL 是扩散过程的核心:在 潜空间 LATENT 上,根据 CONDITIONING(Prompt 条件) 逐步去噪,生成新的 latent。
3.2 在工作流中的路径
Load Checkpoint → MODEL → KSampler (model)
↓
(可选)Load LoRA → 修改 MODEL
↓
(可选)ControlNet → 修改 MODEL
3.3 注意
-
MODEL 不能直接显示为图片;
-
换 Checkpoint = 换「画风能力、题材、分辨率习惯」的主体;
-
不同代模型(SD1.5 / SDXL / Flux)的 MODEL 不通用,必须整包换 Checkpoint 或使用对应加载节点。
四、CLIP 详解
4.1 作用
CLIP(Contrastive Language-Image Pre-training)负责 文本理解:
把你在 CLIP Text Encode 里写的 Prompt,编码成 CONDITIONING 向量,告诉 MODEL「画什么 / 不要什么」。
4.2 在工作流中的路径
Load Checkpoint → CLIP → CLIP Text Encode (正向) → CONDITIONING → KSampler
→ CLIP Text Encode (负向) → CONDITIONING → KSampler
4.3 SDXL 的双 CLIP
SDXL 类 Checkpoint 内部常含 两个文本编码器(OpenCLIP + CLIP-L)。Load Checkpoint 会把它们打包输出为一个 CLIP 口,ComfyUI 内部处理,用户仍只接两个 Text Encode 即可。
4.4 何时单独 Load CLIP?
|
场景 |
做法 |
|---|---|
|
常规出图 |
Checkpoint 自带 CLIP 即可 |
|
换 CLIP 不改 UNet |
使用 |
|
模型包未含 CLIP |
必须外置 CLIP 加载节点 |
Flux、部分新模型工作流会出现 Checkpoint + 独立 CLIP Loader,第 5-2 节会涉及。
五、VAE 详解
5.1 作用
VAE 在两种表示之间转换:
|
方向 |
节点 |
转换 |
|---|---|---|
|
像素 → latent |
VAE Encode |
IMAGE → LATENT(图生图) |
|
latent → 像素 |
VAE Decode |
LATENT → IMAGE(出图) |
没有 VAE Decode,KSampler 输出的 latent 无法在屏幕上正常观看。
5.2 在工作流中的路径
Load Checkpoint → VAE → VAE Decode (vae)
→ VAE Encode (vae) ← 图生图需要
5.3 何时需要外置 VAE?
Checkpoint 内嵌 VAE,多数情况够用。以下情况考虑 单独 Load VAE:
|
现象 |
可能原因 |
处理 |
|---|---|---|
|
出图 发灰、颜色脏 |
内嵌 VAE 质量差或与模型不匹配 |
换 vae-ft-mse 或模型推荐 VAE |
|
人脸 模糊、糊一片 |
VAE 解码弱 |
SD1.5 常用外置 |
|
官方建议外置 |
模型页说明 |
下载到 |
外置 VAE 路径:
ComfyUI/models/vae/
节点:Load VAE → 接到 VAE Encode / Decode,替代 Checkpoint 的 VAE 线。
5.4 VAE 不匹配的典型表现
-
颜色偏灰、对比度低;
-
细节丢失;
-
与 WebUI 同模型同 Prompt 结果差异大。
排查:换推荐 VAE 试一张对比。
六、Load Checkpoint 节点接线复习
[Load Checkpoint]
MODEL (紫) ──────→ [KSampler]
CLIP (黄) ───────→ [CLIP Text Encode ×2]
VAE (红) ────────→ [VAE Decode] (及 img2img 的 VAE Encode)
三条线缺任何一条,工作流都不完整(除非用其他 Loader 替代该路)。
七、Checkpoint 与 LoRA / ControlNet 的关系
|
组件 |
关系 |
|---|---|
|
LoRA |
挂在 MODEL(有时 CLIP)上,微调风格/角色,不改变 Checkpoint 文件本身 |
|
ControlNet |
额外模型,修改 MODEL 采样行为,文件在 |
|
Checkpoint |
基础「大模型」,LoRA / ControlNet 是附加层 |
加载顺序概念:
Checkpoint → (LoRA) → (ControlNet Apply) → KSampler
八、文件与目录对照
|
内容 |
目录 |
|---|---|
|
Checkpoint |
|
|
VAE |
|
|
CLIP(独立) |
|
|
LoRA |
|
刷新 ComfyUI 或重启后,下拉列表才会出现新文件。
九、常见问题
|
问题 |
处理 |
|---|---|
|
下拉没有模型 |
确认路径、后缀 |
|
只有 MODEL 没有 CLIP/VAE 口 |
用了非标准 Loader;换 |
|
换 Checkpoint 后全崩 |
分辨率 / Prompt / 节点链要匹配新模型(SD1.5 vs SDXL) |
|
图灰 |
外置 VAE |