ComfyUI与Cog的完美结合:轻松部署AI工作流
ComfyUI作为一个功能强大的AI工作流工具,正在受到越来越多人的青睐。但是,如何将ComfyUI工作流快速部署并通过API调用呢?本文将为你详细介绍cog-comfyui项目,这是一个将ComfyUI与Cog完美结合的解决方案,让你能够轻松在Replicate平台上部署和运行ComfyUI工作流。
cog-comfyui项目简介
cog-comfyui是由GitHub用户fofr开发的开源项目,旨在为ComfyUI提供API接口,使其能够在Replicate平台上运行。该项目的主要特点包括:
- 支持在Replicate上运行ComfyUI工作流
- 包含多种流行的模型权重和自定义节点
- 提供多种部署选项,包括公共模型、私有部署和自定义fork
- 详细的使用指南和本地开发说明
让我们深入了解如何使用cog-comfyui来部署你的ComfyUI工作流。
使用步骤
1. 获取API JSON
首先,你需要获取ComfyUI工作流的API版本JSON。这与常见的JSON版本不同,不包含节点的可视化信息。获取方法如下:
- 在ComfyUI设置中启用"Enable Dev mode Options"
- 将你的工作流加载到ComfyUI中
- 使用"Save (API format)"按钮导出API JSON
2. 准备输入文件
如果你的模型需要输入文件(如img2img或controlnet的图像),你有三种选择:
- 使用URL:修改API JSON文件,将图像路径改为URL
- 上传单个输入:上传单个文件,它将被保存为
input.[extension]
- 上传ZIP或TAR文件:包含多个输入文件,将被解压到
input
目录
3. 运行工作流
准备好所有输入后,你就可以运行工作流了。如果需要返回临时文件(如预处理的controlnet图像),可以启用return_temp_files
选项。
使用专用实例
为了获得更好的性能和稳定性,建议使用专用实例来运行你的工作流。有三种选择:
- 创建私有部署:最简单的方法,但需要支付设置和空闲时间的费用
- 使用Cog创建和部署fork:最强大但最复杂的方法
- 从train标签页创建新模型:简单,可以是公共或私有模型,还可以使用自己的权重
创建私有部署
- 访问 https://replicate.com/deployments/create
- 选择
fofr/any-comfyui-workflow
作为要部署的模型 - 选择硬件和实例数量
- 完成部署
使用Cog创建和部署fork
- 使用cog-comfyui仓库作为模板创建自己的模型
- 修改
custom_nodes.json
和cog.yaml
以添加或删除所需的自定义节点 - 运行
./scripts/install_custom_nodes.py
安装自定义节点 - 添加工作流为
workflow_api.json
- 更新
predict.py
中的API和update_workflow
方法 - 使用
cog predict
在GPU上测试模型 - 使用
cog push
将模型推送到Replicate
从train标签页创建新模型
- 访问 https://replicate.com/fofr/any-comfyui-workflow/train
- 提供权重的公共或私有URL(来自HuggingFace或CivitAI)
- 运行训练,获得自定义权重的ComfyUI模型
本地开发
如果你想在本地开发和测试cog-comfyui,可以按以下步骤操作:
- 克隆仓库:
git clone --recurse-submodules https://github.com/fofr/cog-comfyui.git
- 安装自定义节点:
./scripts/install_custom_nodes.py
- 从Cog容器运行Web UI:
- 在GPU机器上启动Cog容器并暴露8188端口
- 在容器内启动ComfyUI服务器
- 从本地机器访问
http://<gpu-machines-ip>:8188
结语
cog-comfyui项目为ComfyUI用户提供了一个强大而灵活的部署解决方案。通过将ComfyUI与Cog和Replicate平台结合,你可以轻松地将复杂的AI工作流转化为可通过API调用的服务。无论你是想快速尝试,还是需要为生产环境部署稳定的模型,cog-comfyui都能满足你的需求。
希望本文能帮助你更好地理解和使用cog-comfyui项目。如果你在使用过程中遇到任何问题,欢迎查阅项目的GitHub页面或提出issue。让我们一起探索ComfyUI和Cog的无限可能性,创造出更多令人惊叹的AI应用!
🚀 快来试试cog-comfyui,让你的ComfyUI工作流插上API的翅膀吧! 🎨✨