Skip to main content
Comfy API 的部署服务目前处于测试版(beta)阶段。请前往 platform.comfy.org 注册以获取访问权限。
Comfy API 可让你将 ComfyUI 工作流部署为具备按需 GPU 算力的托管式自动扩缩容端点。Build 是 ComfyUI 环境的版本化定义,包含从本地安装中获取的模型、自定义节点和设置。Build and Deploy CLI 将 Build 定义保存在你的项目中,基于该定义创建发布版本(release),并在某发布版本准备好对外提供服务时将其部署。

1. 构建(Build)

从你的本地 ComfyUI 安装创建本地 Build 定义。

2. 发布(Release)

从 Build 切出一个不可变的 Linux/NVIDIA 发布版本。

3. 部署(Deploy)

为发布版本分配 URL 和托管 GPU 算力。

4. 运行(Run)

向处于活动状态的部署提交 API 格式的工作流。

快速开始

当本地安装和 API 格式的工作流准备就绪后,使用以下命令: 利用 compute 命令的输出选择有效的区域和 GPU。按需替换 <region>l4;将 deploy up 打印的部署 ID 复制到最后一条命令中。
1

初始化

2

创建发布版本

该命令会同步 Build 并为指定目标创建一个发布版本。
3

启动部署

如果你尚不清楚有哪些可用的区域和 GPU 类型,请先查询:
然后创建或协调部署:
deploy up 会打印新的部署 ID。如果之后需要取回它,可以列出该 Build 处于就绪状态的部署:
将返回的 dep_... 值用于 --deployment
4

运行工作流

CLI 会提交 API 格式的工作流,并将其输出下载到 ./results

构建文件

comfy-build.yaml 是 Build 的本地事实来源(source of truth)。它保存 Build 定义和最近一次已知的远程状态,因此 CLI 可以自动选择正确的 Build,并在本地更改覆盖较新的远程定义之前发出警告。 请将此文件与项目放在一起。它描述的是 Build,本身并不包含模型字节。

1. 初始化 Build

从本地 ComfyUI 安装开始。该命令会扫描模型和自定义节点,然后写入 comfy-build.yaml
在推送之前,检查本地规格与本地安装及远程 Build 的差异:

2. 更新与发布

修改本地 ComfyUI 安装后,刷新本地构建定义:
若想走快捷路径,可用一条命令推送定义并为目标发布:
当需要从现有 Build 创建另一个发布版本时,先查看支持的构建目标,再显式切出发布版本:
跟踪某个发布版本的构建日志:

区域与 GPU 可用性

区域容量会变化,因此不要将静态列表复制到脚本中。选择部署目标时,请查询平台目录:
使用 --region <region> 过滤结果:
将返回的 regiongpu 组合复制到 comfy deploy up 中:
在部署时,该目录是各区域可用 GPU 类型的事实来源。

3. 部署发布版本

先查询区域内可用的算力,然后为所选发布版本创建或调整部署:
--min--max 设置工作节点(worker)数量的上下限。使用 comfy deploy status --watch 跟踪部署健康状况、发布版本新旧程度以及服务活动。

4. 运行工作流

向已就绪的部署提交 API 格式的工作流
也可以通过 Comfy SDK 调用该端点,只需将 COMFY_BASE_URL 设置为部署 URL。SDK 请求仍需要 API 密钥:参见选择基础 URL

运维部署

查看与清理

删除部署与删除 Build 是两个相互独立且不可逆的操作。在使用 comfy deploy delete --yescomfy build delete --id bld_123456 --yes 之前,请确认操作对象。

FAQ

Comfy API 部署是一个托管、可自动扩缩容的端点,用于运行 API 格式的工作流。使用 comfy deploy runComfy SDK 提交工作流。
可以。在 Builder 中上传一个或多个工作流,以预选它们的模型和自定义节点。请包含你计划运行的所有工作流所需的依赖关系,然后将每个 API 格式的工作流提交到已部署的端点。每个部署使用一种 GPU 类型。要在不同的 GPU 类型上运行工作流,请为同一个 Build 创建多个独立的部署。
不会。Build 及其发布版本免费存储在你的账户中。在部署之前,Build 的存储占用不会产生费用。存储计费从部署开始:
  • 当你部署某个发布版本时,其模型会被暂存到该部署的 worker 所共享的网络存储上。部署完成后该存储为只读,并且只要该 Build 在该区域存在任何部署,就会按每 GB-月计费,包括使用 comfy deploy stop 暂停部署期间。
  • 每个 worker 还会获得一个固定的 50 GB 容器磁盘。它是临时的,仅在 worker 运行时作为其计算成本的一部分计费。
  • 删除部署会释放其计算资源。在该区域使用该 Build 的最后一个部署被删除后不久,暂存的网络存储会被清理,其计费也随之结束。
当前的存储费率请参见 Comfy 定价页面。计算目录(comfy deploy refs compute)和部署对话框也会显示适用于该部署的费率。
--min 设置 活跃 worker 的数量:这些 worker 始终保持运行,因此请求永远不会等待冷启动。活跃 worker 在整个运行期间按秒计费,无论它是否正在处理任务。超过 --min、最多到 --max 的 worker 是 弹性 worker。弹性 worker 从启动那一刻起(包括启动和模型加载)按秒计费,贯穿任务处理过程,再加上一个短暂的闲置窗口(当前为 30 秒)后才会缩容。弹性 worker 缩容后不产生任何费用。使用 --min 0 时,整个部署会缩容到零,空闲时不产生计算费用,代价是首次请求会有冷启动。计费按 worker 的实际每秒使用量乘以正在运行的 worker 数量来计算。如果你的工作区积分已用完,部署会被自动停止。当前的每 worker GPU 费率请参见 Comfy 定价页面。费率以每 worker-小时报价,并按秒计费。各区域的 GPU 可用性来自计算目录:运行 comfy deploy refs compute 可获取当前列表。
部署会自动将请求分发到各个 worker,并在配置的 --min--max 范围内扩缩容。无法立即运行的请求会被排队,并在 worker 容量可用时依次处理。
跟踪部署状态,然后检查其日志和事件以找出原因:
如果所选 GPU 或区域没有容量,请稍后重试,或运行 comfy deploy refs compute 选择一个可用的区域和 GPU 组合。寻求帮助时,请附上 Build、发布版本和部署 ID。
删除部署会移除其端点并释放其计算资源。它不会删除 Build 或其发布版本。在你删除某区域中使用该 Build 的最后一个部署后,其暂存的网络存储会被清理,存储计费也会随之很快结束。删除 Build 是另一项单独的操作:comfy build delete --id <build-id> --yes

后续步骤