第一次接触ComfyUI时,我被它像电路板一样的界面吓了一跳——密密麻麻的节点和连线,看起来比传统WebUI复杂十倍。但用了两周后,我再也回不去了。这就像从Windows画图板突然切换到Photoshop的感觉:初期学习曲线确实存在,但获得的控制力完全值得。
传统WebUI把生成过程封装成黑箱,你只能调整几个滑块参数。而ComfyUI将Stable Diffusion拆解成20+核心模块,每个模块就像乐高积木。比如生成一张图,你需要手动连接:
这种设计带来三个颠覆性优势:
实测用同样参数生成512x512图片,ComfyUI比WebUI快约15%(RTX 3060测试)。更惊喜的是处理大图时,它的显存优化机制能避免爆显存——虽然超过2048x2048会出现分块拼接痕迹,但比直接报错友好多了。
新手建议直接下载官方整合包(GitHub搜索ComfyUI Releases),解压后重点注意:
models/checkpoints目录extra_model_paths.yaml文件:yaml复制a111:
base_path: "你的WebUI安装路径"
checkpoints: "models/Stable-diffusion"
vae: "models/VAE"
loras: "models/Lora"
启动时双击run_nvidia_gpu.bat,浏览器打开localhost:8188就能看到节点编辑器界面。这里有个实用技巧:按住空格键拖动可以平移画布,鼠标滚轮缩放——后续连接复杂节点时会频繁用到。
我们从一个最简单的文生图流程开始:
点击右侧"Queue Prompt"生成图片,你会立刻理解节点间的数据流动——VAE解码器接收KSampler输出的潜空间图像,将其转换为可视像素。这种直观性正是ComfyUI的魅力所在。
Load Checkpoint节点有个隐藏技巧:双击模型名称输入框可以直接键盘输入搜索,比下拉菜单找模型快得多。输出端的三条线代表:
CLIP Text Encode节点处理提示词时,有个容易踩坑的地方:正向和负向提示需要分别用两个节点处理。高级用法是可以将多个CLIP编码节点输出用Conditioning Combine混合,实现分区域提示控制。
KSampler是整套流程的心脏,几个关键参数:
这里分享一个实测稳定的参数组合:
plaintext复制steps: 25, cfg: 7.5, sampler: DPM++ 2M Karras, denoise: 1.0
Empty Latent Image生成的空白噪声图,其尺寸会影响最终细节量。有个进阶技巧:先用小尺寸(如512x512)生成构图,再用Latent Upscale放大后输入KSampler重绘——这样比直接生成大图更省显存。
VAE Decode节点支持切换不同VAE模型。如果图片出现灰蒙感,可以尝试加载专用的VAE模型(如vae-ft-mse-840000)。
ComfyUI支持同时运行多个ControlNet,比如:
每个ControlNet需要:
实测发现控制强度建议设置在0.3-0.7之间,过高会导致图像僵化。
Load LoRA节点有两个强度参数:
有个实用技巧:将多个LoRA节点串联,通过调整强度比例实现风格混合。例如先加载动漫风格LoRA(强度0.7),再叠加细节增强LoRA(强度0.3)。
复杂工作流容易变得杂乱,推荐三个组织技巧:
对于商业级应用,可以启用Queue Batch功能连续处理多个提示词,配合API调用实现自动化生产。
在extra_model_paths.yaml中添加以下设置可提升加载速度:
yaml复制a111:
configs: "models/Stable-diffusion"
clip_skip: 2
vae_preview: true
显卡性能较弱时,建议:
--xformers)--vae-sliced)图片出现色块/撕裂:
--disable-nan-check参数节点连线错误:
显存不足:
--medvram或--lowvram模式经过三个月深度使用,我的工作流生成时间从最初的45秒优化到现在的19秒(512x512图)。关键是把重复使用的节点组保存为模板,比如高频使用的面部修复流程、背景扩展流程等。这种模块化思维,正是ComfyUI带给AI绘画工作方式的根本性变革。