ComfyUI 是一个基于节点(Node-based)的 Stable Diffusion 图像生成界面,用户通过连接不同功能的节点来构建图像生成流程。以下是 ComfyUI 中一些常用节点及其作用的分类整理:
一、基础模型加载节点
-
Checkpoint Loader(检查点加载器)
- 作用:加载 Stable Diffusion 模型(.ckpt 或 .safetensors 文件),提供基础模型、VAE、CLIP 等组件。
- 输出:模型(MODEL)、CLIP(用于文本编码)、VAE(用于图像编码/解码)。
-
VAE Loader(VAE 加载器)
- 作用:单独加载自定义 VAE 模型(如 animevae、vae-ft-mse 等),用于改善图像细节或风格。
- 通常连接到 KSampler 的 VAE 输入或图像解码节点。
-
Lora Loader(LoRA 加载器)
- 作用:加载 LoRA 微调模型,用于风格、角色或细节增强。
- 需连接到基础模型(MODEL)和 CLIP,输出增强后的模型和 CLIP。
-
ControlNet Loader(ControlNet 加载器)
- 作用:加载 ControlNet 模型(如 openpose、canny、depth 等),用于条件控制生成。
- 需配合预处理器(如 Canny、OpenPose)使用。
二、文本与提示词节点
-
CLIP Text Encode(CLIP 文本编码器)
- 作用:将正向提示词(positive prompt)和负向提示词(negative prompt)编码为模型可理解的嵌入向量。
- 通常有两个实例:一个用于正向提示,一个用于负向提示。
-
Text Multiline(多行文本输入)
- 作用:方便输入多行提示词,可连接到 CLIP Text Encode 节点。
三、采样与生成控制节点
-
KSampler(核心采样器)
- 作用:执行图像生成的核心节点,控制采样步骤、CFG、采样器类型(如 Euler、DPM++)、种子等。
- 输入:模型、正/负提示词嵌入、潜在图像(latent)。
- 输出:生成的潜在图像(latent image)。
-
Empty Latent Image(空潜在图像)
- 作用:创建指定尺寸(宽/高/批次)的空白潜在空间图像,作为生成起点。
- 通常连接到 KSampler 的 latent 输入。
-
VAE Decode(VAE 解码器)
- 作用:将潜在图像(latent)解码为可视化的像素图像(IMAGE)。
- 连接在 KSampler 之后,用于输出最终图像。
-
VAE Encode(VAE 编码器)
- 作用:将已有图像编码为潜在图像,用于图生图(img2img)或局部重绘。
- 输入:IMAGE,输出:LATENT。
四、图像输入与处理节点
-
Load Image(加载图像)
- 作用:从本地加载图像,用于图生图、ControlNet 输入或参考图。
- 输出:IMAGE 和 MASK(如果图像含透明通道)。
-
Image Scale / Crop / Resize 等
- 作用:调整图像尺寸,适配模型输入要求(如 512x512、768x768 等)。
-
Image Scale by(按比例缩放)
- 作用:按比例缩放图像,避免拉伸变形。
五、ControlNet 相关节点
-
预处理器节点(如 Canny、OpenPose、Depth 等)
- 作用:对输入图像进行预处理,生成 ControlNet 所需的条件图(如边缘图、姿态图、深度图)。
- 示例:Canny Edge Preprocessor、OpenPose Preprocessor。
-
ControlNet Apply(应用 ControlNet)
- 作用:将预处理后的条件图与 ControlNet 模型结合,输入到 KSampler 中进行条件生成。
六、高级功能节点
-
Latent Upscale(潜在空间上采样)
- 作用:在潜在空间中放大图像(如 2x),再进行细节生成,实现高清放大。
-
Upscale Model Loader + Image Upscale With Model
- 作用:使用 ESRGAN、SwinIR 等超分模型对最终图像进行后期放大。
-
Conditioning Combine / Set Area / Set Mask
- 作用:组合多个提示条件、设置局部提示区域或遮罩,实现局部重绘或区域控制。
-
Save Image(保存图像)
- 作用:将生成的图像保存到本地,可设置文件名、路径、格式等。
-
Preview Image(预览图像)
- 作用:在 UI 中实时预览图像,便于调试流程。
七、实用工具节点
- Primitive Nodes(如 Int、Float、String):用于动态输入数值或文本。
- Reroute(重路由节点):整理连线,使流程图更清晰。
- Note(注释节点):添加说明文字,便于协作或记录。
典型工作流示例(文生图):
Checkpoint Loader → CLIP Text Encode(正/负)
↓
Empty Latent Image → KSampler ← CLIP Text Encode
↓
VAE Decode → Save Image
这些节点组合灵活,可实现文生图(txt2img)、图生图(img2img)、ControlNet 控制生成、高清修复、局部重绘等多种功能。掌握常用节点是高效使用 ComfyUI 的关键。