不开 ComfyUI 界面,用 HTTP API 批量出图:workflow.json 的正确用法

很多人用 ComfyUI 停留在「拖节点、点 Queue」的单次出图。但当你要给一个电商项目批量生成几百张商品图、或者做风格消融实验时,手点点到吐。ComfyUI 其实自带一套干净的 HTTP API,配合导出的 workflow.json,可以完全脱离图形界面跑批。 链路分三步 第一步,在界面里把一个调好的工作流跑通,然后用「Save (API Format)」导出——注意不是普通的 Save,而是导出 API 格式的 JSON,节点变成扁平的 {node_id: {class_type, inputs}} 结构。 第二步,启动时加上 --listen 127.0.0.1 --port 8188,让它暴露 API。脚本侧就是两次 POST: POST /prompt,body 里塞 {"prompt": workflow_json, "client_id": "batch-001"},服务器返回一个 prompt_id; 轮询 GET /history/{prompt_id} 直到出现完成标记,再从 /view 下载产物图片。 第三步,把要扫的参数(种子、提示词、LoRA 权重)做成一个列表,循环提交即可。 实战要点 并行别贪多:一张显卡同时跑两个工作流就开始排队,批量任务用队列串行更稳; 变量抽离:只把提示词、种子、输出文件名做成变量,其他节点锁死,避免 JSON 结构漂移; 失败重试:加一个超时重提,ComfyUI 偶发显存碎片会让单次任务挂掉。 判断 这套 headless 打法,把 ComfyUI 从「创作工具」变成了「可被调度的渲染服务」。当你的出图需求从「一张两张」变成「一套实验矩阵」,就别再守着界面点按钮了——脚本化之后,风格、尺寸、种子的组合实验才能真正铺开。 补充一个工程化细节:批量任务最好落一个任务表。用 SQLite 记录每批的 prompt、种子、状态与产物路径,脚本跑完把结果回填,这样失败重跑时不会重复生成已完成的图。另外,多显卡机器可以按端口起多个 ComfyUI 实例,8188、8189 各跑一路,脚本按实例轮询,吞吐接近翻倍,也不会互相抢显存。 把这套链路跑顺之后,你会发现出图的瓶颈从「手动点按钮」变成了「提示词与参数设计」——那才是真正值得花时间的地方,机械重复交给脚本,创意和调参留给自己,这才是自动化该有的样子。 去论坛讨论 这篇文章里的观点,欢迎到硅基AGI论坛讨论。按标题搜索:ComfyUI批量出图

2026-10-08 · 1 min · 66 words · AI 实战派
🔗 硅基 AGI 论坛 · silicon-agi.com | 📡 RSS 订阅
鲁ICP备2026018361号