打开 ComfyUI 的节点菜单,按右键弹出的列表能拉好几屏。从图像加载到模型采样,从条件控制到数学运算,光看名字就有几十种。初学者看到这个列表的第一反应通常是“我是不是得把这些都搞清楚才能开始做东西”。
不用。ComfyUI 的节点虽然多,但大部分是特定场景下才用到的专业工具。日常创作中真正频繁出现的节点就那么十几个,把它们的逻辑搞清楚,就能覆盖大多数任务。剩下的可以等到有具体需求时再学。
优先要弄懂的:主链条上的核心节点
不管做什么类型的工作流,这几个节点是基础中的基础,先理解它们之间的关系,后面加什么辅助节点都好说。
Load Checkpoint
这是整个工作流的起点。它负责加载模型文件,输出三个东西:模型本身、CLIP 文本编码器、VAE 解码器。这三个输出分别对应后续流程中的不同功能——模型用来去噪生成,CLIP 用来理解提示词,VAE 用来在潜空间和像素空间之间转换。
理解这个节点的关键是:它决定了这个工作流“能用什么模型” 。模型选错了,后面再怎么调都是白费力气。
CLIP Text Encode
提示词编码节点,正向和负向各需要一个。它的输入是文本,输出是条件向量(conditioning),这个向量会被送到 KSampler 里影响生成方向。
初学者需要理解的是:正向提示词和负向提示词不是“想写什么就写什么”,它们是有对应关系的。 正向引导模型往某个方向走,负向引导它远离某个方向。两者配合使用,才能得到稳定的结果。
KSampler
这是整个工作流的核心枢纽。步数、CFG Scale、采样器选择、种子、降噪强度,全都在这里设定。它的输入包括:模型、正向条件、负向条件、潜空间图像。输出是一个处理后的潜空间图像。
理解 KSampler 的关键在于:它是“生成过程”本身。 前面所有节点都是在为这一步准备素材,后面所有节点都是在处理这一步的产出。参数怎么调、效果怎么变,本质都是在控制这个节点内部的运算方式。
Empty Latent Image
文生图的潜空间起点。它输出一张纯噪声的潜空间图像,尺寸由你设定。这个节点很简单,但有一个点需要注意:宽高必须是 8 的倍数,有些模型还要求是 64 的倍数。设错了会报 Shape mismatch 错误。
VAE Decode
把潜空间图像转换成可视图像。KSampler 输出的东西人眼是看不懂的,需要经过 VAE Decode 才能变成一张正常的图片。
初学者常犯的一个错误是:在 KSampler 后面直接接 Save Image,忘了中间要加 VAE Decode。结果保存出来的是一堆噪点或者花屏,以为是模型出了问题。
Save Image / Preview Image
输出节点,负责保存或预览生成的图片。简单,但建议养成一个好习惯:用 Preview Image 在界面上看效果,用 Save Image 做最终输出。 预览不会保存文件,省硬盘空间,跑测试的时候更高效。
把这六个节点之间的连线逻辑搞清楚——谁输出什么、谁输入什么、顺序是什么——主链条就通了。剩下的事情是在这个基础上添加控制。
其次值得优先理解的:常用扩展节点
主链条跑通之后,日常创作中会频繁用到的几类节点,建议尽早熟悉。
LoRA Loader
LoRA 是微调模型最常用的方式。LoRA Loader 通常插在 Load Checkpoint 和 CLIP Text Encode 之间,它接收模型和 CLIP,输出被 LoRA 修改过的模型和 CLIP。
理解这个节点的关键是:LoRA 加载的位置决定了它影响的范围。 如果 LoRA 加载在 CLIP 编码之后,它只影响模型生成阶段,不影响提示词理解阶段。如果加载在 CLIP 之前,两者都影响。大多数情况下加载在之前,因为训练 LoRA 时通常是一起训练的。
ControlNet Apply
ControlNet 的应用节点。它接收控制图像、控制类型、强度参数,输出一个条件向量,这个向量会被送到 KSampler 或条件合并节点。
初学者需要理解的是:ControlNet 不是直接改画面的工具,它是在“引导”生成方向。 强度设太高会限制模型的自由发挥,设太低则起不到控制作用。中间值通常是最好的。
Image Load / Image Save
图生图、ControlNet 参考图、IP-Adapter 都需要加载图像。Image Load 节点负责把外部图像读入工作流,Image Save 负责把处理后的图像写出去。
Conditioning Combine / Conditioning Set Area
当需要控制画面中不同区域的生成内容时,这两个节点会派上用场。比如指定画面左边画什么、右边画什么,或者让某个提示词只在画面特定范围内生效。
初学者可以先理解它们的逻辑——一个是合并多组条件,一个是限定条件的生效区域——不需要立刻掌握所有参数细节。等有实际需求时再深入研究。
可以暂缓研究的:专业场景节点
下面这些节点在日常创作中出现频率不高,初学者不需要一开始就花时间研究。遇到具体任务时再学,效率更高。
|
节点类型 |
典型节点 |
使用场景 |
|
图像预处理 |
Canny、Depth、OpenPose 预处理 |
做 ControlNet 控制时才需要 |
|
数学运算 |
各种 Math 节点 |
高级工作流做动态参数计算时用 |
|
文本处理 |
Text Concatenate、Text Replace |
批量生成时管理提示词用 |
|
潜空间操作 |
Latent Blend、Latent Composite |
高级图像合成时用 |
|
模型合并 |
Model Merge |
需要融合多个模型时用 |
|
视频处理 |
Video Combine、Frame Load |
做视频工作流时才需要 |
这些节点不是不重要,而是它们是为特定问题设计的工具。在你没有遇到那个特定问题之前,学了也记不住,记住了也用不上。
一个实际的判断标准
如果不知道该不该学一个节点,可以问自己一个问题:“这个节点解决的是什么问题?我手头有这个问题吗?”
如果答案是“有”,那就去学。如果没有,先放着。ComfyUI 的学习不是“把所有节点学完再用”,而是“用着用着就学会了”。
我自己在刚学 ComfyUI 的时候,花过不少时间研究各种 ControlNet 预处理器的区别、各种 Upscale 算法的效果对比、各种条件合并节点的参数含义。当时觉得“多学一点总没错”。但真正开始做项目之后,用得最多的还是那十几个基础节点,很多当时学的“高级知识”因为长期不用,已经忘得差不多了。
真正有效的学习方式是:遇到一个具体问题,去找对应的节点解决它。 解决的问题多了,节点自然就熟悉了。不需要刻意“学完所有节点再开始做东西”,那个阶段永远不会到来。