Loading...

文章背景图

ComfyUI:模块化节点式AI绘画工作流引擎安装与使用指南

2026-06-23
0
- 字
- 分钟
|

ComfyUI:模块化节点式AI绘画工作流引擎安装与使用指南

官方信息

项目名称ComfyUI
仓库地址https://github.com/comfyanonymous/ComfyUI
官方网站https://www.comfy.org
最新更新2026-06-23
Star 数约 75k+
项目定位基于节点编辑器的模块化扩散模型推理GUI,支持Stable Diffusion、FLUX、SD3、HunyuanDiT等主流模型

项目背景

ComfyUI 由 comfyanonymous 开发并维护,是当前开源AI绘画领域最受欢迎的节点式工作流GUI之一。与传统的 Stable Diffusion WebUI 不同,ComfyUI 将整个扩散推理过程拆解为可视化的节点——加载模型、编码提示词、采样、VAE解码、保存图片——每个环节都是一个可拖拽、可连接的节点,用户可以像搭积木一样自由组合出复杂的生成流程。

这种节点式架构带来了极高的灵活性:你可以在同一工作流中同时加载多个LoRA、切换不同的采样器、接入ControlNet控制姿态、做局部重绘、甚至串联多张图片的(img2img)处理。由于所有计算都在后端以张量方式执行,ComfyUI 在显存效率上也优于许多传统WebUI,尤其适合多模型并行、高分辨率出图等进阶场景。

截至2026年,ComfyUI 已经原生支持 Stable Diffusion 1.5 / 2.1 / XL / 3.5、FLUX.1 [dev/schnell]、SD3、HunyuanDiT、PixArt、Wan视频模型等数十种主流扩散模型,并拥有庞大的自定义节点社区(ComfyUI-Manager、Impact-Pack、IP-Adapter、ControlNet Auxiliary等),形成了完整的生态。

核心特性

  • 节点式可视化工作流:拖拽连线即可搭建完整推理管线,支持保存为JSON模板复用
  • 极低显存占用:通过模型卸载、注意力优化、FP8量化等技术,4GB显存也能跑SDXL
  • 多模型原生支持:SD1.5/SDXL/SD3/FLUX/HunyuanDiT/PixArt/Wan2.1等开箱即用
  • 自定义节点生态:通过ComfyUI-Manager一键安装上千种社区节点,扩展ControlNet、IP-Adapter、放大、局部重绘等能力
  • 批处理与队列系统:内置任务队列,支持批量出图、参数遍历、高分辨率工作流
  • API与可编程接口:提供REST API和WebSocket接口,可被外部程序调用
  • 跨平台支持:Windows/Linux/macOS均可运行,AMD显卡通过DirectML/ZLUDA兼容

环境要求

项目最低要求推荐配置
GPU 显存4GB(SD1.5)12GB+(SDXL/FLUX),24GB+(视频模型)
CUDA11.8+12.1 / 12.4
Python3.103.10 / 3.11
系统Windows 10 / Ubuntu 20.04Windows 11 / Ubuntu 22.04
磁盘空间10GB(仅程序)50GB+(含常用模型)

详细部署步骤

方式一:Windows 一键便携包(推荐新手)

这是最简单的安装方式,无需提前安装Python和Git。

  1. 下载便携包
    前往 Releases页面,下载最新的 ComfyUI_windows_portable_nvidia.7z 文件(约1.5GB)。
    如果使用AMD显卡,请下载 ComfyUI_windows_portable_amd.7z。
  2. 解压
    用7-Zip或Bandizip解压到任意磁盘,路径不要包含中文和空格,例如 D:\ComfyUI。
  3. 启动
    进入解压后的目录,双击运行 run_nvidia_gpu.bat(N卡)或 run_amd.bat(A卡)。
    首次启动会自动检查环境,黑窗口中出现 To see the GUI go to: http://127.0.0.1:8188 即表示成功。
  4. 访问界面
    浏览器打开 http://127.0.0.1:8188 即可看到默认工作流。

方式二:Linux 源码部署(推荐生产环境)

  1. 安装基础依赖
    sudo apt update
    sudo install python3.10 python3.10-venv python3-pip git -y
    # 验证CUDA
    nvidia-smi
  2. 克隆仓库
    cd /opt
    sudo git clone https://github.com/comfyanonymous/ComfyUI.git
    sudo chown -R $USER:$USER ComfyUI
    cd ComfyUI
  3. 创建虚拟环境
    python3.10 -m venv venv
    source venv/bin/activate
    pip install --upgrade pip wheel
  4. 安装PyTorch(CUDA 12.1版本)
    pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121

    验证安装:python -c "import torch; print(torch.cuda.is_available())",输出True即正常。

  5. 安装ComfyUI依赖
    pip install -r requirements.txt
  6. 下载基础模型
    以SD1.5为例,从 HuggingFace 下载 v1-5-pruned-emaonly.safetensors,放到:
    ComfyUI/models/checkpoints/

    如果要跑SDXL,下载 sd_xl_base_1.0.safetensors 放到同一目录。

  7. 启动服务
    python main.py --listen 0.0.0.0 --port 8188

    常用参数:

    • --listen 0.0.0.0:允许外网访问
    • --port 8188:指定端口
    • --highvram:大显存模式(24GB+)
    • --normalvram:中等显存(8-12GB)
    • --lowvram:低显存模式(4-6GB)
    • --cpu:纯CPU推理(极慢,仅测试用)
  8. 配置为系统服务(可选)
    sudo tee /etc/systemd/system/comfyui.service <<EOF
    [Unit]
    Description=ComfyUI
    After=network.target
    
    [Service]
    User=ubuntu
    WorkingDirectory=/opt/ComfyUI
    ExecStart=/opt/ComfyUI/venv/bin/python main.py --listen 0.0.0.0 --port 8188
    Restart=always
    
    [Install]
    WantedBy=multi-user.target
    EOF
    
    sudo systemctl daemon-reload
    sudo systemctl enable --now comfyui

