自我图书馆SELF LIBRARY持续整理中

SHELF 04 / WORKFLOWS · REPRODUCIBILITY

工作流整理
把节点图当作可版本化的实验。

一张能运行的画布不等于可复用的工作流。真正可复现的记录至少要说明:使用了哪些模型与节点、输入资产来自哪里、哪组参数改变了结果,以及提交给运行时的图到底是什么。

SAVE 画布与布局API 执行图格式SEED 随机性入口

01 / TWO JSON FORMATS, TWO JOBS

为人编辑的图,
与为服务器执行的图,不是同一份契约。

ComfyUI 的保存格式保留节点位置、连线布局、分组和颜色等画布信息,适合回到界面继续编辑。Workflow API Format(工作流 API 格式)则面向执行:它使用节点标识和输入连接表达计算关系,省去画布布局。自动化提交前,应从当前版本的界面导出 API 格式,而不是手写或把保存格式直接当成服务器请求。

SAVE FORMAT面向画布:节点、位置、分组、连线与视觉组织

它承担阅读和编辑体验。布局信息对于协作很重要,但并不是服务端执行图的全部或唯一事实来源。

API FORMAT面向运行:节点 ID、输入值、节点间引用与输出

官方 API 格式将连接表达为输入之间的引用,导出后可被队列接口验证和执行。它不包含保存格式中的画布布局与分组信息。

02 / WHAT A REPRODUCIBLE RUN NEEDS

保存 JSON,
但不要只保存 JSON。

工作流文件描述图结构,不能自动锁定它依赖的本地文件和环境。下面三组记录不是 ComfyUI 的强制字段,而是让未来的自己能够判断“为什么这次和上次不同”的最小实践。它们应与工作流一起保存,而不是散落在聊天记录里。

A

模型清单

记录 checkpoint、VAE、文本编码器、LoRA、ControlNet 或视频模型的文件名、来源、版本或哈希。不要把同名文件视为同一权重。

B

输入与参数

保留输入图、提示词、随机种子、尺寸、采样器、步数、去噪强度与关键条件强度。随机种子固定后才有可比较的参数实验。

C

环境与输出

记录 ComfyUI 提交版本、节点包版本、设备与运行参数,并将最终输出与中间输出关联到那份工作流,便于回溯。

03 / ORGANIZE BY QUESTIONS

不要收集“万能图”,
要收集能回答问题的模板。

同一图里塞入所有模型、所有控制条件和所有后处理,往往使它难以排错。更实用的组织方式是把工作流按问题分层:基础生成图回答模型与采样是否正确;预处理图回答控制信号是否可靠;成图或视频图只负责组合已经验证过的模块。

INPUT

资产准备

提示词、参考图、遮罩与预处理输出

→
CORE

基础生成

先单独验证模型、条件与采样器

→
CONTROL

条件控制

将结构、风格或运动条件逐项接入

→
OUTPUT

后处理与导出

单独处理放大、编码、命名和交付格式

模板适合承载“已验证的局部”,而不是掩盖依赖。

官方自定义节点可通过 example_workflows 目录提供 JSON 工作流和可选缩略图,在模板浏览器中展示。把模板与依赖模型、节点包和适用版本写在一起,能减少“加载成功但运行失败”的情况。

04 / CHANGE ONE THING AT A TIME

复现不是重复运行,
而是能解释差异。

对模型选择、参数调整和节点升级,建议分别建立基线和变更记录。先保持输入、种子与输出检查点不变,再修改单个因素;当结果发生变化时,才能区分它来自模型、参数、节点实现还是环境改变。

01

建立基线

保存最小可运行图与一组固定输入,确认模型、节点与输出路径在当前环境中真实可用。

02

增量修改

一次只改变一个主题:例如采样器、ControlNet 强度或单个 LoRA,不把三种变化写进同一份“新版本”。

03

可比较地归档

为图、输入、输出和结果说明使用同一个运行编号;需要自动化时,再导出 API 格式并保留对应版本。

READING LIST / ORIGINAL SOURCES
ComfyUI Workflow API Format↗ComfyUI Workflow JSON Specification↗ComfyUI Workflow Templates↗ComfyUI Server Communication Overview↗

ComfyUI 的节点、工作流格式和模型支持会持续演进。本文只归纳对应资料可确认的机制;导入工作流前仍应核对 ComfyUI、节点包、模型权重与许可证的实际版本。