工作流基础 #
什么是工作流? #
工作流概念 #
工作流是由多个节点连接而成的图像生成流程,定义了从输入到输出的完整处理路径。
text
┌─────────────────────────────────────────────────────────────┐
│ 工作流结构示意 │
├─────────────────────────────────────────────────────────────┤
│ │
│ 输入层 处理层 输出层 │
│ │
│ ┌────────┐ ┌────────┐ ┌────────┐ │
│ │ 模型 │──→│ 编码 │──┐ │ │ │
│ └────────┘ └────────┘ │ │ │ │
│ │ │ │ │
│ ┌────────┐ ┌────────┐ ├──→│ 采样 │──→ ┌────────┐ │
│ │ 提示词 │──→│ 条件 │──┘ │ │ │ 图像 │ │
│ └────────┘ └────────┘ │ │ │ 输出 │ │
│ │ │ └────────┘ │
│ ┌────────┐ ┌────────┐ │ │ │
│ │ 空白 │──→│ 潜空间 │──────→ │ │
│ │ 图像 │ │ │ └────────┘ │
│ └────────┘ └────────┘ │
│ │
└─────────────────────────────────────────────────────────────┘
工作流特点 #
text
工作流特点:
可视化:
├── 图形化展示处理流程
├── 清晰的数据流向
└── 直观的节点关系
可复用:
├── 保存为 JSON 文件
├── 一键加载使用
└── 分享给他人
可定制:
├── 自由组合节点
├── 调整参数配置
└── 创建个性化流程
可扩展:
├── 添加自定义节点
├── 集成新功能
└── 适应新需求
工作流设计原则 #
模块化设计 #
text
模块化设计原则:
1. 功能分离
├── 输入模块:模型加载、图像加载
├── 条件模块:提示词编码、条件组合
├── 采样模块:核心生成过程
└── 输出模块:解码、保存、后处理
2. 清晰布局
├── 从左到右的数据流
├── 相关节点靠近放置
└── 使用分组区分模块
3. 参数暴露
├── 关键参数使用 Primitive 节点
├── 便于批量调整
└── 提高复用性
标准工作流结构 #
text
┌─────────────────────────────────────────────────────────────┐
│ 标准文生图工作流 │
├─────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ 模型加载层 │ │
│ │ ┌─────────────┐ │ │
│ │ │ Load │ │ │
│ │ │ Checkpoint │ │ │
│ │ └─────────────┘ │ │
│ └─────────────────────────────────────────────────────┘ │
│ │ │
│ ▼ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ 条件编码层 │ │
│ │ ┌─────────────┐ ┌─────────────┐ │ │
│ │ │ CLIP Text │ │ CLIP Text │ │ │
│ │ │ Encode (+) │ │ Encode (-) │ │ │
│ │ └─────────────┘ └─────────────┘ │ │
│ └─────────────────────────────────────────────────────┘ │
│ │ │
│ ▼ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ 采样生成层 │ │
│ │ ┌─────────────┐ ┌─────────────┐ │ │
│ │ │ Empty │ │ │ │ │
│ │ │ Latent │────→│ KSampler │ │ │
│ │ └─────────────┘ └─────────────┘ │ │
│ └─────────────────────────────────────────────────────┘ │
│ │ │
│ ▼ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ 解码输出层 │ │
│ │ ┌─────────────┐ ┌─────────────┐ │ │
│ │ │ VAE Decode │────→│ Save Image │ │ │
│ │ └─────────────┘ └─────────────┘ │ │
│ └─────────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────┘
工作流操作 #
保存工作流 #
text
保存方式:
1. 保存工作流(用户格式)
├── 点击 "Save" 按钮
├── 选择保存位置
├── 格式:.json
└── 包含完整节点和参数
2. 保存为 API 格式
├── 点击 "Save (API Format)"
├── 用于 API 调用
├── 格式:.json
└── 精简格式,适合程序调用
3. 自动保存
├── 浏览器本地存储
├── 自动恢复功能
└── 防止意外丢失
加载工作流 #
text
加载方式:
1. 从文件加载
├── 点击 "Load" 按钮
├── 选择 .json 文件
└── 或拖拽文件到界面
2. 从剪贴板加载
├── 复制工作流 JSON
├── Load → Load from Clipboard
└── 快速分享工作流
3. 加载默认工作流
├── 点击 "Load Default"
└── 加载基础文生图模板
4. 从历史加载
├── 点击历史记录
├── 选择历史工作流
└── 恢复之前的工作流
工作流格式 #
text
JSON 结构示例:
{
"last_node_id": 9,
"last_link_id": 9,
"nodes": [
{
"id": 1,
"type": "CheckpointLoaderSimple",
"pos": [26, 26],
"size": [315, 98],
"flags": {},
"order": 0,
"mode": 0,
"outputs": [
{"name": "MODEL", "type": "MODEL", "links": [1]},
{"name": "CLIP", "type": "CLIP", "links": [2, 3]},
{"name": "VAE", "type": "VAE", "links": [5]}
],
"properties": {},
"widgets_values": ["v1-5-pruned-emaonly.safetensors"]
}
],
"links": [
[1, 1, 0, 4, 0, "MODEL"],
[2, 1, 1, 2, 0, "CLIP"]
],
"groups": [],
"config": {},
"extra": {}
}
工作流模板 #
基础文生图模板 #
text
用途:基础文本生成图像
节点组成:
├── Load Checkpoint - 加载模型
├── CLIP Text Encode (x2) - 正负提示词
├── Empty Latent Image - 空白潜空间
├── KSampler - 采样器
├── VAE Decode - 解码
└── Save Image - 保存
适用场景:
├── 学习 ComfyUI 基础
├── 快速文生图
└── 测试模型效果
图生图模板 #
text
用途:基于参考图像生成
节点组成:
├── Load Checkpoint - 加载模型
├── Load Image - 加载参考图
├── CLIP Text Encode (x2) - 正负提示词
├── VAE Encode - 编码参考图
├── KSampler - 采样器(denoise < 1.0)
├── VAE Decode - 解码
└── Save Image - 保存
适用场景:
├── 风格迁移
├── 图像修改
└── 变体生成
ControlNet 模板 #
text
用途:精确控制图像生成
节点组成:
├── Load Checkpoint - 加载模型
├── Load Image - 加载控制图
├── ControlNet Apply - 应用 ControlNet
├── CLIP Text Encode (x2) - 正负提示词
├── Empty Latent Image - 空白潜空间
├── KSampler - 采样器
├── VAE Decode - 解码
└── Save Image - 保存
适用场景:
├── 姿态控制
├── 结构保持
└── 精确构图
高清放大模板 #
text
用途:图像高清放大
节点组成:
├── 基础生成部分
│ └── 生成低分辨率图像
├── 放大部分
│ ├── ImageUpscaleWithModel - 模型放大
│ └── ImageScale - 插值放大
├── 重绘部分(可选)
│ ├── VAE Encode - 编码
│ ├── KSampler - 重绘
│ └── VAE Decode - 解码
└── Save Image - 保存
适用场景:
├── 高清输出
├── 细节增强
└── 打印准备
工作流优化 #
性能优化 #
text
优化策略:
1. 减少不必要的节点
├── 移除冗余处理
└── 合并相似操作
2. 合理设置分辨率
├── 先生成小图
└── 后放大处理
3. 优化采样参数
├── 选择高效采样器
├── 合理步数设置
└── 适当 CFG 值
4. 批量处理优化
├── 使用 batch_size
└── 避免重复加载模型
可读性优化 #
text
提高可读性:
1. 使用分组
├── 按功能分组
├── 添加分组标题
└── 使用颜色区分
2. 添加注释
├── 关键步骤说明
├── 参数设置原因
└── 注意事项
3. 合理布局
├── 统一方向
├── 避免交叉连线
└── 保持整洁
4. 节点命名
├── 重命名关键节点
└── 标注功能用途
工作流分享 #
分享方式 #
text
分享方法:
1. JSON 文件分享
├── 保存工作流
├── 上传到网盘/GitHub
└── 他人下载加载
2. 剪贴板分享
├── 复制工作流 JSON
├── 粘贴到聊天/论坛
└── 他人复制加载
3. 图片嵌入
├── 导出带工作流的图片
├── 图片包含元数据
└── 拖入 ComfyUI 自动加载
4. ComfyUI-Manager
├── Share Workflow
├── 上传到社区
└── 他人可直接安装
工作流图片 #
text
带工作流的图片:
生成方式:
├── Save Image 自动嵌入
├── 右键 → Save with metadata
└── 设置中启用
加载方式:
├── 拖拽图片到界面
├── 自动提取工作流
└── 可直接使用
优势:
├── 图文合一
├── 方便分享
└── 易于复现
高级工作流技巧 #
条件路由 #
text
使用 Switch 节点实现条件路由:
┌─────────────┐
│ Switch │
│ (Condition) │
└──────┬──────┘
│
├── True ──→ 路径 A
│
└── False ──→ 路径 B
用途:
├── 条件分支
├── 参数切换
└── 工作流控制
循环处理 #
text
使用迭代节点实现循环:
┌─────────────┐ ┌─────────────┐
│ Loop Start │────→│ Process │
└─────────────┘ └──────┬──────┘
↑ │
│ ▼
│ ┌─────────────┐
└────────────│ Loop End │
└─────────────┘
用途:
├── 批量处理
├── 渐进优化
└── 动画生成
子工作流 #
text
使用嵌套工作流:
主工作流
├── 节点 A
├── 子工作流节点 ──→ 子工作流
│ ├── 节点 1
│ ├── 节点 2
│ └── 节点 3
└── 节点 B
优势:
├── 模块化设计
├── 复用子流程
└── 简化主流程
工作流管理 #
版本管理 #
text
版本管理建议:
1. 文件命名规范
├── workflow_name_v1.json
├── workflow_name_v2.json
└── 添加日期或版本号
2. Git 管理
├── 创建工作流仓库
├── 提交变更记录
└── 回溯历史版本
3. 备份策略
├── 定期备份
├── 云端同步
└── 多处存储
分类整理 #
text
工作流分类建议:
按功能分类:
├── text-to-image/ - 文生图
├── image-to-image/ - 图生图
├── controlnet/ - ControlNet
├── upscale/ - 放大
├── animation/ - 动画
└── experimental/ - 实验性
按模型分类:
├── sd15/ - SD 1.5
├── sdxl/ - SDXL
├── flux/ - Flux
└── other/ - 其他模型
按用途分类:
├── portrait/ - 人像
├── landscape/ - 风景
├── product/ - 产品
└── art/ - 艺术
下一步 #
现在你已经掌握了工作流基础,接下来学习 模型管理,了解如何管理和使用各种模型。
最后更新:2026-04-05