方式三:Docker 部署

docker run -d --name comfyui \
  --gpus all \
  -p 8188:8188 \
  -v /opt/comfyui/models:/app/ComfyUI/models \
  -v /opt/comfyui/output:/app/ComfyUI/output \
  ghcr.io/comfyanonymous/comfyui:latest

启动后访问 http://服务器IP:8188。

安装常用自定义节点(强烈推荐)

进入 ComfyUI/custom_nodes/ 目录,依次克隆:

# ComfyUI-Manager(必装,节点管理器)
git clone https://github.com/ltdrdata/ComfyUI-Manager.git

# Impact-Pack(进阶处理工具集)
git clone https://github.com/ltdrdata/ComfyUI-Impact-Pack.git

# ControlNet Auxiliary(姿态/深度/边缘预处理)
git clone https://github.com/Fannovel16/comfyui_controlnet_aux.git

# IP-Adapter(图片风格迁移)
git clone https://github.com/cubiq/ComfyUI_IPAdapter_plus.git

# 进入每个目录安装依赖
cd ComfyUI-Manager && pip install -r requirements.txt && cd ..
cd ComfyUI-Impact-Pack && pip install -r requirements.txt && cd ..

重启ComfyUI后,右侧菜单会出现Manager按钮,可一键搜索安装更多节点。

使用方法

默认工作流出图

  1. 启动后浏览器打开 http://127.0.0.1:8188,会看到默认的5个节点连线图
  2. 点击 Load Checkpoint 节点,在下拉框选择你下载的模型
  3. 在 CLIP Text Encode (Prompt) 节点输入正向提示词,例如:1girl, masterpiece, best quality, white dress, garden
  4. 在下方负向提示词节点输入:lowres, bad anatomy, bad hands, text, watermark
  5. 设置 Empty Latent Image 的宽高,SD1.5推荐512×768,SDXL推荐1024×1024
  6. 点击右侧面板的 Queue Prompt 按钮,等待生成完成
  7. 生成的图片会显示在 Save Image 节点,并自动保存到 output/ 目录

快捷键

  • Ctrl+Enter:运行队列
  • Ctrl+S:保存工作流
  • Delete:删除选中节点
  • 滚轮:缩放画布
  • 空格+拖拽:平移画布

API调用示例

ComfyUI提供REST API,可通过Python脚本批量出图:

import json, requests, websocket, uuid

server = "127.0.0.1:8188"
client_id = str(uuid.uuid4())

# 加载工作流JSON
with open("workflow.json", "r") as f:
    workflow = json.load(f)

# 提交提示
prompt_id = requests.post(f"http://{server}/prompt", json={
    "prompt": workflow,
    "client_id": client_id
}).json()["prompt_id"]

# 等待完成
ws = websocket.WebSocket()
ws.connect(f"ws://{server}/ws?clientId={client_id}")
while True:
    msg = json.loads(ws.recv())
    if msg[1]["prompt_id"] == prompt_id:
        break

常见问题(FAQ)

Q1: 启动时报错 "CUDA out of memory" 怎么办?

这是显存不足。解决方法:

  • 启动时加参数 --lowvram 或 --novram
  • 降低生成分辨率,先出512×512再用Hi-Res放大
  • 不要同时加载多个大模型
  • 如果是FLUX模型,使用FP8量化版本(约8GB显存即可运行)

Q2: 下拉框看不到我下载的模型?

确认模型文件放在了正确的子目录:

  • 完整大模型(Checkpoint)→ models/checkpoints/
  • LoRA → models/loras/
  • VAE → models/vae/
  • ControlNet → models/controlnet/

放好后刷新浏览器页面即可。

Q3: 自定义节点安装后报错怎么办?

进入对应节点目录,查看 requirements.txt,手动在虚拟环境中执行 pip install -r requirements.txt。如果还是报错,到ComfyUI-Manager里点"Fix"按钮自动修复依赖。

Q4: 如何远程访问ComfyUI?

启动时加 --listen 0.0.0.0 参数,并在防火墙/安全组开放8188端口。注意:ComfyUI默认没有登录验证,暴露到公网有安全风险,建议配合Nginx加Basic Auth或使用Tailwire内网穿透。

Q5: 生成的图片在哪里找?

默认保存在程序根目录的 output/ 文件夹下,文件名包含时间戳和提示词前缀。也可以在Save Image节点中修改保存路径。

跳转链接

评论交流

文章目录