阿里云国际站代理商:人工智能平台 PAI-AI视频生成-ComfyUI部署
ComfyUI是基于Stable Diffusion的节点式AIGC工具,用于短视频内容生成和动画制作。EAS支持场景化部署ComfyUI服务。
开始之前
重要限制与注意事项
部署前必读:了解以下关键限制,以避免资源浪费和常见错误。
-
部署资源:推荐使用GU30、A10或T4卡型,其中
ml.gu7i.c16m60.1-gu30性价比高。每个 EAS 实例仅运行一个 ComfyUI 进程,仅支持单张 GPU(单机单卡或多机单卡),不支持多卡并行推理。请勿选择多卡 GPU 规格(如
2*A10等),这会造成资源浪费且无法提升单任务的性能。 -
水平扩展方式:如需提升并发处理能力,请使用API版并增加副本数量,而非选择多卡规格。
-
存储准备:如需使用自定义模型、安装自定义节点或通过API调用,必须提前创建OSS存储空间或NAS文件系统。详见对象存储OSS快速入门。
EAS 不支持通过 ComfyUI 管理器或 Git Clone 等方式从网络直接安装自定义节点(插件)。所有自定义内容都必须通过挂载存储的方式上传。
选择部署版本
根据使用场景选择合适的版本:
|
部署版本 |
适用场景 |
调用方式 |
主要特点 |
计费模式 |
|
部署版本 |
适用场景 |
调用方式 |
主要特点 |
计费模式 |
|
标准版 |
单用户开发和测试 |
|
|
如果使用公共资源部署,实例拉起资源即开始按时长计费,即使无调用。 |
API版 |
生产环境高并发 |
API调用(异步) |
|
|
|
集群版WebUI |
多用户团队和教学 |
WebUI |
|
更多计费详情请参见模型在线服务(EAS)计费说明。
此处API调用的同步与异步取决于是否使用EAS的队列服务:
-
同步调用:直接请求推理实例,不使用EAS的队列服务;
-
异步调用:使用EAS的队列服务,向输入队列发送请求,以订阅的方式获得结果推送。
由于ComfyUI本身具有异步队列系统,即使发起同步调用,实际也是异步执行的。发送请求后,系统返回一个Prompt ID,您需要用该ID轮询获取推理结果。
部署服务
标准版、集群版、API版:可使用场景化模型部署(操作简单)或者自定义模型部署(支持更多功能)。
通过WebUI使用
标准版和集群版支持通过WebUI使用。
进入Web界面
单击目标服务名称进入概览页面,在右上角单击Web应用。
如页面长时间无法打开,请参见刷新页面时间过长或页面卡死。
使用模板工作流
ComfyUI为常见任务提供预置模板。
-
ComfyUI不同镜像版本中的模板有差别,若无示例模板,可选择其他模板使用。也可以加载本地文件系统中的工作流使用。

-
工作流加载成功后,如遇到报错缺少模型,可忽视(建议勾选不再显示此消息)。
-
由于路径变更,直接运行工作流可能会出现以下报错。

请先在Load models here区域重新选择模型
wan2.1_vace_14B_fp16.safetensors与Wan21_CausVid_14B_T2V_lora_rank32.safetensors。
-
工作流运行成功后,会在Save Video区域,展示生成的视频。

使用自定义模型和节点
-
确认服务已配置存储挂载。如使用自定义部署,需在运行命令中增加参数
--data-dir挂载目录,详情见方式二:自定义模型部署。服务部署成功后,系统会自动在已挂载的OSS或NAS存储空间中创建如下目录结构。
data-oss/ ├── custom_nodes/ # 存放节点文件(ComfyUI插件) ├── models/ # 存放模型文件 ├── input/ ├── output/ ├── unet/ └── temp/ -
上传模型或节点文件。以OSS为例,可控制台上传文件到OSS。对于大文件,请参见如何上传大文件到OSS?。
-
模型文件上传:根据模型使用节点的源项目库使用说明,将模型上传至
models下的对应子目录。例如:-
Checkpoint加载器:模型上传至
models/checkpoints。 -
风格模型加载器:模型上传至
models/styles。
-
-
节点文件上传:推荐您将自定义节点上传至挂载存储的
custom_nodes目录。
-
-
加载新内容。
-
模型:单击PaiCustom>加载新模型,如仍然找不到模型,单击重启进程,重启成功后,刷新浏览器页面。
-
节点:直接单击重启进程。重启成功后,刷新浏览器页面。
-
导出工作流
在WebUI中调试好工作流后,将工作流保存为一个JSON文件,用于后续的API调用。

