
timpietruskyblibla/runpod-worker-comfyComfyUI 作为 RunPod 上的无服务器API
和VAE(ae.safetensors)timpietruskyblibla/runpod-worker-comfy:3.6.0-flux1-dev: 包含FLUX.1-dev的检查点、文本编码器和VAEtimpietruskyblibla/runpod-worker-comfy:3.6.0-sdxl: 包含Stable Diffusion XL的检查点和VAE(sdxl_vae.safetensors和sdxl-vae-fp16-fix)timpietruskyblibla/runpod-worker-comfy:3.6.0-sd3: 包含Stable Diffusion 3 medium的检查点(sd3_medium_incl_clips_t5xxlfp8.safetensors)| 环境变量 | 描述 | 默认值 |
|---|---|---|
REFRESH_WORKER | 如需在每个任务完成后停止worker以保持干净状态,设为true(详见官方文档) | false |
COMFY_POLLING_INTERVAL_MS | 轮询间隔时间(毫秒) | 250 |
COMFY_POLLING_MAX_RETRIES | 最大轮询次数,长时间运行的工作流需增大此值 | 500 |
SERVE_API_LOCALLY | 启用本地API服务器用于开发和测试(详见本地测试) | 禁用 |
仅当需要将生成的图像上传至AWS S3时配置。未配置时图像将以base64编码字符串返回。
BUCKET_ENDPOINT_URL)BUCKET_ACCESS_KEY_ID和BUCKET_SECRET_ACCESS_KEY)| 环境变量 | 描述 | 示例 |
|---|---|---|
BUCKET_ENDPOINT_URL | S3存储桶的端点URL | https://<bucket>.s3.<region>.amazonaws.com |
BUCKET_ACCESS_KEY_ID | 访问S3存储桶的AWS访问密钥ID | AKIAIOSFODNN7EXAMPLE |
BUCKET_SECRET_ACCESS_KEY | 访问S3存储桶的AWS密钥 | wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY |
runpod-worker-comfy(可自定义)<dockerhub_username>/<repository_name>:tag,例如timpietruskyblibla/runpod-worker-comfy:3.6.0-sd3(或-base为干净镜像,-sdxl为Stable Diffusion XL,-flux1-schnell为FLUX.1 schnell)20 GB保存模板导航至无服务器 > 端点并点击新建端点
在对话框中配置:
comfy0(根据需求调整)3(根据需求调整)15(默认值)启用(不增加成本,加快worker启动速度)runpod-worker-comfy(或自定义模板名称)高级 > 选择网络卷中选择点击部署
端点创建后,点击进入查看仪表板
| 模型 | 镜像 | 最低VRAM要求 | 容器大小 |
|---|---|---|---|
| Stable Diffusion XL | sdxl | 8 GB | 15 GB |
| Stable Diffusion 3 Medium | sd3 | 5 GB | 20 GB |
| FLUX.1 Schnell | flux1-schnell | 24 GB | 30 GB |
| FLUX.1 dev | flux1-dev | 24 GB | 30 GB |
以下描述API请求中所需的字段。仅说明input中的字段,这些是worker必需的。完整字段列表详见官方文档。
json{ "input": { "workflow": {}, "images": [ { "name": "example_image_name.png", "image": "base64_encoded_string" } ] } }
| 字段路径 | 类型 | 是否必需 | 描述 |
|---|---|---|---|
input | 对象 | 是 | 包含请求数据的顶层对象 |
input.workflow | 对象 | 是 | ComfyUI工作流配置 |
input.images | 数组 | 否 | 图像数组,每张图像将添加到ComfyUI的"input"文件夹,可通过name在工作流中引用 |
图像数组,每张图像需有唯一名称。
🚨 RunPod端点的请求体大小限制:/run为10 MB,/runsync为20 MB,因此输入图像不宜过大(详见官方文档)
| 字段名 | 类型 | 是否必需 | 描述 |
|---|---|---|---|
name | 字符串 | 是 | 图像名称,需与工作流中引用的名称一致 |
image | 字符串 | 是 | 图像的base64编码字符串 |
生成API密钥:
API密钥,然后点击生成API密钥按钮。使用API密钥:
<api_key>替换为你的密钥。使用端点:
<endpoint_id>替换为端点ID(点击端点后,ID显示在顶部名称下方,也包含在底部URL中)。!如何查找EndpointID
bashcurl -H "Authorization: Bearer <api_key>" [***]<endpoint_id>/health
可使用/run(异步)或/runsync(同步)创建任务。以下示例使用同步任务,等待响应返回。
API期望的JSON格式中,workflow为从ComfyUI导出的JSON工作流,images为可选。
详见test_input.json了解API输入格式。
bashcurl -X POST -H "Authorization: Bearer <api_key>" -H "Content-Type: application/json" -d '{"input":{"workflow":{"3":{"inputs":{"seed":1337,"steps":20,"cfg":8,"sampler_name":"euler","scheduler":"normal","denoise":1,"model":["4",0],"positive":["6",0],"negative":["7",0],"latent_image":["5",0]},"class_type":"KSampler"},"4":{"inputs":{"ckpt_name":"sd_xl_base_1.0.safetensors"},"class_type":"CheckpointLoaderSimple"},"5":{"inputs":{"width":512,"height":512,"batch_size":1},"class_type":"EmptyLatentImage"},"6":{"inputs":{"text":"beautiful scenery nature glass bottle landscape, purple galaxy bottle,","clip":["4",1]},"class_type":"CLIPTextEncode"},"7":{"inputs":{"text":"text, watermark","clip":["4",1]},"class_type":"CLIPTextEncode"},"8":{"inputs":{"samples":["3",0],"vae":["4",2]},"class_type":"VAEDecode"},"9":{"inputs":{"filename_prefix":"ComfyUI","images":["8",0]},"class_type":"SaveImage"}}}}' [***]<endpoint_id>/runsync
AWS S3配置下的响应示例
json{ "delayTime": 2188, "executionTime": 2297, "id": "sync-c0cd1eb2-068f-4ecf-a99a-55770fc77391-e1", "output": { "message": "[***]", "status": "success" }, "status": "COMPLETED" }
base64编码图像的响应示例
json{ "delayTime": 2188, "executionTime": 2297, "id": "sync-c0cd1eb2-068f-4ecf-a99a-55770fc77391-e1", "output": { "message": "base64encodedimage", "status": "success" }, "status": "COMPLETED" }
设置(菜单右上角的齿轮图标)Enable Dev mode Options设置Save (API Format)按钮,下载名为workflow_api.json的文件将该文件内容放入API请求的workflow字段中即可。
使用网络卷可存储和访问自定义模型:
创建网络卷:
填充卷内容:
管理 > 存储,点击卷下的部署,部署任意GPU或CPU实例。管理 > Pods,在新Pod下点击连接打开终端(Jupyter notebook或SSH)。bash






manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务