ComfyUI 中文使用教程
2026-08-16发表于
Ai一、速览
入门
ComfyUI 是一个基于节点图(Node Graph)的 AI 内容生成引擎,你可以把它理解为 Stable Diffusion 的「可视化编程工具」。传统 WebUI 把参数藏在表单里,而 ComfyUI 把每一环节拆成独立节点——加载模型、编写提示词、设置采样器、解码图片——用连线把它们串成一张流程图。
graph LR
A[Load Checkpoint] --> B[CLIP Text Encode]
A --> C[VAE Decode]
B --> D[KSampler]
D --> C
它的核心价值在于可控性:流程中任意节点都可以调整、替换、组合,同一张流程图改一个节点就能得到完全不同的效果。生成图片、训练 LoRA、批量处理、视频生成,都是在同一套节点体系上完成。
项目本身是纯 Python 后端加 Web 前端,本地运行后通过浏览器访问。127k Star 的数据说明它已经是开源 AI 绘画领域的事实标准之一。如果你需要精细控制生成流程,或者想尝试最新的开源模型,ComfyUI 是绕不开的工具。
二、快速部署
入门
ComfyUI 提供两种主流部署方式:Docker 和裸机 pip 安装。Docker 适合想快速跑起来、不想折腾依赖的开发者;裸机安装则对显存利用和版本控制更灵活。
Docker 部署(推荐新手)在项目目录下创建一个 docker-compose.yml:
services:
comfyui:
image: comfyorg/comfyui:latest
ports:
- "8188:8188"
volumes:
- ./models:/app/ComfyUI/models
- ./output:/app/ComfyUI/output
- ./custom_nodes:/app/ComfyUI/custom_nodes
- ./user:/app/ComfyUI/user
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: all
capabilities: [gpu]
启动命令同样简洁:
docker compose up -d
docker compose logs -f comfyui # 查看启动日志
启动完成后浏览器访问 http://localhost:8188 即进入节点编辑界面。
注意:NVIDIA 显卡需要提前安装 nvidia-container-toolkit,否则容器无法调用 GPU。AMD 用户需要额外设置
HSA_OVERRIDE_GFX_VERSION=11.0.0环境变量(仅 RDNA3 架构)。
裸机安装适合已有 Python 3.10+ 环境的情况。官方推荐的安装器是 comfy-cli:
pip install comfy-cli
comfy install
安装器会引导你选择 PyTorch 版本和模型路径。如果你习惯直接跑源码,也可以手动克隆并安装依赖:
git clone https://github.com/comfyanonymous/ComfyUI.git
cd ComfyUI
pip install -r requirements.txt
python main.py
main.py 启动后同样监听 8188 端口。两种方式的效果没有差别,区别只在于依赖管理的方式。
三、配置详解
进阶 · 推荐细读
ComfyUI 的配置集中在启动参数、环境变量和 extra_model_paths.yaml 三个层面。理解它们能帮你解决「模型放哪」「怎么换路径」「多模型如何管理」等高频问题。
3.1 环境变量
| 变量名 | 作用 | 示例 |
|---|---|---|
COMFYUI_PYTHON |
指定 Python 解释器路径(Docker 场景常用) | /usr/bin/python3.11 |
COMFYUI_UV |
使用 uv 加速依赖安装 | 1 |
COMFYUI_TUNABLEOP |
启用 PyTorch 可调算子优化(AMD ROCm 用户可尝试) | 1 |
PYTORCH_TUNABLEOP_ENABLED |
ROCm 下的算子调优开关,首次运行会非常慢,之后变快 | 1 |
NVIDIA_DRIVER_CAPABILITIES |
Docker 下启用 GPU 需要的声明 | all |
CLI_ARGS |
透传给 main.py 的启动参数 |
--listen 0.0.0.0 --port 8188 |
CLI_ARGS 是最常用的一个。通过它可以把启动参数写进 Docker Compose 或 systemd 服务文件,不用手动敲命令。例如:
services:
comfyui:
environment:
- CLI_ARGS=--listen 0.0.0.0 --port 8188 --disable-auto-launch
3.2 模型目录结构
默认模型目录在项目根目录的 models 文件夹下,内部结构有约定:
models/
├── checkpoints/ # 主模型(SD1.5 / SDXL / Flux)
├── loras/ # LoRA 微调模型
├── vae/ # VAE 模型
├── controlnet/ # ControlNet 模型
├── clip/ # CLIP 文本编码器
├── unet/ # UNet 组件(Flux 等新架构需要)
└── diffusion_models/
放错目录会导致节点加载模型时报「文件不存在」。如果你希望模型放在其他磁盘(比如 SSD 空间有限),需要在 extra_model_paths.yaml 中声明额外路径。
3.3 extra_model_paths.yaml 多路径配置
项目提供了 extra_model_paths.yaml.example 模板。把模板复制为 extra_model_paths.yaml 后,可以追加多个模型根目录:
other_models:
base_path: /mnt/ssd2/comfy_models
checkpoints: checkpoints
loras: loras
vae: vae
controlnet: controlnet
base_path 指向外部目录,后面的键表示该目录下对应模型的子文件夹名。配置后重启服务生效。注意本机有多个 ComfyUI 实例或想共享模型时,这是最推荐的方案。
提示:大模型文件通常几个 GB 到几十 GB,建议单独建目录存放,和项目代码分离。升级 ComfyUI 时不需要重新下载模型。
四、功能导览
入门
打开浏览器进入编辑界面后,你会看到三块区域:左侧是节点库(右键空白处可搜索节点),中间是画布(节点和连线),右侧是属性面板(选中节点后显示参数)。ComfyUI 已经内置了基础文生图工作流模板,新用户可以直接点菜单栏的「Load Default」加载。
4.1 文生图基础流程
默认工作流包含 6 个节点,对应一条完整的生成链路:加载模型 → 编码正向/负向提示词 → 采样器生成 → VAE 解码 → 渲染图像。需要调整的参数都集中在 KSampler 节点里:
- seed:随机种子,固定后输出可复现
- steps:采样步数,SD1.5 通常 20-30 步
- cfg:提示词引导强度,推荐 7-9
- sampler_name / scheduler:采样器和调度器组合
操作方式是双击空白处添加节点,或从左侧列表拖拽。连线时注意接口类型匹配:模型输出(紫色)接模型输入,条件向量(绿色)接条件输入。连线配错了节点不会执行,画布上会显示警告。
4.2 图生图 / 局部重绘
右键空白处搜索「Load Image」加载图片,再接入 VAE Encode 节点,就能把参考图编码成潜在空间张量喂给采样器。局部重绘需要额外加 Mask 节点来标记需要重新生成的区域。
4.3 扩展安装
ComfyUI 的生态靠自定义节点(Custom Nodes)扩展。访问 Manage 面板等内置工具安装扩展,或手动把项目克隆到 custom_nodes/ 目录后重启:
cd custom_nodes
git clone https://github.com/用户名/仓库名.git
常用扩展包括 ControlNet 辅助节点、视频生成工具链(AnimateDiff)和工作流管理插件。每次装完新扩展都要重启 Web 服务才能生效。
4.4 工作流导入导出
工作流本身就是一张 JSON 图。点界面右侧的「Save」下载 JSON 文件,分享给其他人后,对方用「Load」导入即可复用。社区分享的 .json 工作流本质上就是这种格式。
常见的问题是忘装依赖节点导致导入失败。导入后如果节点显示红色报错,优先检查对应自定义节点是否已安装。
五、运维进阶
进阶 · 推荐细读
部署跑通之后,接下来要考虑的是持续使用中的稳定性问题:如何安全暴露访问入口、如何升级不丢配置、如何备份已调好的工作流。
5.1 反向代理与 HTTPS
默认监听 127.0.0.1:8188,只允许本机访问。如果想让局域网内的其他设备访问,启动时加 --listen 0.0.0.0;暴露到公网则必须配反向代理和 HTTPS。Nginx 的推荐配置:
server {
listen 443 ssl;
server_name comfyui.example.com;
ssl_certificate /etc/nginx/ssl/comfyui.crt;
ssl_certificate_key /etc/nginx/ssl/comfyui.key;
location / {
proxy_pass http://127.0.0.1:8188;
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_read_timeout 600s; # 生成任务可能耗时较长
}
}
proxy_read_timeout 建议至少设 600 秒,否则超出 Nginx 默认超时时间会导致大图生成中断。
5.2 升级策略
ComfyUI 迭代较快:核心仓库每两周发布一个稳定版本,前端更新每两周合并入主分支。如果你用 Docker 部署,升级前先看变更说明:
docker compose pull
docker compose up -d
自定义节点和核心可能互相依赖版本,升级后如果节点报错,优先回到上一个版本并检查节点仓库的兼容性声明。常见的做法是升级前把 custom_nodes/ 目录整体备份一份。
5.3 数据备份
需要备份的数据分两部分:用户数据(user/ 目录)和输出图像(output/ 目录)。前者包含你保存的工作流、设置和快捷键配置,后者是生成的全部图片。模型文件不需要备份,丢失后重新下载即可。
可以用一个简单的 cron 任务做每日备份:
tar -czf comfyui_backup_$(date +%Y%m%d).tar.gz -C /path/to/comfyui user output
另外有几个实用的安全建议:不要无防护地把 8188 端口暴露到公网,因为 ComfyUI 默认不带认证;多人协作建议用 Tailscale 等内网穿透工具代替公网端口映射;生成任务密集的机器注意监控显存温度。
如需深入了解节点开发或 API 集成,官方文档 docs.comfy.org 提供了完整的节点协议和云端 API 说明。从图形界面入门,到节点编排进阶,再到 API 嵌入自己的应用,ComfyUI 的工具链足够覆盖不同阶段的需求。
项目信息
| 项目 | 值 |
|---|---|
| 仓库 | Comfy-Org/ComfyUI |
| 语言 | Python |
| Star | 127,771 |
| Fork | 15,045 |
| 主页 | https://www.comfy.org/ |
参考链接
121
72
1
1345
文章目录
评论