
这是ComfyUI实战指南的最后一篇。
前六篇讲了基础概念、安装、工作流结构、电影海报实战、模型管理、自定义节点。这篇把所有东西串起来,从零搭一套能用的自动化工作流——不是演示,是真的能跑、能复用、能改的那种。
目标:搭一套"图生图精修"工作流。你丢进去一张粗糙的草图,它自动放大、精修、调色,输出一张能用的成品图。
很多人打开ComfyUI就往里拽节点,拽了一堆发现不知道怎么连。正确的顺序是:先在纸上把流程画出来,再往ComfyUI里转。
"图生图精修"的逻辑是这样的:
输入图片 → 放大 → 精修(img2img)→ 调色/后处理 → 输出
拆开来看,每一步需要什么节点:
1. 输入图片:Load Image节点
2. 放大:有专门的超分辨率节点(比如ESRGAN或Real-ESRGAN)
3. 精修:KSampler + VAE Decode,用img2img模式重绘
4. 调色/后处理:可以用Color Adjust节点,或者简单的亮度/对比度调整
5. 输出:Save Image节点
画完这张图,再打开ComfyUI往里拽节点,心里就有数了。
打开ComfyUI,按顺序添加节点:
1. Load Image右侧菜单 → image → Load Image。这个节点让你选择一张图片作为输入。先随便选一张测试图。
2. Image Scale(放大)右侧菜单 → image_upscale → Image Scale by。这个节点把图片放大。默认放大2倍,你可以改成3倍或4倍——但要注意,放大倍数越高,显存占用越大,速度越慢。
把Load Image的输出连到Image Scale的输入。
3. Load Checkpoint(加载模型)右侧菜单 → loaders → Load Checkpoint。选一个你之前装好的模型。如果不确定选哪个,用SD1.5的realisticVision就行——这是公认效果比较稳的写实模型。
4. KSampler(核心采样器)右侧菜单 → sampling → KSampler。这是整个工作流的核心节点,负责生成图像。
需要填几个参数:
- seed:随机种子,控制生成结果的随机性。想复现结果,记住这个数字。
- steps:采样步数,一般20-30够用。太高不会更好,只会更慢。
- cfg:提示词引导强度,默认7-8。
- sampler_name 和 scheduler:采样器和调度器。dpmpp_2m + karras 是比较稳的组合。
5. VAE Decode右侧菜单 → latent → VAE Decode。把KSampler输出的潜空间图像解码成可见图像。
6. Save Image右侧菜单 → image → Save Image。输出最终结果。
现在你有6个节点,需要把它们连起来。连接规则:
Load Image → Image Scale → KSampler → VAE Decode → Save Image但KSampler需要模型信息,所以还要连:
Load Checkpoint → KSampler(把model和clip连过去)具体操作:鼠标按住一个节点的输出端口,拖到另一个节点的输入端口,松开。如果端口类型匹配,会自动连上;不匹配的话,ComfyUI不会让你连。
连完之后,检查一下有没有悬空的输入端口——每个节点的必填输入都要有来源,否则运行时会报错。
现在的工作流还是txt2img模式——从零生成图像。我们要改成img2img模式,让模型在原图基础上重绘。
关键节点:KSampler找到KSampler节点,看它的输入端口。有一个叫latent_image的输入——这个就是你要重绘的图像。
现在latent_image是空的(或者连着随机噪声)。我们要把它改成放大后的图像。
怎么把普通图像转成潜空间格式?需要一个中间节点:VAE Encode
右侧菜单 → latent → VAE Encode。这个节点把普通图像编码成潜空间格式。
连接方式:
Image Scale 输出 → VAE Encode 输入(pixels)
Load Checkpoint 的 VAE 输出 → VAE Encode 输入(vae)
VAE Encode 输出 → KSampler 输入(latent_image)
现在KSampler拿到的不是随机噪声,而是你输入图像的潜空间表示。它会在这个基础上重绘。
KSampler需要提示词来指导生成方向。但KSampler不直接接受文字输入,需要通过CLIP Text Encode节点转一下。
1. CLIP Text Encode (Positive)右侧菜单 → conditioning → CLIP Text Encode。在text框里写你的提示词,比如:
high quality, detailed, professional photo, sharp focus, 8k
2. CLIP Text Encode (Negative)
再加一个CLIP Text Encode,写负面提示词:
low quality, blurry, artifacts, noise, bad composition
连接:
Load Checkpoint的clip输出 → 两个CLIP Text Encode的clip输入
CLIP Text Encode (Positive) 输出 → KSampler 的 positive 输入
CLIP Text Encode (Negative) 输出 → KSampler 的 negative 输入
点击右侧的Queue Prompt按钮,运行工作流。
第一次运行可能会报错。常见问题:
报错:CUDA out of memory显存不够。解决方法:
- 降低放大倍数(从4倍改成2倍)
- 减少采样步数(从30改成20)
- 换一个小一点的模型
报错:shape mismatch图像尺寸和模型不匹配。SD1.5模型默认是512×512,如果你输入的图片尺寸太奇怪,可能会报这个错。解决方法:在Image Scale后面加一个Image Resize节点,强制缩放到512的倍数。
报错:missing input某个节点的必填输入没连上。检查所有节点,把悬空的输入补上。
测试通过后,点击右侧的Save按钮,把工作流保存成JSON文件。
下次打开ComfyUI,点击Load,选中这个JSON文件,工作流就回来了——所有节点、连接、参数都原封不动。
现在的工作流已经能跑了,但输出可能还不够精细。可以加一些后处理节点:
1. Color Adjust调整亮度、对比度、饱和度。在VAE Decode和Save Image之间插入。
2. Image Sharpen锐化图像,让细节更清晰。
3. Face Detailer(如果有人脸)专门修复人脸细节的自定义节点。需要额外安装(ComfyUI Manager里搜"Face Detailer")。
- 放大低分辨率图片
- 精修手绘草图
- 给模糊照片做超分辨率重建
- 统一图片风格(通过提示词控制)
七篇写完了。从"ComfyUI是什么"到"搭一套自动化工作流",如果你跟着走了一遍,现在应该能独立用ComfyUI做东西了。
ComfyUI的学习曲线确实陡,但它的上限也确实高——那些看起来很炫的AI绘画视频,大部分都是用ComfyUI或者类似的节点式工具做出来的。
如果还想继续深入,几个方向:
1. 学别人的工作流。ComfyUI社区有大量公开的工作流JSON,下载下来拆开看,是学得最快的方式。
2. 装更多自定义节点。ComfyUI Manager里几百个节点,慢慢淘,总能找到对你有用的。
3. 试不同模型。SDXL、SD3、Flux,每个模型的特性都不一样,适合的场景也不同。
有问题去哪问?ComfyUI的Discord和Reddit都很活跃,中文社区可以搜"ComfyUI交流群"。
祝出图顺利。
评论区