Tutorial Lesson

报错排查方法论

ComfyUI保姆级零基础教程 66 浏览 2026-07-07 更新 免费阅读

一、排查的核心思路

ComfyUI 报错信息往往分散在:

  • 画布上 红色节点/红框

  • 浏览器界面 Toast 弹窗

  • 运行 ComfyUI 的 终端 / 控制台(最详细);

  • ComfyUI/user/comfyui.log(部分安装方式)。

黄金法则

1. 先读终端最后一屏报错
2. 再定位第一个变红的节点
3. 用最小工作流隔离问题
4. 最后才怀疑模型/硬件/环境

二、排查流程图(总纲)

Queue 失败 / 结果异常
        │
        ▼
┌───────────────────┐
│ 画布有红节点?     │
└─────────┬─────────┘
     是   │   否
          ▼
   检查该节点:         ┌──────────────────┐
   · 缺连线?          │ 读终端报错关键字  │
   · 缺模型文件?      └────────┬─────────┘
   · 类型接错?                 │
          │                     ▼
          │            OOM / CUDA / ImportError / FileNotFound
          │                     │
          └──────────┬──────────┘
                     ▼
              按分类处理(见下文)
                     │
                     ▼
              仍失败 → 最小 t2i 工作流对比
                     │
                     ▼
              仍失败 → 禁用 Custom Nodes / 回滚版本

三、按现象分类

3.1 节点变红 / 无法 Queue

可能原因

检查方法

处理

必填输入未连线

看节点左侧空插槽

补连线

类型不匹配

对比插槽颜色/类型名

加转换节点(如 VAE Encode)

模型下拉为空

models/checkpoints 是否有文件

下载并刷新

自定义节点未安装

节点显示 Unknown 或 Missing

Manager 安装

widget 非法值

宽高为 0、负数

改合法参数

3.2 终端:FileNotFoundError / 模型找不到

例:FileNotFoundError: ... checkpoints/xxx.safetensors

处理

  1. 确认文件是否在正确子目录(checkpoints / loras / controlnet / vae);

  2. 文件名是否与节点选择 完全一致(含大小写);

  3. 下载未完成或 0 字节 → 重新下载;

  4. 工作流来自他人 → 改选你本地有的模型。

3.3 终端:ImportError / ModuleNotFoundError

含义:某个 Custom Node 的 Python 依赖缺失。

处理

  1. Manager → 对该节点 Install dependencies

  2. 手动 pip install 包名(在 ComfyUI 使用的 Python 环境中);

  3. 仍失败 → 更新或禁用该节点(3-5)。

3.4 终端:CUDA out of memory(OOM)

含义:显存不足。

处理(由易到难)

手段

说明

降低分辨率

1024→768→512

降 batch_size

保持为 1

关闭其他占 GPU 程序

浏览器硬解、游戏等

使用 FP8/GGUF 量化模型

第 5 章

--lowvram / --cpu-vae 等启动参数

查官方文档

换更大显存显卡

硬件上限

3.5 Queue 成功但图片全黑 / 全噪点

可能原因

处理

未接 VAE Decode

接上 Checkpoint 的 VAE

VAE 与模型不匹配

使用模型配套 VAE 或官方推荐 VAE

denoise / 采样参数极端

恢复 steps=20–30, cfg=5–8

模型文件损坏

重新下载 Checkpoint

3.6 生成结果与预期完全无关

不一定是报错,但属「逻辑问题」:

  • 正负 Prompt 接反;

  • 用了错误 Checkpoint(SD1.5 工作流加载 SDXL 模型);

  • ControlNet 权重为 0 或接错图;

  • seed 固定但 Prompt 空。

处理:对照 3-1 最小连线逐项核对。

3.7 工作流 JSON 导入后乱线 / 缺节点

原因

处理

缺 Custom Nodes

Manager → Install Missing

ComfyUI 版本过旧

升级本体(3-5)

JSON 损坏

重新下载


四、三大排查工具

4.1 终端日志

怎么看

  • 最后一次 Queue 对应的堆栈往上读;

  • 第一个 你看得懂的关键字:ErrorExceptionnot foundCUDA

技巧:复制完整报错到搜索引擎或 GitHub Issues,往往已有解决方案。

4.2 ComfyUI Manager

功能

排查用途

Install Missing Custom Nodes

补全工作流依赖

Install dependencies

补 Python 包

Disable custom nodes

二分法定位冲突插件

Update

修复已知 bug(谨慎)

4.3 最小工作流隔离法

  1. New 空白画布;

  2. 只搭 3-1 的 最小文生图(无插件);

  3. 若最小能跑 → 问题在 复杂节点或插件

  4. 若最小不能跑 → 问题在 ComfyUI 本体 / 模型 / 环境

逐步 加回 原工作流的模块(先加 LoRA,再加 ControlNet…),加到哪步崩就是哪步的问题。


五、自定义节点冲突排查(二分法)

启动失败或任意工作流都报错时:

  1. 退出 ComfyUI;

  2. custom_nodes 下文件夹 全部移出 到临时目录;

  3. 只留 ComfyUI-Manager(可选)启动测试;

  4. 若正常, 每次移回 1 个插件文件夹,重启测试,直到找到肇事插件。


六、网络与权限类问题(易忽略)

场景

现象

处理

首次用 InsightFace / 自动下载模型

超时失败

手动下载放到指定目录;代理

PS 联动插件连不上

PS not connected

防火墙、端口、127.0.0.1:8188

Manager git clone 失败

安装节点失败

网络、Git 配置

中文路径

部分节点读写失败

尽量英文路径安装 ComfyUI


七、报错信息速查表

关键字

常见含义

Required input is missing

缺连线

Return type mismatch

类型接错

CUDA out of memory

显存不足

No such file

模型路径错误

ImportError

缺 Python 依赖或节点损坏

AttributeError

节点版本与 ComfyUI 不兼容

Validation error

widget 参数不合法


八、预防胜于排查

习惯

作用

工作流 Note 写依赖(3-2)

他人/未来的你少踩坑

更新前备份(3-5)

可回滚

一次只装一个插件(3-4)

易定位冲突

固定「测试用」最小 t2i

快速验证环境

终端窗口常开

报错不被忽略


九、何时该求助社区

以下情况可带 完整信息 提问(GitHub Issue / Discord / 论坛):

  1. 最小 t2i 仍失败 + 终端完整报错;

  2. ComfyUI 版本、显卡型号、显存、系统;

  3. 已安装的 Custom Nodes 列表;

  4. 工作流 JSON(可脱敏);

  5. 已尝试的步骤。

少写「不能用」,多写「哪一步、什么报错、什么环境」。

推荐教程

继续学习相关章节