API调用
API调用概述
通过API调用ComfyUI服务,可将其集成到您的应用中实现自动化内容生成。核心流程:提交工作流JSON → 获取任务ID → 用任务ID获取生成结果。
标准版服务仅支持同步调用,并且提供在线调试。
API版服务仅支持异步调用,且仅支持api_prompt路径。
关键准备工作:ComfyUI的API请求体取决于工作流配置。请先在WebUI页面设置并导出工作流的JSON文件。
结果下载:生成的图片或视频存储在挂载的
output目录中,API调用的结果返回的是文件名和子目录名。对于OSS,需自行拼接完整的文件路径进行下载,请参见使用阿里云SDK下载OSS文件。准备API请求体
根据调用方式的不同,请求体格式有所差异:
-
同步调用:请求体需要将工作流JSON文件内容包装在”prompt”键值下面。
-
异步调用:请求体就是工作流JSON文件内容。
因为上述Wan VACE Text to Video的工作流运行比较耗时,为方便测试提供以下工作流(运行一次需要约3分钟)。
同步调用
同步调用直接向EAS服务实例发送请求,适合开发测试和低并发场景。
在线调试:在线调试可在控制台直接测试API调用,无需编写代码,适合快速验证工作流配置。
在模型在线服务 (EAS)页面,单击目标服务操作列下的在线调试,进入在线调试页面。
发送POST请求,获取Prompt ID。
-
在调试页面的在线调试请求参数区域的Body处填写已准备好的请求体。并在请求URL文本编辑框中添加
/prompt。
-
单击发送请求,即可在调试信息区域查看返回结果,示例如下。

发送GET请求,根据Prompt ID获取推理结果。
-
在在线调试请求参数区域中,将请求方法修改为GET,并在文本框中配置
/history/<prompt id>,示例如下。
其中
<prompt id>需要替换为步骤1获取的Prompt ID。 -
单击发送请求,即可获取推理结果。
您可以在挂载存储的
output目录中,查看生成的推理结果。异步调用
异步调用适用于生产环境高并发场景,基于EAS队列服务实现负载均衡。提交请求后立即返回,通过订阅结果队列获取生成结果。
异步调用仅支持api_prompt路径,其task_id参数是标识请求和结果的关键标志,请给每个请求分配一个唯一的值,以对应后面的队列结果。请求路径如下:
{service_url}/api_prompt?task_id={需分配唯一值}查看调用信息。
在推理服务页签,单击目标服务名称进入概览页面,在基本信息区域单击查看调用信息。在调用信息对话框的异步调用页签,查看服务访问地址和Token。

下文使用<EAS_ENDPOINT>指代公网输入调用地址(如果调用端与EAS处于同一VPC,可使用VPC输入调用地址),<EAS_TOKEN>指代Token。
发送请求。
订阅结果。部署问题
Q:服务一直显示等待中或者ComfyUI无法出图
通常是资源规格不够的原因。请检查服务镜像和资源规格配置是否正确,资源规格推荐使用GU30、A10或T4卡型,其中
ml.gu7i.c16m60.1-gu30性价比高。模型与节点问题
Q:WebUI显示“缺少模型”错误
问题描述:报错如下:

解决方案:此报错可以忽略。PAI部署的ComfyUI此检查无效,请以运行时的报错为准。
建议勾选不再显示此消息,或者通过设置关闭模型校验。

Q:上传了新模型但找不到
解决方案:
-
单击PaiCustom,选择加载新模型。

-
如不可见,单击重启进程。

Q:模型加载器显示undefined
首先确认模型的目录位置是否正确,这依赖于模型加载器的要求。
如在部署后上传模型,请重启服务。
Q:找不到节点
-
新安装的节点,需重启服务。
-
节点未安装,请参见使用第三方模型和安装节点(ComfyUI插件)。
Q:ComfyUI 管理器下载模型或安装节点失败
在EAS部署的ComfyUI中,不建议使用ComfyUI管理器。管理器需从GitHub等外网下载模型或插件代码,容易因网络问题失败。
建议您将模型或节点文件上传到服务挂载的存储上,详情请参见使用第三方模型和安装节点(ComfyUI插件)。
Q:如何查看当前可用的模型文件和节点(ComfyUI插件)列表
-
模型文件:在相应模型加载节点查看。例如在Checkpoint加载器的下拉列表中查看当前可用的模型文件。
-
节点:右键单击WebUI页面,在快捷菜单中单击添加节点,查看所有已安装的ComfyUI插件。
运行异常
Q:页面卡死或加载页面时间过长
-
刷新页面,清理浏览器缓存或使用无痕/隐私模式访问。
-
如挂载了存储,删除
input/、output/、temp/文件夹中的文件。 -
尝试重启服务。
Q:工作流跑一半,进程重启了
如果实例日志里面有
run.sh: line 54: 531285 Killed python -u main_run.py "$@",那就是内存oom了,内存oom之后,进程会自动重启。Q:RuntimeError: CUDA error: out of memory
显存超了,如果是图像模型就降低图像的分辨率或者batch size;视频模型降低一下帧数/分辨率。
Q:API调用报错:url not found 或404 page not found?
-
检查API端点URL是否完整。同步调用需拼接
/prompt路径。
其他
Q:xFormer的加速效果
xFormers是基于Transformer的开源加速工具,能够有效缩短图片和视频生成时长,节省显存使用。
ComfyUI镜像部署默认已开启xFormers加速。加速效果跟工作流的大小相关,针对GPU调用的内容尤其是使用NVIDIA显卡的提升比较明显。
-
-
