# ComfyUI **Repository Path**: soraandhuru/comfyui ## Basic Information - **Project Name**: ComfyUI - **Description**: 这是一个ComfyUI的使用教程和API调用实例 - **Primary Language**: Python - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 3 - **Forks**: 0 - **Created**: 2025-07-16 - **Last Updated**: 2026-03-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 🎨 ComfyUI Python 客户端 - 小白使用指南 > **超级简单!** 只需 3 步就能让你的 ComfyUI 工作流跑起来! ## 🚀 这是什么? 这是一个 Python 程序,可以让你: - 👆 **不用点鼠标** - 用代码控制 ComfyUI - 🔄 **批量处理** - 一次处理多张图片 - ⚡ **自动化** - 设置好参数自动运行 - 🎯 **精确控制** - 想改什么参数就改什么 ## 📋 你需要什么? ### 必备条件: - ✅ **ComfyUI 已经安装并能正常运行** (如果没有,请先看:[ComfyUI 小白入门指南](./ComfyUI-Guide.md)) - ✅ **Python 3.7 或更高版本** - ✅ **一个 ComfyUI 工作流文件** (.json 格式) ### 检查 ComfyUI 是否正常: 1. 启动 ComfyUI 2. 浏览器打开 `http://127.0.0.1:8188` 3. 能看到节点界面 = ✅ 正常 ## 图文教程 ### 1. 启动 ComfyUI ![启动 ComfyUI](./image/启动ComfyUI.png) 按照指南启动 ComfyUI,确保服务运行在 `http://127.0.0.1:8188`。 ### 2. 文件夹目录结构 ![文件夹目录结构](./image/文件夹目录结构.png) 确保项目文件夹结构正确,特别是 `models` 和 `input` 文件夹。 ### 3. 输入图片准备 ![输入图片](./image/输入图片.png) 将输入图片放置在 `input` 文件夹中,文件名为 `input.png`。 ### 4. 输出图片查看 ![输出图片](./image/输出图片.png) 生成的图片会保存在 `output` 文件夹中。 ### 5. 客户端页面 ![ComfyUI 工作流](./image/ComfyUI工作流.png) 运行 `api/run_comfyui.bat` 文件即可一键启动 API 客户端,完成工作流运行。 ## 🛠️ 安装步骤(3步走) ### 第1步:创建虚拟环境 ```bash # 打开命令行,输入: python -m venv venv # Windows 用户: venv\Scripts\activate # Mac/Linux 用户: source venv/bin/activate ``` ### 第2步:安装依赖 ```bash # 直接复制粘贴这行命令: pip install -r requirements.txt ``` ### 第3步:准备工作流文件 确保你有一个 `czh.json` 文件(ComfyUI 导出的 API 格式工作流) ## 🎯 开始使用(复制粘贴就能用) ### 最简单的用法: ```python from czh import ComfyUIClient # 连接到 ComfyUI(确保 ComfyUI 正在运行) client = ComfyUIClient("127.0.0.1", 8188) # 设置你想要的参数 inputs = { "load_image": "./input/input.png", # 输入图片路径 "prompt": "add beautiful flowers", # 你想要的效果 "sampler_seed": 12345, # 随机种子 "save_image": "my_output" # 输出文件名前缀 } # 运行! images = client.run_workflow( workflow_api_json_path="czh.json", node_mapping={ "load_image": {"node_id": "142", "field": "image"}, "prompt": {"node_id": "6", "field": "text"}, "sampler_seed": {"node_id": "31", "field": "seed"}, "save_image": {"node_id": "136", "field": "filename_prefix"} }, inputs=inputs, output_dir="./output" ) print(f"生成的图片保存在:{images}") ``` ## 📁 文件结构 ``` 你的文件夹/ ├── czh.py # 主程序(不要动) ├── czh.json # 工作流文件(从 ComfyUI 导出) ├── requirements.txt # 依赖列表(不要动) ├── README.md # 这个说明文件 ├── input/ # 放输入图片的地方 │ └── input.png # 你的输入图片 └── output/ # 生成的图片会出现在这里 └── (生成的图片) ``` ## 🔧 自定义参数 ### 想改提示词? ```python inputs = { "prompt": "把这里换成你想要的效果描述", # ... 其他参数 } ``` ### 想改输出文件名? ```python inputs = { "save_image": "你的文件名前缀", # ... 其他参数 } ``` ### 想用不同的种子? ```python import time inputs = { "sampler_seed": int(time.time()), # 每次都不同 # 或者 "sampler_seed": 42, # 固定种子 # ... 其他参数 } ``` ## 🚨 常见问题 ### Q: 程序报错了怎么办? **A: 按顺序检查:** 1. ✅ ComfyUI 是否正在运行?(浏览器能打开 `http://127.0.0.1:8188`) 2. ✅ 虚拟环境是否激活?(命令行前面有 `(venv)` 字样) 3. ✅ 依赖是否安装?(重新运行 `pip install -r requirements.txt`) 4. ✅ 工作流文件是否存在?(`czh.json` 在正确位置) ### Q: 找不到输入图片? **A: 检查路径:** ```python # 确保图片路径正确 inputs = { "load_image": "./input/你的图片名.png", # 注意文件名和扩展名 } ``` ### Q: 生成的图片在哪里? **A: 在 `output` 文件夹里:** - 程序会自动创建 `output` 文件夹 - 生成的图片会有时间戳或序号后缀 ### Q: 想要批量处理怎么办? **A: 用循环:** ```python import os # 获取所有输入图片 input_folder = "./input" for filename in os.listdir(input_folder): if filename.endswith(('.png', '.jpg', '.jpeg')): inputs = { "load_image": f"./input/{filename}", "prompt": "add beautiful flowers", "save_image": f"processed_{filename.split('.')[0]}" } # 运行工作流... ``` ## 🎓 进阶技巧 ### 想要更多控制? ```python # 完整的参数控制 inputs = { "load_image": "./input/input.png", "prompt": "add 10 birds flying in the remote sky", "sampler_seed": 80097405162545, "sampler_steps": 20, # 采样步数 "sampler_cfg": 1, # CFG 强度 "guidance": 2.5, # Flux 引导强度 "save_image": "czh" } ``` ### 想要监控进度? 程序会自动显示进度信息: ``` 正在上传图片... 任务已提交,Prompt ID: abc123 正在等待任务执行... 任务完成! ``` ## 🔚 完成后记得 ```bash # 退出虚拟环境 deactivate ``` ## 💡 小贴士 - 🎯 **第一次使用**:先用简单的参数测试 - 📝 **保存设置**:把常用的参数保存到单独的文件 - 🔄 **多次尝试**:不满意就改改参数再试 - 📚 **学习更多**:看看 [ComfyUI 入门指南](./ComfyUI-Guide.md) ## 📖 文档怎么看? ### 🔰 完全新手?先看这个: **[ComfyUI 小白入门指南](./ComfyUI-Guide.md)** - 📝 什么是 ComfyUI? - 🛠️ 怎么安装 ComfyUI? - 🎯 怎么获取工作流? - 🔧 怎么理解 JSON 文件? ### 📋 已经会用 ComfyUI?看这个: **当前这个文件 (README.md)** - ⚡ 快速上手 Python 客户端 - 🎮 复制粘贴就能用 - 🔧 常见问题解决 ### 🤔 想深入了解?看这些: #### 1. **理解你的工作流** ```bash # 用记事本或 VS Code 打开你的工作流文件 czh.json ``` - 找到数字 ID(如 "6", "31", "136") - 看看 `inputs` 里有什么参数 - 对照代码中的 `node_mapping` #### 2. **程序文件结构** ```bash czh.py # 主程序,里面有详细注释 ``` - 🔍 搜索 `class ComfyUIClient` 了解功能 - 🔍 搜索 `def run_workflow` 了解核心方法 - 🔍 搜索 `# 示例` 了解使用方法 #### 3. **在线资源** - 🌐 [ComfyUI 官方文档](https://github.com/comfyanonymous/ComfyUI) - 🎥 [B站教程搜索](https://search.bilibili.com/all?keyword=ComfyUI) - 💬 [Reddit 社区](https://www.reddit.com/r/comfyui/) ### 📚 学习顺序建议: ``` 第1步:ComfyUI-Guide.md (了解基础概念) ↓ 第2步:README.md (学会使用 Python 客户端) ↓ 第3步:czh.py (深入理解代码逻辑) ↓ 第4步:在线资源 (学习更多高级技巧) ``` ### 🆘 遇到问题怎么办? 1. **看错误信息**: - 红色文字通常是错误原因 - 复制错误信息到搜索引擎搜索 2. **检查步骤**: - 按照文档一步一步重新操作 - 确保每一步都成功了 3. **简化测试**: - 用最简单的参数先试试 - 一个参数一个参数慢慢加 4. **寻求帮助**: - 把错误信息和你的代码截图 - 到相关社区求助 --- **🎉 恭喜!现在你已经是 ComfyUI 自动化专家了!** 有问题?没关系,慢慢来,多试几次就熟练了! 💪