弹性算力
弹性算力 Beta 可以让 DFCine 在执行 ComfyUI 工作流时,自动从已经配置并允许参与调度的算力中选择当前负载较低的在线实例。你仍然可以随时切回原来的手动选择模式。
弹性算力只影响 ComfyUI 类型的工作流。阿里百炼、xAI、APIMart 等外部 API 工作流继续使用各自的 API 配置和执行流程,不会查询或占用 ComfyUI 算力。
使用前准备
弹性模式至少需要一台已经配置的 ComfyUI 算力。只配置一台也可以开启,DFCine 会在执行前检查它是否在线。
可以参与弹性调度的算力包括:
- 本地 ComfyUI:先在设置中选择并保存 ComfyUI 启动脚本。配置完成后,本地算力会显示在算力控制面板中。
- 仙宫云:在“设置 > 云算力”中填写容器 ID 和端口并保存。
- AutoDL:在“设置 > 云算力”中填写完整的 ComfyUI 服务地址并保存。
- LightCC:在“设置 > 云算力”中填写完整的 HTTPS ComfyUI 服务地址并保存。
- 自定义 ComfyUI:在“设置 > 云算力”中填写可以访问的 HTTP 或 HTTPS ComfyUI 服务地址并保存。
远程算力配置中有“参与弹性算力调度”开关。关闭后,该实例仍可在手动模式下选择,但不会进入弹性候选列表。没有保存完整配置的算力不会显示在画布的算力控制面板中。
开启弹性算力
- 进入画布,打开顶部的“算力控制”面板。
- 确认需要使用的本地或远程 ComfyUI 已经显示在列表中。
- 点击“弹性算力 Beta”。
- 面板会显示已启用的候选数量,以及每台算力的连接状态。
- 在画布节点上正常点击“执行”。
弹性模式下,算力列表中的“参与候选”表示这台算力已经被允许参与调度,不代表它此刻一定在线。“已连接”或“未连接”才是当前检测到的连接状态。
执行时如何选择算力
每次执行 ComfyUI 工作流时,DFCine 会并行访问候选 ComfyUI 的 /queue 接口,读取正在执行和等待中的任务数量,然后选择当前有效负载较低的在线实例。
- 有空闲算力时,优先分配给负载较低的空闲实例。
- 所有算力都忙时,优先选择正在执行和排队任务较少的实例。
- 多个实例负载相同时,会结合最近的分配记录和配置顺序进行均衡选择。
- 同时连续提交多个任务时,DFCine 会记录尚未出现在 ComfyUI 队列中的近期分配,减少多个新任务同时落到同一台算力的情况。
- 返回错误、超时、HTTP 503 或无法访问的实例会在本次分配中临时跳过;恢复连接后,后续任务可以再次使用它。
- 如果所有候选都离线或无法访问,本次执行会失败并显示无可用弹性算力的提示,不会把任务提交到离线实例。
执行前的状态检查通常很快;当某些远程地址无法访问时,可能需要等待短暂的连接超时。
查看任务和进度
工作流被分配后,画布节点会继续显示执行状态;实际使用的算力及其任务信息可以在算力控制面板中的对应卡片查看。算力卡片会显示:
- 当前任务名称;
- 正在执行和排队的任务数量;
- ComfyUI 返回进度时的进度条和数值,例如
1/8。
点击算力卡片下方的任务摘要,可以打开完整的“执行任务”面板查看或取消任务。
每个任务在提交时就会绑定到选中的算力。任务运行期间切换到手动模式,或者手动选择另一台算力,都不会迁移或中断已经提交的任务;新的 ComfyUI 任务会按照切换后的模式执行。
切回手动选择
打开“算力控制”面板并点击“手动选择”,即可恢复原来的模式。手动模式下,点击算力列表中的本地或远程实例,会将后续 ComfyUI 工作流固定到该实例执行。
弹性模式下的算力行只用于展示候选资格、连接状态和任务进度,点击算力行不会自动退出弹性模式。
模型检查和输入文件
- 分配到本地 ComfyUI 时,继续执行原有的本地模型和路径检查。
- 分配到远程或云端 ComfyUI 时,继续使用云端执行逻辑,不检查本机是否安装对应模型。
- 需要的图片、视频等输入素材会按照该远程算力的配置上传到对应 ComfyUI。
注意事项
- 候选算力的 ComfyUI 服务必须能够被当前电脑访问,并提供标准的
/queue、/prompt、WebSocket 和历史记录等接口。 - 任务已经在某台算力上执行后,即使该实例随后断开,也不会自动迁移到另一台算力。
- 清空配置或关闭“参与弹性算力调度”只影响之后的新任务,不会改变已有任务的运行绑定。
- 如果清空或停用了最后一台候选算力,请切回手动模式或重新启用至少一台候选,否则下一次 ComfyUI 执行会提示没有可用算力。
- 当前弹性模式下,全局“清理内存和显存”仍作用于最后一次手动选择的 ComfyUI,而不是自动清理所有候选算力。清理前请先确认目标,避免影响正在运行的任务。
