关于 comfyui-media-workflows
这是一套与供应商无关的技能,可将创意或技术简报转为可复现、可审查的 ComfyUI 工作流包,面向媒体创作者和技术操作人员,涵盖图结构、运行检查、模型与节点风险及交接记录。
主要功能
- 01制作简报与约束采集
- 02UI 和 API 工作流格式
- 03工作流预检验证
- 04模型与许可清单
- 05自定义节点风险管理
- 06运行元数据与交接记录
适用场景
- 01构建可复现的图像工作流
- 02准备供 API 执行的图
- 03审查模型和节点依赖
- 04为交接记录工作流信息
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ calesthio/ generative-media-skills --skill comfyui-media-workflows安装后在 Claude Code 中输入/comfyui-media-workflows确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
EVAL.mdscripts/inspect_workflow.pytests/test_inspect_workflow.py详细介绍
ComfyUI 媒体工作流制作
使用此技能,将创意或技术简报转化为可投入制作的 ComfyUI 工作流包。请将 ComfyUI 视为基于图的媒体制作运行时,而非提示词输入框。输出应确保该图可复现、可审核、可安全运行,并且便于其他操作人员或系统执行。
本方案与服务提供商无关。除非用户或现有项目明确指定,否则不要假设使用特定检查点、托管式 Comfy 服务、自定义节点集或云服务商。由于 ComfyUI、自定义节点、模型、许可证和云 API 的相关情况经常变化,请在投入制作时重新核实。
操作原则
- 从交付物和约束出发,再选择图拓扑、模型、节点和运行时。不要直接粘贴热门工作流作为起点。
- 区分有文档依据的事实与制作经验。有文档依据的事实来自最新文档、模型卡、许可证、API 架构和直接测试。经验则来自你的制作判断。
- 尽可能保留两种工作流产物:
workflow.json:包含布局、分组、注释且便于操作人员阅读的前端/保存格式图。workflow_api.json:供程序化执行的 API 格式图。
- 保留足够的元数据以便重现运行:工作流 JSON、带哈希值的输入文件、模型标识符和哈希值、自定义节点仓库版本、ComfyUI 版本、参数、种子策略、硬件/运行时、输出路径和 QA 备注。
- 除非创意需求确实需要,否则优先减少自定义节点和模型依赖。每个自定义节点都意味着代码执行和供应链风险。
- 绝不要把模型可用性视为权利许可。文件可下载,并不代表项目可以将其用于商业用途、自由使用其输出、使用输出进行训练,或使用某人的肖像。
- 有意识地决定是否将工作流元数据嵌入输出中。嵌入图有助于复现,但可能泄露提示词、模型名称、私有路径、客户信息、API 节点标题或工作流知识产权。
首轮必做事项
在构建或修改图之前,先准备一份简短的制作简报:
- **交付物:**媒体类型、数量、尺寸/宽高比、视频时长/帧率(如适用)、文件格式、命名方式、发布平台或后续编辑器。
- **创意意图:**主体、风格、约束、参考资料、负面约束、必须保留的元素、品牌规则。
- **输入:**文本提示词、图像、遮罩、视频、音频、深度/姿态/控制图、品牌素材、身份/肖像使用许可、源文件所有权。
- **运行时:**本地 ComfyUI、Comfy Cloud、其他托管的 Comfy 兼容服务,或仅交接;可用 GPU/VRAM、并发量、存储、网络和隐私约束。
- **模型清单:**计划使用的检查点/扩散模型、VAE、文本编码器、LoRA、ControlNet、适配器、升频模型、视频模型,以及音频/3D 模型(如有)。
- **自定义节点清单:**每个非核心节点包的安装来源、版本/提交、许可证、依赖影响、可信级别和替代方案。
- **权利与安全:**商业用途状态、客户/法律顾问审批需求、肖像/声音同意、未成年人、受监管领域、冒充/欺骗、禁止内容、平台限制。
- **可复现目标:**精确重跑、近似匹配或探索性批次。精确重跑需要更严格的种子、版本、哈希值和确定性方面的注意事项。
- **交接目标:**其他艺术家、API 服务、云端部署、批量渲染队列或归档。
如果缺少以上任何信息,只有在不会实质改变工作流设计时,才可作出范围明确的假设;否则请先询问。
工作流格式和 API 边界
ComfyUI 工作流是 JSON 图。前端保存格式与 API 格式并不等同:
- 保存格式用于在 UI 中编辑。它包含布局、颜色、分组、节点大小等视觉元数据。
- API 格式用于执行。它以节点 ID 为键,包含
class_type、inputs和可选的_meta;省略了大部分 UI 布局数据。 - 以编程方式执行时,请通过前端的 File -> Export Workflow (API) 导出,或使用经过验证、适用于目标运行环境的转换方法。
- 提交 API 工作流前,请验证每个
class_type是否存在于运行环境的节点注册表中,并确认每个公开的输入名称都与当前节点定义相符。
需要对 API 格式的工作流进行静态预检时,请先使用随附的 Python 3.11+ 标准库辅助工具,再进行运行时验证:
python scripts/inspect_workflow.py workflow_api.json --approved-classes approved_classes.txt --unknown-class warning --pretty
该辅助工具仅检查本地 JSON。它会验证 API 格式的结构、节点 ID、class_type、inputs、可选的 _meta、格式为 [node_id, output_index] 的链接输入、悬空链接、非负整数输出索引、图循环,以及对类似机密的键/值或看似绝对路径/私有路径字符串的警告。它会生成稳定的规范化 JSON 清单,其中包含节点数、边数、类数和发现项数。退出代码:没有验证错误时为 0,存在验证错误时为 2,解析或操作失败时为 3。如果提供以换行符分隔的已批准类列表,则可通过 --unknown-class 将列表中不存在的类类型报告为警告、错误,或忽略。
此辅助工具不能替代 ComfyUI 运行时验证。它不会执行图、向 /prompt 提交、安装缺失的自定义节点、加载模型、根据 /object_info 验证输入名称,也无法证明工作流能够适配 VRAM 或在目标服务上运行。
在本地 ComfyUI 服务上执行时,基本流程如下:
- 通过运行时的上传路由上传所需输入,或将其放入预期的输入目录。
- 将 API 格式的图提交到提示词队列。
- 通过 WebSocket 消息或轮询监控状态。
- 从运行历史记录或查看/下载路由获取输出。
- 将运行元数据和输出归档到临时运行时目录之外。
对于云端执行,不要假设本地路由语义适用。请在当前云文档中确认身份验证、端点前缀、并发限制、存储行为、签名 URL 行为、超时以及合作伙伴节点密钥的处理方式。
生产工作流卡片
对于每个非简单工作流,请在项目笔记或交接消息中维护一份工作流卡片。内容应简洁但完整:
workflow_name: product-hero-sdxl-controlnet-v003
purpose: "Generate 6 square product hero image candidates with locked silhouette and color palette."
formats:
save_graph: workflow.json
api_graph: workflow_api.json
runtime_verified:
comfyui_version: "record exact version/commit"
execution_target: "local RTX 4090 / Comfy Cloud / other"
verified_at: "YYYY-MM-DD"
models:
- role: checkpoint
id: "repository-or-file-name"
file: "model.safetensors"
sha256: "..."
source_url: "..."
license: "..."
license_verified_at: "YYYY-MM-DD"
approval: "approved / needs counsel / noncommercial only / unknown"
custom_nodes:
- package: "repo-or-registry-id"
version_or_commit: "..."
source_url: "..."
license: "..."
risk: "low / medium / high"
reason: "why needed"
exposed_inputs:
positive_prompt_node: "6.inputs.text"
negative_prompt_node: "7.inputs.text"
seed_node: "3.inputs.seed"
width_height_node: "5.inputs.width|height"
seed_policy: "fixed seeds for rerun; randomized only in variants manifest"
input_custody:
source_assets: "paths, hashes, consent notes"
output_custody:
destination: "..."
metadata_policy: "embed workflow / strip workflow / add C2PA externally"
qa_status: "not run / smoke passed / approved / blocked"
known_limits:
- "..."
不要编造哈希值、版本、许可证状态或审批信息。未知项请明确标出。
模型和许可证清单
盘点所有类似模型的素材,而不仅仅是主检查点:
- 检查点或扩散模型
- VAE
- 文本编码器
- LoRA、LyCORIS、嵌入、文本反转
- ControlNet、T2I adapter、IP/参考适配器、姿势/深度/分割模型
- 放大模型、人脸修复模型、背景移除工具
- 视频生成模型、插帧模型、帧增强器
- 节点使用的音频、3D、字幕或 LLM/VLM 模型
对于每项,请记录:
- 加载器节点所需的确切文件名和文件夹类别;
- 来源 URL 或仓库 ID;
- 版本、修订版本或下载日期;
- 可用时的文件哈希值,或本地计算出的哈希值;
- 模型卡或许可证 URL;
- 与此任务相关的许可证条款:商业用途、署名、输出使用、衍生作品/微调、再分发、合成数据/训练限制、内容使用限制;
- 已知的运行时要求:数据类型/量化、最低 VRAM、所需文本编码器或 VAE;
- 批准人及批准时间,或尚未解决的事项。
将模型卡元数据作为起点,而不是完整的许可审查。Hugging Face 支持许可证元数据和模型卡,但元数据缺失或含糊的情况相当常见,因此对于影响重大的工作,你必须检查关联的许可证或仓库文件。如果模型是衍生模型或合并模型,且项目涉及商业用途、公开发布、面向客户或再分发,请核实上游许可证是否兼容。
出现以下情况时,请升级至客户、权利所有者、平台所有者或法律顾问处理:
- 许可证缺失、相互矛盾、仅限非商业用途、仅限研究用途、对输出的规定不明确,或与预期用途不兼容;
- 模型是上游来源不明的合并模型或衍生模型;
- 工作流涉及某人的肖像、私人参考资料、在世艺术家的风格要求、商标角色、品牌素材或受监管领域的内容;
- 输出将被出售、用于广告、联合发布、用于政治说服、用于受监管领域,或用作训练数据;
- 工作流或自定义节点包将再分发给他人。
请勿提供法律建议。说明风险和需要作出的决定。
自定义节点风险处理
自定义节点是可在 ComfyUI 环境中执行代码的扩展。请将其视为供应链依赖。
为每个自定义节点评估风险等级:
- **低:**官方/核心节点;来自知名发布者的当前注册表软件包;维护活跃;许可证明确;除文档说明的模型/API 调用外无网络行为;版本已固定。
- **中:**受欢迎且仓库活跃的社区节点,但依赖项范围广、发布版本固定情况不明、文档有限,或具有非关键的网络/文件行为。
- **高:**不知名的仓库、无许可证、未固定发布版本、未经审查的安装脚本、来源不明的二进制 wheel、广泛的文件系统/网络访问、凭据处理、代码混淆、存在关于故障/安全问题的陈旧议题,或仅为轻微便利而必需。
必需的处理方式:
- 如果核心节点和官方模板能够满足需求,优先使用它们。
- 如果确实需要自定义节点,请固定发布版本或提交,并记录安装来源。生产环境中避免使用“latest”。
- 阅读节点 README 和安装要求;检查它是否需要模型、外部 API、凭据、ffmpeg、CUDA 扩展、编译器工具链或系统软件包。
- 仅在预期的 ComfyUI 环境中安装依赖项。不要污染系统 Python 或无关项目。
- 未经批准,不要运行不可信的安装脚本或安装后命令。
- 除非节点文档明确要求这种方式且用户接受,否则不要将机密信息传入可能保存到工作流 JSON、输出元数据、日志或屏幕截图中的节点参数。
- 使用来自外部来源的工作流时,执行前检查未知节点。缺少节点报错也比盲目安装所有内容安全。
如果必需的自定义节点风险高,且没有安全的替代方案,请停止并征求批准,同时提供以下选项:在沙箱中接受风险、替换创作方案、使用托管服务提供商,或暂停。
图结构设计模式
将这些模式用作生产实践,而非僵化模板。节点名称会因 ComfyUI 版本、模型系列和自定义节点软件包而异。
文本生成图像静帧
常见结构:
- 加载检查点,或加载特定模型系列的模型及所需的文本编码器/VAE。
- 编码正向和负向提示词。
- 按目标尺寸或模型原生尺寸创建 latent。
- 使用有文档记录的采样器/调度器/步数/CFG/种子进行采样。
- 解码。
- 可选:放大、色彩处理、人脸/细节处理、元数据/溯源处理。
- 使用确定性的文件名前缀保存。
生产注意事项:
- 显示正向提示词、负向提示词、种子、宽度、高度、步数、CFG/引导系数、采样器/调度器、去噪强度、批次大小和输出前缀。
- 清楚展示模型原生的宽高比和分辨率限制。除非质量允许,否则不要默默地将低分辨率生成结果放大到最终交付尺寸。
- 使用固定种子生成待审核的候选结果。使用变体清单进行随机探索。
图像转图像与风格化
常见结构:
- 加载源图像。
- 按需预处理:调整大小/裁剪/填充、色彩归一化、分割、深度、边缘、姿势或参考嵌入。
- 将图像编码为 latent,或将其输入相关条件节点。
- 根据保留目标选择去噪强度进行采样。
- 合成或恢复细节。
- 保存输出和对比图。
去噪强度的经验范围:
- 低去噪强度适用于保留内容和清理。
- 中等去噪强度适用于保留构图的风格迁移。
- 高去噪强度适用于受输入图像松散启发的新图像生成。
记录实际去噪值和预期的保留程度。对于客户素材,应通过明确的控制输入保留构图,而不是寄希望于提示词能做到这一点。
局部重绘与扩图
常见结构:
- 加载源图像和蒙版。
- 检查蒙版极性和边缘柔和度。
- 如果使用细节/局部重绘裁剪路径,则裁剪至蒙版区域;如果全局一致性很重要,则处理完整画面。
- 将图像/蒙版编码并输入局部重绘模型或条件控制路径。
- 使用与保留需求相匹配的去噪强度进行采样。
- 合成回原始图像。
- 检查接缝质量、几何结构、阴影、纹理以及品牌/产品保真度。
生产注意事项:
- 将蒙版作为带哈希值的源文件保存;不要依赖无法交接的纯 UI 蒙版。
- 长时间运行前,提供“蒙版检查”输出或截图。
- 如果目标是产品、徽标、人脸或医疗/法律/技术物体,应进行更严格的审核,并确认是否允许 AI 重建。
控制与条件
条件控制能将含糊的提示词意图转化为可控结构。当布局、姿势、深度、产品轮廓、边缘保真度、相机角度或与身份相关的一致性很重要时,应使用条件控制。
常见控制方式:
- 边缘/线稿/Canny,用于形状和清晰轮廓;
- 深度,用于空间布局和相机透视;
- 姿势/类似 OpenPose 的骨架,用于身体定位;
- 分割,用于对象区域;
- 参考/图像适配器,用于颜色、风格或与身份相关的视觉线索;
- LoRA 或嵌入,用于可重复的风格、主体或产品系列处理。
生产注意事项:
- 记录预处理模型和参数,而不仅是最终控制图像。
- 优先使用一种强控制,而不是多种较弱且相互冲突的控制。
- 如果使用多种控制,应定义优先级:先结构,其次身份/参考,最后风格,除非需求另有说明。
- 检查控制过拟合:控制强度过高时,输出可能看起来像描摹、僵硬、变形或缺乏纹理。
放大与润饰
常见结构:
- 按照模型适用的基础尺寸生成。
- 根据伪影类型选择潜空间放大或像素放大。
- 仅在细节处理能改善图像、而非凭空生成新细节时才使用。
- 保存原始、放大和最终文件,并关联元数据。
生产注意事项:
- 放大不能代替正确的基础构图。
- 未检查相似度和知情同意影响前,不要对人物进行人脸/细节修复。
- 对于印刷品,应按最终实际尺寸和分辨率检查。对于网页/社交媒体内容,应检查压缩效果和裁切安全区域。
视频与动态工作流
视频工作流会放大所有风险:显存、时间、时序伪影、权利和文件保管。
常见结构:
- 定义动态规格:时长、帧率、宽高比、相机/主体运动、源图像或文本提示词,以及循环/连续性需求。
- 加载视频模型以及所需的编码器/VAE/运动模块。
- 根据需要提供源图像/视频/控制帧。
- 先生成短片段,再生成长片段。
- 可选:在外部进行插帧、放大、稳定、修复、加字幕或合成。
- 保存帧和最终视频,并附上运行元数据。
生产注意事项:
- 完整分辨率运行前,先以较短时长、较低分辨率和固定种子进行冒烟测试。
- 固定帧率、帧数、分辨率和种子策略。“5 秒”的目标还不够;应记录准确帧数和帧率。
- 如果后续剪辑可能需要修复或时序质量检查,应保存中间帧。
- 留意时序身份漂移、闪烁、纹理沸腾、相机跳变、文字/徽标失真,以及与物理规律或品牌要求相矛盾的运动。
- 对于源素材,应确认是否有权对其进行变换,以及是否必须披露 AI 修改。
批量变体
批量处理用于受控探索,而不是混乱尝试。
使用变体清单:
base_workflow: workflow_api.json
locked:
checkpoint: "..."
dimensions: "1024x1024"
negative_prompt: "..."
control_image_sha256: "..."
variants:
- id: A01
seed: 101
prompt_delta: "warmer backlight, softer shadows"
- id: A02
seed: 102
prompt_delta: "cooler palette, sharper product edge"
除非目的是广泛探索,否则每批只更改一两个变量。使用变体 ID 和种子命名输出。生成联系表或审阅网格,供人工选择。
提示词、种子和参数控制
将提示词作为输入项,但不要让它成为唯一的控制方式。
提示词处理:
- 如果模型能很好地响应此类结构化信息,请将提示词意图拆分为主体、构图、媒介/风格、光照、相机/镜头、材质/纹理、约束和品牌术语。
- 负面提示词应聚焦于实际的失败模式。过长的负面提示词列表难以调试。
- 记录提示词版本。一个词的变更就可能影响审批结果。
- 如果输出或工作流 JSON 会被分享,请从提示词中删除客户私人姓名、尚未发布的产品代号、个人数据或机密 URL。
种子处理:
- 审批时使用固定种子并做好记录。
- 探索时定义种子范围或列表,并记录生成器策略。
- 如果需要精确复现,请说明仅靠种子不足以保证复现;模型文件、节点版本、采样器、调度器、精度、硬件/后端和预处理也必须保持一致。
参数处理:
- 记录采样器/调度器、步数、CFG/引导强度、去噪、尺寸、批次大小、模型权重、LoRA 强度、控制强度、起始/结束百分比、放大比例、fps/帧数和文件名前缀。
- 如果默认值会实质性影响结果,请勿默默使用默认值。如果使用默认值,请明确说明。
显存、性能和可靠性
不要仅仅因为图是有效的 JSON,就保证它能够运行。
性能检查清单:
- 在可用时查询或记录运行时系统信息:GPU、显存、Python/torch/CUDA 或同类技术栈、ComfyUI 版本、可用磁盘空间以及相关环境标志。
- 估算成本因素:模型大小、精度、分辨率、批次大小、帧数、采样器数量、ControlNet/适配器、分块处理、放大器,以及同时加载多个大型模型。
- 优先依次降低:批次大小、帧数、分辨率、同时使用的控制项、高分辨率/细节处理阶段,然后在质量允许时再降低模型大小/精度。
- 对于视频,逐步增加时长和分辨率。能处理 16 帧的图,处理 120 帧时可能会失败。
- 有意使用缓存的中间输出,但在验证最终可复现性时,请清除缓存或从源文件重新运行。
- 如果运行因内存不足而失败,请记录失败的节点,并且每次只调整一个资源变量。
- 对于云端运行,请记录超时、并发、队列行为、签名 URL 的有效期以及存储保留期限。
在可用时使用 /system_stats 或目标运行时的等效功能;仅在不会影响其他正在运行的作业时,才使用 /free 或界面中的等效功能卸载模型。
输入和输出保管
将每项输入和生成的输出都视为需要妥善保管的资产。
输入:
- 将源图像、蒙版、视频、音频和控制图存储在项目专用的输入目录或获准的云存储中。
- 为客户提供的输入和参考素材计算哈希值。
- 记录有关人物、声音、私人财产、徽标、商标和受版权保护艺术作品的许可/同意状态。
- 对外分享工作流 JSON 前,删除或替换机密路径和名称。
- 切勿将用户提供的私人资产用于无关的模型训练或示例。
输出:
- 将输出保存到受控的项目目录,而不只是 ComfyUI 的默认输出文件夹。
- 在可行时,使用包含工作流名称、变体 ID、种子和日期的文件名前缀。
- 根据项目保留政策保存原始文件、选定的最终版本和未采用的变体。
- 交付时,请附上输出以及工作流、输入、参数、源模型详情和 QA 状态清单。
- 如果平台要求提供披露信息或溯源元数据,请在收尾阶段将其添加进去,而不是事后补上。
来源和元数据
ComfyUI 的 SaveImage 节点可以将图像保存到输出目录,并可嵌入工作流元数据,例如提示词。核心工作流文档将生成图像元数据描述为重新打开图形的一种方式,并指出在媒体格式不支持元数据时,独立 JSON 文件很有用。
生产环境决策:
- 嵌入工作流元数据:当可复现性、内部审查或移交给可信的 ComfyUI 操作人员比保密性更重要时。
- 剥离或避免工作流元数据:当分享给公众或客户的文件可能泄露提示词、模型名称、文件路径、未发布的参考资料、自定义节点 IP 或私人数据时。
- 添加外部来源信息:当披露、真实性或平台政策有此要求时。C2PA/Content Credentials 可以记录已签名的来源信息和 AI 编辑声明,但这是可选的,可能不完整,也不是 DRM。
如果使用 C2PA 或类似的来源信息机制:
- 记录内容是由 AI 生成、经 AI 编辑,还是由多个素材合成。
- 根据披露要求,适当记录工具名称和重要转换操作。
- 除非获得批准,否则避免包含敏感身份信息或客户机密详情。
- 确认最终导出格式和平台会保留元数据;如果工作流支持,也可提供旁置文件或托管清单路径。
本地和云端执行规范
本地执行:
- 使用指定的 ComfyUI 环境和依赖集。
- 将模型存放在预期的
ComfyUI/models/<category>文件夹或已配置的额外模型路径中。 - 固定并记录自定义节点的版本。
- 避免在高权限环境中执行未经审查的外部工作流。
- 未设置身份验证和网络控制时,不要将本地 ComfyUI 端口暴露到公网。
- 清理包含机密参考资料的临时文件和输出文件。
云端执行:
- 核实当前的 API 基础 URL、身份验证标头、作业提交格式、轮询/WebSocket 行为、上传/下载路由、并发限制、存储保留期限和计费方式。
- 将 API 密钥存放在环境变量或密钥存储中,切勿放入工作流 JSON。
- 了解会调用外部服务提供商的合作方/API 节点;记录哪些第三方服务会接收输入内容。
- 在签名 URL 过期前下载输出,并将其保存在项目控制下。
- 不要假设云端输出会永久保密;请查看服务条款和项目要求。
交接前的 QA
最低限度的 QA:
- 如果提供了前端图,JSON 必须能在 ComfyUI 前端中打开。
- API 图必须通过运行时验证:所有
class_type值都存在;必需输入均已提供;加载器节点指向可用文件。 - 模型和自定义节点清单必须足够完整,以便其他操作人员能够复现安装。
- 使用低成本设置或一个有代表性的种子进行冒烟测试,并通过测试。
- 输出文件出现在预期位置,且命名正确。
- 工作流卡片列出所有公开输入和固定参数。
- 对于公开、付费、客户项目或再分发的工作,权利/安全状态不得为“未知”。
- 必须明确元数据/来源信息策略。
静帧的视觉 QA:
- 构图符合需求;
- 主体身份、产品几何形状、徽标/文字、手部/面部、反射、阴影和透视均可接受;
- 没有不需要的水印/签名/文字,也没有泄露私人参考内容;
- 裁切安全区域和最终尺寸正确;
- 放大/细节处理没有臆造瑕疵。
视频的视觉 QA:
- 时间一致性良好,闪烁/沸腾效应未超出可接受的风格范围;
- 主体和物体在各帧之间保持连续;
- 运动方向和摄像机移动符合需求;
- 没有丢帧、循环损坏、文字/徽标不稳定或不需要的变形;
- 符合帧率、时长、编解码器/容器以及音频/字幕要求。
技术 QA:
- 如果需要保证可复现性,变更后使用一个固定种子重新运行并生成输出;
- 检查日志中有关节点/模型缺失、精度回退、输入跳过、下载失败或 API 节点错误的警告;
- 如果要求精确重跑,比较文件哈希或感知匹配结果;
- 根据策略验证输出元数据是否存在。
交接包
交付以下内容:
- 用于 UI 编辑的
workflow.json(如有); - 用于执行的
workflow_api.json(如有); - 工作流卡片或清单;
- 输入素材及遮罩/控制图,或经批准的存储 URL;
- 输出样例/最终文件;
- 附带许可证和哈希值的模型清单;
- 附带版本/提交记录和安装说明的自定义节点清单;
- 运行日志:种子、提示词、参数、运行时、输出文件名、错误;
- QA 备注和未解决的风险;
- 元数据/来源信息决策。
如果计划再分发,只包含可合法且切实可行地再分发的素材和模型链接。否则,请提供安装说明和源 URL,而不要打包受限的模型文件。
示例:可控的产品主视觉静帧
示例意图:为一款新瓶子生成方形电商主视觉图,同时保留瓶身轮廓和标签位置。用户提供了经批准的产品渲染图和品牌调色板。计划用于商业发布。
方案:
- 使用图生图加边缘/深度条件控制,而非纯文生图。
- 将产品渲染图和遮罩作为哈希输入保留。
- 使用已获商业授权的检查点和少量核心/控制节点。
- 在控制光照变化的情况下运行 6 个固定种子的变体。
- 从公开成品中移除嵌入的工作流元数据,但保留内部工作流文件。
工作流卡片摘录:
workflow_name: bottle-hero-control-v001
purpose: "Generate six 1:1 product hero candidates preserving bottle geometry."
exposed_inputs:
prompt: "CLIPTextEncode positive text"
negative_prompt: "CLIPTextEncode negative text"
seed: "KSampler seed"
control_strength: "ControlNet strength"
locked:
dimensions: "1024x1024"
source_product_sha256: "record actual hash"
mask_sha256: "record actual hash"
model_license_status: "approved for commercial use by client on YYYY-MM-DD"
variant_policy:
seeds: [50101, 50102, 50103, 50104, 50105, 50106]
changed_fields: ["seed", "lighting phrase only"]
qa_focus:
- "label text/logo not reconstructed incorrectly"
- "bottle silhouette matches reference"
- "no invented claims on packaging"
metadata_policy: "strip from delivered finals; archive workflow internally"
为何有效:该图通过控制输入保护关键产品约束,并使用提示词设定氛围,而不是让模型臆造产品形状。
可能出现的问题:标签失真、瓶盖接缝过多、反射不真实、控制过拟合、下载的 LoRA 未获得充分的商业授权。
示例:修复局部重绘后的营销图片
示例意图:从已批准的营销图片中移除干扰物,同时不改变人物的脸部、服装或背景身份。
方法:
- 使用带蒙版的局部重绘工作流。
- 保持原始图片不可变。
- 保存蒙版文件和蒙版预览输出。
- 使用低至中等的去噪强度,并合成回原图。
- 以全分辨率进行质量检查,并与原图对比。
示例 Agent 计划:
I will build an inpaint-only workflow, not a full img2img restyle. Fixed inputs are the original campaign image and mask. The only creative prompt will describe the missing background texture. I will preserve the person, wardrobe, and lighting, and I will stop if the mask overlaps face, body, logo, or other protected areas.
预期交接说明:
- 原始图片哈希;
- 蒙版哈希及极性;
- 去噪值;
- 局部重绘模型/检查点的许可证;
- 前后对比;
- 声明无意修改脸部/身体;
- 如果人物/品牌元素有任何改动,注明待处理的审批事项。
示例:短篇图生视频批处理
示例意图:根据已批准的海报画面,制作 3 个 4 秒的竖版动画循环,用作社交媒体预告片。
方法:
- 确认拥有对海报进行 AI 转换的权利。
- 使用图生视频或视频模型工作流,并固定帧数和帧率。
- 先以低分辨率进行 1 秒的冒烟测试。
- 冒烟测试通过后,再批量处理运动提示词和种子。
- 保存视频文件和中间帧(如果后续预计还要编辑)。
清单摘录示例:
workflow_name: poster-loop-i2v-v002
delivery:
aspect_ratio: "9:16"
fps: 24
frames: 96
duration_seconds: 4
smoke_test:
frames: 24
resolution: "reduced"
status: "passed/failed"
variants:
- id: loop-a
seed: 7201
motion: "subtle parallax push-in, fabric barely moving, no face morph"
- id: loop-b
seed: 7202
motion: "slow lateral camera drift, particles in background only"
- id: loop-c
seed: 7203
motion: "gentle light sweep, subject locked"
qa_focus:
- "identity consistency"
- "no text/logo warping"
- "loop seam if looped"
- "no unauthorized transformation of protected artwork"
可能的失败情况:面部漂移、文字/徽标扭曲、最终帧数下显存占用过高、模型许可证是否允许商业社交媒体用途不明确,以及小尺寸预览中不易察觉的时间伪影。
来源说明与核验
本技能中的事实依据以下来源,并已于 2026-07-11 核验:
- ComfyUI 官方文档:ComfyUI 是一种基于节点的生成式 AI 界面/推理引擎,可在本地运行;文档还介绍了本地和云端 API。https://docs.comfy.org/
- ComfyUI 工作流 API 格式:前端保存格式与 API 格式不同;API 格式使用节点 ID,并省略 UI 布局数据;可通过
File -> Export Workflow (API)导出。https://docs.comfy.org/development/api-development/workflow-api-format - ComfyUI 工作流 JSON 规范:工作流 JSON 架构和带版本的工作流结构。https://docs.comfy.org/specs/workflow_json
- ComfyUI 服务 API 路由:
/prompt、/object_info、/history、/queue、/upload/image、/upload/mask、/view、/system_stats、/free和/ws路由的用途。https://docs.comfy.org/development/comfyui-server/comms_routes - ComfyUI Cloud API 文档:Comfy Cloud 的 API 格式工作流提交、上传、作业监控、输出下载、API 密钥处理和并发行为;文档将云端 API 标记为实验性功能。https://docs.comfy.org/development/cloud/overview and https://docs.comfy.org/development/cloud/api-reference
- ComfyUI 工作流文档和 SaveImage 文档:工作流可保存为 JSON,生成的图像可包含工作流/提示词元数据。https://docs.comfy.org/development/core-concepts/workflow and https://docs.comfy.org/built-in-nodes/SaveImage
- ComfyUI 自定义节点安装文档:自定义节点可扩展 ComfyUI;应仔细审查,因为恶意插件可能带来安全风险。https://docs.comfy.org/installation/install_custom_node
- ComfyUI 模板文档:工作流模板可以嵌入所需模型链接和模型文件夹信息;受支持的模型链接行为和模板依赖项版本可能会变化。https://docs.comfy.org/interface/features/template
- Hugging Face 模型卡和许可证文档:模型卡可以指定许可证元数据、数据集、版本和任务元数据;应遵守仓库许可证。https://huggingface.co/docs/hub/en/model-cards and https://huggingface.co/docs/hub/en/repositories-licenses
- C2PA Content Credentials 说明文档和常见问题:Content Credentials 是经过签名的来源元数据,采用自愿方式启用,可能不完整或被移除,可包含 AI 使用声明,且不是 DRM。https://spec.c2pa.org/specifications/specifications/2.4/explainer/Explainer.html and https://c2pa.org/faqs/
生产时应重新核查的易变信息:
- ComfyUI 路由详情、API 请求/响应格式、云端 API 状态、端点前缀、并发限制和计费。
- 当前 ComfyUI 桌面版/管理器的行为、注册表标准和模板模型链接安全规则。
- 每个自定义节点包的版本、安装方法、依赖树、发布者身份和安全状况。
- 每个模型/检查点/LoRA/控制模型/升频模型/视频模型的许可证和输出使用条款。
- 平台关于披露、来源、真实性和 AI 生成媒体的政策。