A. 加载模型(Load Checkpoint)节点
这个节点通常用于加载绘图模型, 通常 checkpoint
中会包含 MODEL(UNet)
、CLIP
和 VAE
三个组件
MODEL(UNet)
:为对应模型的 UNet 模型, 负责扩散过程中的噪声预测和图像生成,驱动扩散过程CLIP
:这个是文本编码器,因为模型并不能直接理解我们的文本提示词(prompt),所以需要将我们的文本提示词(prompt)编码为向量,转换为模型可以理解的语义向量VAE
:这个是变分自编码器,我们的扩散模型处理的是潜在空间,而我们的图片是像素空间,所以需要将图片转换为潜在空间,然后进行扩散,最后将潜在空间转换为图片
B. 空Latent图像(Empty Latent Image)节点
定义一个潜在空间(Latent Space),它输出到 KSampler 节点,空Latent图像节点构建的是一个 纯噪声的潜在空间
它的具体的作用你可以理解为定义画布尺寸的大小,也就是我们最终生成图片的尺寸
C. CLIP文本编码器(CLIP Text Encoder)节点
用于编码提示词,也就是输入你对画面的要求
- 连接到 KSampler 节点的
Positive
条件输入的为正向提示词(希望在画面中出现的元素) - 连接到 KSampler 节点的
Negative
条件输入的为负向提示词(不希望在画面中出现的元素)
对应的提示词被来自 Load Checkpoint
节点的 CLIP
组件编码为语义向量,然后作为条件输出到 KSampler 节点
D. K 采样器(KSampler)节点
K 采样器 是整个工作流的核心,整个噪声降噪的过程都在这个节点中完成,并最后输出一个潜空间图像
KSampler 节点的参数说明如下
参数名称 | 描述 | 作用 |
---|---|---|
model | 去噪使用的扩散模型 | 决定生成图像的风格与质量 |
positive | 正向提示词条件编码 | 引导生成包含指定元素的内容 |
negative | 负向提示词条件编码 | 抑制生成不期望的内容 |
latent_image | 待去噪的潜在空间图像 | 作为噪声初始化的输入载体 |
seed | 噪声生成的随机种子 | 控制生成结果的随机性 |
control_after_generate | 种子生成后控制模式 | 决定多批次生成时种子的变化规律 |
steps | 去噪迭代步数 | 步数越多细节越精细但耗时增加 |
cfg | 分类器自由引导系数 | 控制提示词约束强度(过高导致过拟合) |
sampler_name | 采样算法名称 | 决定去噪路径的数学方法 |
scheduler | 调度器类型 | 控制噪声衰减速率与步长分配 |
denoise | 降噪强度系数 | 控制添加到潜在空间的噪声强度,0.0保留原始输入特征,1.0为完全的噪声 |
在 KSampler 节点中,潜在空间使用 seed
作为初始化参数构建随机的噪声,语义向量 Positive
和 Negative
会作为条件输入到扩散模型中
然后根据 steps
参数指定的去噪步数,进行去噪,每次去噪会根据 denoise
参数指定的降噪强度系数,对潜在空间进行降噪,并生成新的潜在空间图像
E. VAE 解码(VAE Decode)节点
将 K 采样器(KSampler) 输出的潜在空间图像转换为像素空间图像
F. 保存图像(Save Image)节点
预览并保存从潜空间解码的图像,并保存到本地ComfyUI/output
文件夹下