ComfyUI完整实战指南:节点化工作流从入门到精通(2024最新版)
关键词:ComfyUI教程、Stable Diffusion工作流、节点编辑器、AI绘画进阶、ControlNet、高清修复、批量生成、插件扩展
如果你已经使用过 Stable Diffusion WebUI,却总觉得功能受限、难以实现复杂创意,那么 ComfyUI 就是你的下一站。ComfyUI 是一款基于节点化工作流的 Stable Diffusion 图形界面,它让 AI 绘画从"填表单"进化到"搭积木",为专业创作者提供了无限的可能性。
本文将从零开始,带你全面掌握 ComfyUI 的核心技术和实战技巧。
一、ComfyUI vs WebUI:为什么要选择 ComfyUI?
核心区别对比
许多人初次接触 ComfyUI 时会疑惑:WebUI 用得好好的,为什么要切换到 ComfyUI?
| 对比维度 | ComfyUI | SD WebUI |
|---|---|---|
| 操作方式 | 可视化节点连线 | 表单式参数填写 |
| 灵活性 | 极高,任意组合 | 受限于预设功能 |
| 学习曲线 | 陡峭(需理解工作流) | 平缓(即时上手) |
| 性能优化 | 显存占用低,支持缓存 | 显存占用较高 |
| 工作流复用 | 可保存为 JSON 或嵌入图片 | 难以完整复用参数组合 |
| 批量处理 | 原生支持,高度可控 | 基础功能 |
| 适合人群 | 专业创作者、技术爱好者 | 新手、快速出图用户 |
ComfyUI 的核心优势
1. 可视化工作流
ComfyUI 将 Stable Diffusion 的生成过程拆解为一个个节点(加载模型、编码提示词、采样、解码等),你可以像搭乐高一样自由组合这些节点,构建任意复杂的生成流程。
2. 精确控制每个环节
在 WebUI 中,很多中间过程是"黑箱"的。而 ComfyUI 让你能够:
- 单独替换 VAE 模型
- 分阶段控制采样步数
- 多个 LoRA 堆叠并精确调整权重
- 区域化提示词(不同区域不同内容)
3. 工作流分享与复用
ComfyUI 生成的图片会自动嵌入工作流信息。你只需将图片拖入界面,即可完整还原生成时的所有节点和参数。这让技术交流和学习变得极其简单。
4. 性能优化
ComfyUI 采用智能缓存机制,只重新计算变化的节点,大幅提升迭代速度。在显存管理上也更加灵活,支持将模型加载到 CPU 或动态调度。
什么时候使用 ComfyUI?
- 快速尝试和探索:用 WebUI
- 商业级精细创作:用 ComfyUI
- 批量自动化生产:用 ComfyUI
- 学习 SD 原理:用 ComfyUI
二、ComfyUI 安装与环境配置
Windows 系统安装
方法一:便携版(推荐新手)
- 访问 ComfyUI GitHub 发布页:
https://github.com/comfyanonymous/ComfyUI/releases - 下载最新的 Windows 便携版压缩包
- 解压到非中文路径(重要!避免出现编码问题)
- 根据显卡类型双击运行:
- NVIDIA 显卡:
run_nvidia_gpu.bat - AMD 显卡:
run_amd.bat - 无独显:
run_cpu.bat
- NVIDIA 显卡:
- 等待启动完成,浏览器自动打开
http://127.0.0.1:8188
方法二:Git 源码安装(推荐进阶用户)
# 克隆仓库
git clone https://github.com/comfyanonymous/ComfyUI.git
cd ComfyUI
# 创建虚拟环境(推荐)
python -m venv venv
venv\Scripts\activate # Windows
source venv/bin/activate # macOS/Linux
# 安装依赖
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
pip install -r requirements.txt
# 启动
python main.py
目录结构详解
ComfyUI 的核心目录结构如下:
ComfyUI/
├── models/
│ ├── checkpoints/ # Stable Diffusion 主模型(.safetensors/.ckpt)
│ ├── loras/ # LoRA 微调模型
│ ├── vae/ # VAE 解码器
│ ├── controlnet/ # ControlNet 控制模型
│ ├── clip/ # CLIP 文本编码器
│ ├── upscale_models/ # 放大模型(RealESRGAN 等)
│ └── embeddings/ # Textual Inversion 嵌入
├── input/ # 输入图片目录(图生图、ControlNet)
├── output/ # 输出图片保存目录
├── custom_nodes/ # 自定义节点(插件)
└── user/ # 用户数据(工作流等)
模型准备:
ComfyUI 本身不包含 Stable Diffusion 模型,你需要手动下载并放入对应目录:
主模型(必需):下载一个 SD 1.5 或 SDXL 模型放入
models/checkpoints/- 推荐:Realistic Vision V5.1、DreamShaper 8、Anything V5
- 来源:CivitAI、HuggingFace
VAE(可选但推荐):放入
models/vae/- 推荐:vae-ft-mse-840000-ema-pruned
LoRA(可选):放入
models/loras/
三、界面介绍与基础操作
主界面布局
ComfyUI 的界面简洁高效:
┌─────────────────────────────────────────────────┐
│ 顶部菜单:Queue Prompt | Clear | Settings │
├─────────────────────────────────────────────────┤
│ │
│ 节点画布区域 │
│ (拖动、缩放、连接节点) │
│ │
├─────────────────────────────────────────────────┤
│ 右侧面板:Queue 队列 | History 历史 │
└─────────────────────────────────────────────────┘
核心操作指南
添加节点:
- 在画布空白处右键 → 弹出节点菜单
- 导航到对应分类选择节点(如
Add Node → loaders → Load Checkpoint)
连接节点:
- 从节点的输出端口(右侧圆点)拖动到另一节点的输入端口(左侧圆点)
- 端口颜色匹配时才能连接(如 MODEL → MODEL、IMAGE → IMAGE)
删除连接:
- 按住
Ctrl键,拖动连接线即可断开 - 或者直接在输入端口上拖出新连接会自动替换
删除节点:
- 选中节点后按
Delete键 - 或右键节点 →
Remove
节点参数调整:
- 直接在节点上修改参数值
- 某些节点支持鼠标滚轮快速调整
画布导航:
- 鼠标中键拖动:移动画布
- 鼠标滚轮:缩放画布
- Ctrl + Home:重置视图
四、第一个工作流:文生图完整流程
让我们从最基础的文生图工作流开始,理解 ComfyUI 的运作原理。
核心节点与数据流
一个标准的文生图工作流包含以下节点:
Load Checkpoint → CLIP Text Encode → KSampler → VAE Decode → Save Image
详细搭建步骤
步骤 1:加载模型(Load Checkpoint)
右键 → Add Node → loaders → Load Checkpoint
这个节点负责加载 Stable Diffusion 主模型,输出三个关键组件:
- MODEL:神经网络模型(用于图像生成)
- CLIP:文本编码器(理解提示词)
- VAE:图像解码器(将潜空间转为可见图像)
参数设置:
ckpt_name:选择你下载的模型,如realisticVisionV51.safetensors
步骤 2:编码提示词(CLIP Text Encode)
添加两个 CLIP Text Encode 节点:
右键 → Add Node → conditioning → CLIP Text Encode (Prompt)
正向提示词节点(描述想要的内容):
a beautiful Asian woman, professional photography,
natural lighting, depth of field, bokeh background,
8k uhd, high quality, film grain
负向提示词节点(排除不想要的内容):
(worst quality:2), (low quality:2), (normal quality:2),
lowres, bad anatomy, bad hands, text, watermark,
blurry, extra fingers, mutated hands
连接:
- 将
Load Checkpoint的 CLIP 输出分别连接到两个 CLIP Text Encode 节点的 CLIP 输入
步骤 3:创建空白潜空间(Empty Latent Image)
右键 → Add Node → latent → Empty Latent Image
这个节点创建初始的噪声图,是生成的起点。
参数设置:
width:512(SD 1.5)或 1024(SDXL)height:768 或 1024batch_size:1(一次生成几张图)
重要提示:分辨率必须是 64 的倍数。SD 1.5 推荐 512×768,SDXL 推荐 1024×1024。
步骤 4:核心采样器(KSampler)
右键 → Add Node → sampling → KSampler
这是整个工作流的核心,负责迭代生成图像。
参数详解:
- seed:随机种子(-1 表示随机,固定值可复现结果)
- steps:采样步数,一般 20-30 步
- 步数越多越精细,但速度越慢
- 推荐:20 步(快速预览)、30 步(正式出图)
- cfg:提示词相关性,范围 1-20
- 值越高越严格遵循提示词,但可能过曝
- 推荐:7-11
- sampler_name:采样器算法
- 推荐:
DPM++ 2M Karras(质量速度平衡) - 其他:
Euler a(创意多样)、DPM++ SDE Karras(细节丰富)
- 推荐:
- scheduler:调度器
- 推荐:
karras(更平滑)
- 推荐:
- denoise:降噪强度,范围 0-1
- 文生图:1.0(完全生成)
- 图生图:0.5-0.8(保留原图结构)
连接:
Load Checkpoint的 MODEL → KSampler 的 model- 正向 CLIP Text Encode 的 CONDITIONING → KSampler 的 positive
- 负向 CLIP Text Encode 的 CONDITIONING → KSampler 的 negative
Empty Latent Image的 LATENT → KSampler 的 latent_image
步骤 5:解码为图像(VAE Decode)
右键 → Add Node → latent → VAE Decode
KSampler 输出的是潜空间数据(人眼不可见),需要 VAE 解码为可见图像。
连接:
Load Checkpoint的 VAE → VAE Decode 的 vae- KSampler 的 LATENT → VAE Decode 的 samples
步骤 6:保存图像(Save Image)
右键 → Add Node → image → Save Image
连接:
- VAE Decode 的 IMAGE → Save Image 的 images
参数:
filename_prefix:文件名前缀,如ComfyUI- 图片保存在
ComfyUI/output/目录
步骤 7:运行生成
点击右上角的 Queue Prompt 按钮,等待生成完成。
生成进度会在右侧 Queue 面板显示,完成后图片显示在 Save Image 节点上。
五、核心节点深度解析
Loader 节点(加载器类)
1. Load Checkpoint
最常用的节点,一次性加载 MODEL、CLIP、VAE 三个组件。
技巧:
- 如果模型自带的 VAE 质量不佳,可以用
Load VAE节点单独加载更好的 VAE 替换 - SDXL 模型通常体积更大(6-7GB),加载时间更长
2. Load LoRA
用于加载 LoRA 微调模型,可以在不改变主模型的情况下增加风格或特征。
输入:
model:来自 Load Checkpoint 或上一个 Load LoRAclip:同上
参数:
lora_name:选择 LoRA 文件strength_model:模型权重(0-1),推荐 0.6-0.8strength_clip:CLIP 权重(0-1),一般与 model 一致
堆叠多个 LoRA:
Load Checkpoint
→ Load LoRA 1(韩系写真风格,0.7)
→ Load LoRA 2(胶片颗粒质感,0.5)
→ CLIP Text Encode
3. Load VAE
单独加载 VAE 解码器,用于替换 Checkpoint 自带的 VAE。
使用场景:
- 官方 Checkpoint 的 VAE 往往质量一般
- 下载
vae-ft-mse-840000-ema-pruned.safetensors可显著提升色彩和细节
Conditioning 节点(条件控制类)
1. CLIP Text Encode (Prompt)
将自然语言提示词转换为 AI 理解的向量表示。
提示词技巧:
- 正向提示词:描述画面内容、风格、质量
- 结构:主体 + 细节 + 风格 + 质量词
- 示例:
a professional portrait, natural lighting, depth of field, 8k uhd
- 负向提示词:排除不想要的元素
- 常用:
worst quality, low quality, bad anatomy, blurry, watermark
- 常用:
权重控制:
(keyword:1.2):增强权重 20%(keyword:0.8):降低权重 20%((keyword)):等同于(keyword:1.1)
2. Conditioning (Combine)
合并多个 Conditioning,用于复杂提示词组合。
使用场景:
- 组合不同风格的提示词
- 多个 ControlNet 条件叠加
3. Conditioning (Set Area)
区域化提示词,让画面不同区域生成不同内容。
示例:上半部分天空,下半部分草地
Conditioning (Set Area) - 天空
- area: (0, 0, 512, 256) # x, y, width, height
- prompt: "blue sky, white clouds"
Conditioning (Set Area) - 草地
- area: (0, 256, 512, 256)
- prompt: "green grass field, flowers"
→ Conditioning (Combine) → KSampler
Sampling 节点(采样器类)
1. KSampler
核心采样节点,负责迭代生成图像。
参数深度解析:
seed(随机种子)
-1:每次生成随机- 固定值(如
123456):可复现完全相同的结果 - 用途:找到满意的结果后固定 seed,再微调其他参数
steps(采样步数)
- 10-15 步:快速预览
- 20-25 步:常规出图
- 30-40 步:精细创作
- 超过 50 步收益递减
cfg(提示词相关性)
- 1-5:AI 自由发挥,创意性强但可能偏离提示词
- 7-11:平衡(推荐)
- 12-20:严格遵循提示词,但可能过饱和、过曝
sampler_name(采样器)
DPM++ 2M Karras:速度快、质量高,万金油选择Euler a:创意多样,适合艺术创作DPM++ SDE Karras:细节丰富,但速度稍慢UniPC:速度最快,15 步即可出图
scheduler(调度器)
karras:噪声衰减更平滑(推荐)normal:标准线性exponential:指数衰减
denoise(降噪强度)
- 文生图:固定 1.0
- 图生图:0.5-0.8(值越小越保留原图)
- 高清修复二次重绘:0.3-0.5
2. KSampler Advanced
高级版采样器,新增分段控制功能。
新增参数:
start_at_step:从第几步开始采样end_at_step:到第几步结束return_with_leftover_noise:是否保留残余噪声
使用场景:分阶段采样
KSampler Advanced 1
- steps: 30
- start_at_step: 0
- end_at_step: 20
- return_with_leftover_noise: enable
↓
KSampler Advanced 2
- steps: 30
- start_at_step: 20
- end_at_step: 30
Latent 节点(潜空间类)
1. Empty Latent Image
创建初始噪声图,是文生图的起点。
分辨率建议:
- SD 1.5:512×512、512×768、768×512
- SDXL:1024×1024、1024×1536
- 必须是 64 的倍数
2. VAE Encode
将现有图片编码为潜空间,用于图生图。
工作流:
Load Image → VAE Encode → KSampler (denoise < 1.0)
3. VAE Decode
将潜空间解码为可见图像。
4. Latent Upscale
在潜空间进行放大,比像素空间放大更快、显存占用更低。
参数:
upscale_method:nearest-exact:速度快,适合整数倍放大bilinear:更平滑
width/height:目标分辨率
用途:高清修复(Hires Fix)
Image 节点(图像处理类)
1. Load Image
加载本地图片,用于图生图、ControlNet。
输出:
IMAGE:图像数据MASK:透明度蒙版(如果有)
2. Save Image
保存生成的图片到 output/ 目录。
重要特性:图片会自动嵌入工作流元数据(PNG Info),可直接拖回 ComfyUI 还原工作流。
3. Image Scale
调整图片尺寸。
参数:
upscale_method:lanczos:高质量(推荐)nearest:速度快但质量低bilinear:平滑
ControlNet 节点
1. Load ControlNet Model
加载 ControlNet 控制模型。
常用模型:
control_openpose:姿态控制control_canny:边缘检测control_depth:深度图控制control_lineart:线稿上色control_tile:细节增强
2. Apply ControlNet
将 ControlNet 应用到 Conditioning。
参数:
image:参考图(如姿态图、线稿)strength:控制强度(0-1)- 0.5-0.7:保留原图结构,允许创意
- 0.8-1.0:严格遵循参考图
六、高级工作流实战
工作流 1:ControlNet 姿态控制
应用场景:根据参考人物姿态生成新角色
完整流程:
1. Load Image (上传参考人物照片)
↓
2. DWOpenpose Preprocessor (提取骨骼姿态)
↓
3. Load ControlNet Model (control_openpose)
↓
4. Apply ControlNet
- image: 骨骼图
- strength: 1.0
↓
5. 连接到正常的文生图流程
- Load Checkpoint
- CLIP Text Encode (描述新角色)
- KSampler (使用 ControlNet 增强的 conditioning)
- VAE Decode
- Save Image
提示词示例:
正向:a young warrior in fantasy armor, cinematic lighting, detailed
负向:worst quality, bad anatomy
技巧:
- 如果生成的角色姿态不够准确,提高 ControlNet
strength到 1.2 - 可以多个 ControlNet 叠加(如同时使用 openpose + depth)
工作流 2:高清修复(Hires Fix)
应用场景:先生成小图,再放大重绘,提升细节和分辨率
两阶段流程:
【第一阶段:512×768 生成】
Load Checkpoint
→ CLIP Text Encode
→ Empty Latent (512×768)
→ KSampler 1 (denoise: 1.0, steps: 20)
【放大阶段】
→ Latent Upscale (2x → 1024×1536)
【第二阶段:重绘细化】
→ KSampler 2 (denoise: 0.5, steps: 15)
→ VAE Decode
→ Save Image
参数要点:
- 第一阶段:
denoise: 1.0(完全生成) - 第二阶段:
denoise: 0.4-0.6(值越小越保留原图,越大越重绘)- 0.3-0.4:轻微细化
- 0.5-0.6:明显重绘
- 0.7+:几乎重新生成
显存优化:
- 如果显存不足,可以用
Image Scale在像素空间放大,而不是 Latent Upscale
工作流 3:多 LoRA 风格融合
应用场景:组合多个 LoRA 实现复合风格
节点连接:
Load Checkpoint (基础模型: Realistic Vision)
↓
Load LoRA 1 (韩系写真风格)
- strength_model: 0.7
- strength_clip: 0.7
↓
Load LoRA 2 (胶片颗粒质感)
- strength_model: 0.5
- strength_clip: 0.5
↓
Load LoRA 3 (人物细节增强)
- strength_model: 0.3
- strength_clip: 0.3
↓
CLIP Text Encode → KSampler
权重调试技巧:
- 主风格 LoRA:0.6-0.8
- 辅助质感 LoRA:0.3-0.5
- 细节增强 LoRA:0.2-0.4
- 总权重建议不超过 2.0,避免过拟合
工作流 4:批量生成
应用场景:自动生成多张不同 seed 的图片
方法一:手动队列
1. 设置 KSampler 的 seed 为固定值(如 1000)
2. 点击 Queue Prompt 生成第一张
3. 修改 seed 为 1001
4. 再次点击 Queue Prompt
5. 重复...
方法二:使用批量节点(需安装插件)
安装 ComfyUI-Impact-Pack 或 Efficiency Nodes 后可使用批量节点自动循环。
方法三:修改 batch_size
Empty Latent Image
- batch_size: 4 # 一次生成 4 张不同 seed 的图
注意:batch_size 会成倍增加显存占用。
工作流 5:区域化提示词(分区控制)
应用场景:画面上半部分是天空,下半部分是草地
节点设置:
【天空区域】
Conditioning (Set Area)
- width: 512
- height: 256
- x: 0
- y: 0
- prompt: "blue sky, white clouds, sunset"
【草地区域】
Conditioning (Set Area)
- width: 512
- height: 256
- x: 0
- y: 256
- prompt: "green grass field, wildflowers"
【合并】
Conditioning (Combine)
- conditioning_1: 天空
- conditioning_2: 草地
↓
KSampler
坐标系说明:
- 原点 (0, 0) 在左上角
- x 向右增加,y 向下增加
七、必装插件与扩展
ComfyUI Manager(必装)
功能:
- 一键安装和更新插件
- 自动检测缺失节点并提示安装
- 管理自定义节点
安装方法:
cd ComfyUI/custom_nodes
git clone https://github.com/ltdrdata/ComfyUI-Manager.git
# 重启 ComfyUI
使用方法:
重启后,界面右下角会出现 Manager 按钮:
- 点击 Manager → Install Custom Nodes
- 搜索插件名称
- 点击 Install
- 重启 ComfyUI 生效
推荐插件列表
1. ComfyUI-ControlNet-Preprocessors
包含所有 ControlNet 预处理器:
- OpenPose(姿态提取)
- Canny(边缘检测)
- Depth(深度图)
- Lineart(线稿提取)
- Normal Map(法线贴图)
2. ComfyUI-Impact-Pack
高级功能包:
- FaceDetailer:自动检测面部并高清重绘
- UltralyticsDetectorProvider:目标检测(人物、物体)
- SAM Model:智能分割
FaceDetailer 使用示例:
KSampler(生成初图)
→ VAE Decode
→ FaceDetailer
- det_model: face_yolov8m
- guide_size: 512
- denoise: 0.35
→ Save Image
效果:面部细节显著提升,告别"糊脸"。
3. ComfyUI-AnimateDiff-Evolved
视频生成插件:
- 文生视频
- 图生视频
- 帧间插值
4. ComfyUI-VideoHelperSuite
视频处理工具:
- 视频转帧序列
- 帧序列合成视频
- 批量处理帧
5. Efficiency Nodes for ComfyUI
效率增强插件:
- 一体化节点(集成多个常用节点)
- 预设管理
- 简化工作流
6. ComfyUI-Custom-Scripts
脚本增强:
- 自动保存工作流
- 快捷键自定义
- 界面优化
八、工作流保存、加载与分享
保存工作流
方法一:保存为 JSON
- 搭建完成工作流后,点击菜单栏
Save - 选择保存位置,命名如
portrait_workflow.json - JSON 文件包含所有节点和连接信息
方法二:嵌入图片(推荐)
ComfyUI 生成的图片会自动在 PNG 元数据中嵌入完整工作流信息。
查看方法:
- 在 ComfyUI 中将图片拖入画布,自动加载工作流
- 或用文本编辑器打开 PNG 文件,搜索
workflow
加载工作流
方法一:Load 按钮
菜单栏 → Load → 选择 JSON 文件
方法二:拖入图片(最便捷)
将包含工作流的图片直接拖入 ComfyUI 画布,自动识别并加载所有节点。
注意:
- 如果提示"缺失节点",用 ComfyUI Manager 安装对应插件
- 如果缺失模型(如特定 LoRA),会显示红色警告,需手动下载模型
工作流分享资源
1. OpenArt Workflows
网址:https://openart.ai/workflows
- 海量社区工作流
- 按分类浏览(人像、风景、动漫、ControlNet)
- 直接下载 JSON 或图片
2. CivitAI
网址:https://civitai.com
- 搜索
ComfyUI workflow - 通常与模型一起分享
- 查看示例图的元数据获取工作流
3. GitHub 仓库
搜索:ComfyUI workflow collection
推荐仓库:
comfyanonymous/ComfyUI_examples- 各种主题的工作流合集
分享自己的工作流
最佳实践:
- 测试稳定性:确保工作流在不同参数下都能正常运行
- 添加注释:使用
Add Node → utils → Note节点添加说明 - 生成示例图:运行工作流生成高质量示例(工作流会自动嵌入)
- 编写文档:说明用途、参数建议、所需模型
- 上传平台:
- CivitAI:创建资源页面
- GitHub:开源分享
- 个人博客:详细教程
九、性能优化与问题排查
显存优化
1. VRAM 管理模式
点击 Settings → VRAM Management:
- auto:自动管理(推荐)
- cpu:模型加载到 CPU(省显存,速度慢)
- gpu:全部加载到 GPU(速度快,显存占用高)
- highvram:预加载更多到 GPU(显存充足时使用)
- normalvram:正常模式(8GB 显存推荐)
- lowvram:低显存模式(6GB 以下)
2. 降低分辨率
- SD 1.5:512×512 / 512×768(显存需求约 4-6GB)
- SDXL:1024×1024(显存需求约 8-10GB)
3. 减少 batch_size
Empty Latent Image 的 batch_size 改为 1。
4. 使用量化模型
- fp16 模型比 fp32 省一半显存
- fp8 模型更小但质量略降
速度优化
1. 选择快速采样器
UniPC:15 步即可出图DPM++ 2M:20 步高质量
2. 减少采样步数
20 步已足够大部分场景,超过 30 步收益递减。
3. 启用 xFormers
安装 xFormers 可显著加速(适用于 NVIDIA 显卡):
pip install xformers
4. 利用节点缓存
ComfyUI 会缓存未改变的节点输出。如果只修改提示词,模型加载、VAE 解码等环节会跳过。
常见问题排查
问题 1:节点显示红色/黄色
原因:
- 红色:缺少依赖或模型
- 黄色:参数警告
解决:
- 查看控制台错误信息
- 使用 ComfyUI Manager →
Install Missing Nodes - 检查
models/目录是否有所需模型
问题 2:生成黑图或噪点图
原因:
- VAE 损坏或不匹配
- 提示词冲突
- CFG 值过高
解决:
- 尝试单独加载
vae-ft-mse-840000-ema-pruned.safetensors - 简化提示词测试
- 降低 CFG 到 7
问题 3:显存不足(Out of Memory)
解决方案:
- Settings → VRAM →
lowvram - 降低分辨率(1024 → 512)
batch_size改为 1- 关闭其他占用显存的程序(浏览器、游戏)
问题 4:生成速度非常慢
排查:
- 检查是否在用 CPU 生成(应显示 CUDA/GPU)
- 确认安装了 CUDA 版本的 PyTorch
- 减少采样步数
- 使用更快的采样器
问题 5:工作流无法加载
原因:
- 缺少自定义节点(插件)
- 模型文件缺失
解决:
- 查看错误提示,记录缺失节点名称
- 使用 Manager 搜索并安装对应插件
- 下载缺失的模型到对应目录
十、实战项目:商业人像工作流
让我们结合所学知识,构建一个商业级人像生成工作流。
功能需求
- 文生图生成高质量人像
- 自动面部细节增强
- 高清放大到 1024×1536
- 支持批量生成
完整节点流程
【第一阶段:基础生成】
Load Checkpoint (Realistic Vision V5.1)
↓
Load LoRA (韩系写真风格, 0.7)
↓
CLIP Text Encode (Prompt)
正向: professional portrait, natural lighting, depth of field, 8k
负向: worst quality, low quality, bad anatomy
↓
Empty Latent Image (512×768, batch_size: 1)
↓
KSampler
- steps: 25
- cfg: 8
- sampler: DPM++ 2M Karras
- denoise: 1.0
【第二阶段:高清修复】
↓
Latent Upscale (2x → 1024×1536)
↓
KSampler
- steps: 15
- denoise: 0.45
【第三阶段:面部细化】
↓
VAE Decode
↓
FaceDetailer
- det_model: face_yolov8m
- guide_size: 512
- denoise: 0.35
↓
Save Image (filename_prefix: "commercial_portrait")
参数调优建议
提示词模板:
正向:
professional portrait of a [age] [gender],
[expression], [clothing style],
natural lighting, soft shadows, depth of field,
bokeh background, cinematic, 8k uhd, high quality
负向:
(worst quality:1.4), (low quality:1.4), (normal quality:1.2),
lowres, bad anatomy, bad hands, bad face,
blurry, out of focus, watermark, text,
(multiple people:1.3), (deformed:1.3)
快速变量替换:
[age]:young / middle-aged[gender]:woman / man[expression]:smiling / serious / confident[clothing style]:business suit / casual wear / elegant dress
保存与复用
- 测试工作流,生成满意结果
- 菜单栏 →
Save→ 保存为commercial_portrait_workflow.json - 生成的图片会自动包含工作流,可分享给团队
十一、进阶技巧与最佳实践
节点组织技巧
1. 使用 Group 折叠节点
选中多个相关节点 → 右键 → Convert to Group
效果:将复杂的节点组折叠为一个单元,简化画布。
2. 颜色标记
选中节点 → 右键 → Colors → 选择颜色
建议:
- 红色:加载器(Checkpoint、LoRA)
- 蓝色:采样器
- 绿色:图像处理
- 黄色:ControlNet
3. 添加注释
右键 → Add Node → utils → Note
在复杂工作流中标注每个模块的作用。
提示词优化策略
1. 结构化提示词
[主体] + [动作/表情] + [环境/背景] + [光线] + [风格] + [质量词]
示例:
a young woman, smiling, in a coffee shop,
natural window light, cinematic photography, 8k uhd
2. 权重语法
(keyword:1.2):增强(keyword:0.8):减弱[keyword]:在某些采样步减弱{keyword}:在某些采样步增强
3. 负向提示词模板
基础版:
worst quality, low quality, blurry
进阶版:
(worst quality:1.4), (low quality:1.4), (normal quality:1.2),
lowres, bad anatomy, bad hands, text, error,
missing fingers, extra digit, fewer digits,
cropped, watermark, username, signature
人像专用:
(worst quality:1.4), (low quality:1.4),
bad anatomy, bad hands, bad face, bad eyes,
(ugly:1.2), (deformed:1.2), (disfigured:1.2),
blurry, out of focus, (multiple people:1.3)
工作流设计原则
1. 模块化设计
将工作流划分为独立模块:
- 模型加载模块
- 提示词编码模块
- 采样生成模块
- 后处理模块
每个模块可独立调试和替换。
2. 参数外露
将常调整的参数转为独立节点(Primitive),方便批量修改。
3. 版本控制
重要工作流保存多个版本:
portrait_v1.json:基础版portrait_v2_hires.json:增加高清修复portrait_v3_face.json:增加面部细化
十二、总结与学习路径
ComfyUI 核心优势回顾
- 可视化节点流:像搭积木一样构建 AI 绘画流程
- 精确控制:每个环节可单独调整和优化
- 高性能:智能缓存机制,显存占用低
- 工作流复用:保存为 JSON 或嵌入图片,轻松分享
- 强大扩展性:丰富的插件生态,功能无限扩展
推荐学习路径
基础入门
- 安装配置 ComfyUI
- 熟悉界面和基础操作
- 掌握文生图标准工作流
- 理解核心节点(Checkpoint、CLIP、KSampler、VAE)
进阶应用
- 学习 LoRA 堆叠
- 掌握高清修复流程
- 尝试 ControlNet(OpenPose、Canny)
- 探索区域化提示词
插件与优化
- 安装 ComfyUI Manager
- 使用 FaceDetailer 面部增强
- 学习批量生成
- 优化性能和显存管理
实战项目
- 构建商业级工作流
- 学习工作流分享
- 探索社区资源(OpenArt、CivitAI)
- 自定义节点开发(可选)
持续学习资源
官方资源:
- GitHub:
https://github.com/comfyanonymous/ComfyUI - 官方示例:
https://github.com/comfyanonymous/ComfyUI_examples
社区资源:
- OpenArt 工作流库:
https://openart.ai/workflows - CivitAI 模型与工作流:
https://civitai.com - ComfyUI Manager:
https://github.com/ltdrdata/ComfyUI-Manager
插件开发:
- ComfyUI 插件开发文档:查看官方 Wiki
ComfyUI 的学习曲线虽然陡峭,但一旦掌握,它将成为你 AI 绘画创作的最强大工具。通过节点化工作流,你可以实现任何创意,构建专属的自动化流水线。
从今天开始,打开 ComfyUI,搭建你的第一个工作流,探索 AI 艺术创作的无限可能。