一句话定义
默认文生图模板只有 6 个节点:加载模型 → 正/负提示词 → 空白潜空间 → KSampler 采样 → VAE 解码 → 保存图像,本页逐节点拆解它的每根线,让你从此"会读"而不只是"会用"。
为什么重要
它是所有工作流的母体:图生图、重绘、放大、ControlNet……全是在这张图上"加节点"。把这 6 个节点吃透,后面一切都是增量。
前置知识
节点与工作流的心智模型:端口、连线与执行、模型文件与目录组织(目录里已有一个 checkpoint 模型)。
核心概念(逐节点)
- Load Checkpoint:下拉选择
models/checkpoints/里的模型;输出 MODEL、CLIP、VAE 三路——一个文件携带三个组件(见 模型文件与目录组织)。 - CLIP Text Encode(正):把你的描述编码成 CONDITIONING;接的是 CLIP 输入。
- CLIP Text Encode(负):编码"不想要什么",同样输出 CONDITIONING。
- Empty Latent Image:生成一张纯噪声潜空间作为起点;参数 width/height(注意 8 的倍数,SD1.5 用 512 家族、SDXL 用 1024 家族)与 batch_size。
- KSampler:核心采样器,输入 MODEL + 正/负条件 + 潜空间,参数(seed、steps、cfg、sampler、scheduler、denoise)详见 KSampler 全参数解剖:seed/steps/cfg/denoise。
- VAE Decode:把去噪完成的潜空间解码成像素图像 → Save Image 落盘到
output/。
原理与机制
三路数据流贯穿全图:
- MODEL 路:模型权重进入 KSampler,负责"去噪计算"本身。
- CLIP 路:正/负文本 → 条件张量,引导去噪方向(机制见 CLIP 与条件编码:文字如何变成方向 与 CFG 与负面引导:引导强度的数学)。
- LATENT 路:噪声起点 → KSampler 迭代去噪 → VAE 解码回像素(机制见 潜空间与 VAE:压缩的图像世界)。
KSampler 内部发生的事:取 seed 生成噪声 → 与初始 latent 混合 → 按步数调用模型逐步去噪,每一步都用正/负条件"拉扯"结果。
公式 / 模型 / 图示
┌──────────────┐ MODEL
Load Checkpoint ────┤ │──────────┐
│ │ CLIP │
└──┬───────────┘ ▼
┌──────────┴──────────┐ ┌──────────┐ LATENT ┌───────────┐ IMAGE ┌────────────┐
│ CLIP Text Encode 正 │───▶│ KSampler │───────▶│VAE Decode │─────▶│ Save Image │
│ CLIP Text Encode 负 │───▶│ │ └───────────┘ └────────────┘
└─────────────────────┘ └────▲──────┘
│ LATENT
┌────────┴────────┐
│ Empty Latent Img │
└──────────────────┘直观类比
做菜:Checkpoint 是"请来一位厨师(MODEL)+他的味觉记忆(CLIP)+装盘手艺(VAE)";正/负提示词是"要什么/不要什么";Empty Latent 是一块大理石坯;KSampler 是厨师反复雕琢;VAE Decode 是把作品从"意念态"还原成"实物"。
实例与案例
跑通三连改(每改一处按 Ctrl+Enter 重新队列):
- 改 prompt:换一句话,观察构图变化;
- 改 seed:同参数不同种子 = 完全不同的图;
- 改分辨率:512→768(SD1.5)大概率出现重复肢体,先埋个伏笔(机制见 故障排查手册:症状→原因→修法 的排障表)。
常见误区
- 没选模型就点运行:Checkpoint 下拉是空的或指向不存在的文件 → 报错,先去 模型文件与目录组织 下载放置。
- 分辨率随便填:SD1.5 生成 1024×1024、SDXL 生成 512×512 都会明显劣化,每个模型有"原生分辨率家族"。
- 负提示词留空以为不能跑:能跑,但默认模型不填负面通常更"脏";具体影响见 CFG 与负面引导:引导强度的数学。
- 以为 SaveImage 节点删了图就没了:没落盘的图像只在内存里,队列结束即丢。
自测题
- Load Checkpoint 的三个输出分别是什么类型?各流向哪里?
- 把 batch_size 改成 4,seed 只有一个,四张图为什么会各不相同?
- 用 SD1.5 模型生成 1024×1024 会发生什么?为什么?
- 正负两条提示词路的"汇合点"在哪个节点?
参考答案
- MODEL→KSampler;CLIP→两个 Text Encode;VAE→VAE Decode。
- batch 内每张使用 seed、seed+1、…连续派生的独立噪声,所以各不相同(可复现性仍成立:重跑同 batch 序列结果一致)。
- 出现重复肢体、构图混乱等劣化——模型在 512 家族分辨率上训练,偏离训练分布就崩。
- KSampler 的 positive 与 negative 两个输入端口。
与其他知识点的关系
- 队列、种子与可复现性 教你管理队列与种子,让这张图可复现、可批量。
- KSampler 全参数解剖:seed/steps/cfg/denoise 逐参数拆 KSampler;扩散模型直觉:从噪声到图像的迭代雕刻 讲它内部发生了什么。
- 高清放大(Upscaling):两条路线与取舍 把这张图改造成放大工作流的第一个实战。
延伸阅读
- 官方入门教程(同款工作流带图):docs.comfy.org/tutorials
前置知识
关联知识点
扩散模型直觉:从噪声到图像的迭代雕刻KSampler 全参数解剖:seed/steps/cfg/denoise提示词工程:权重、结构与负面写法