工作流基础 #

什么是工作流? #

工作流概念 #

工作流是由多个节点连接而成的图像生成流程,定义了从输入到输出的完整处理路径。

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