凌晨两点,我盯着屏幕上那个刺眼的错误提示:"Missing Node Types: NunchakuQwenImageDiTLoader"。这是我今晚第十七次看到这行字。桌上的咖啡早就凉透了,我甚至开始怀疑人生——装个插件而已,怎么就这么难?后来我才明白,这不是一场简单的插件安装,而是一次与Python依赖地狱的正面交锋。如果你也曾在ComfyUI的工作流加载界面前抓狂,那这篇文章就是写给你的。因为我替你踩完了所有的坑,现在轮到你抄近道了。
第一章:当一切看起来很简单的时候
问题的开端
故事要从一个看似普通的需求说起:我想用ComfyUI做视频生成。工作流文件下载好了,模型也准备齐了,满怀期待地点击加载,然后——
Missing Node Types: EmptyHunyuanLatentVideo, SaveVideo, CreateVideo
三个节点,集体失踪。😰
这种感觉就像你兴冲冲跑到电影院,爆米花都买好了,结果发现电影院今天不放映。但问题是,电影明明在海报上,票也卖了,就是放不了。
第一次天真的尝试
按照常规思路,缺少节点?那就装插件呗。打开ComfyUI Manager,搜索相关插件:
插件名称 | 状态 | 问题 |
---|---|---|
VideoHelperSuite | ✅ 已安装 | IMPORT FAILED |
HunyuanVideoWrapper | ✅ 已安装 | 节点不匹配 |
ComfyUI-nunchaku | ✅ 已安装 | 所有节点加载失败 |
等等,已安装但是失败? 这就像你的车钥匙插进去了,但就是打不着火。问题出在哪儿?
启动日志给了答案:
ModuleNotFoundError: No module named 'av'
Nunchaku version: Package 'nunchaku' not found.
好家伙,插件装了,但依赖包没装。这就是故事真正开始变得有趣的地方。
第二章:在依赖地狱里打转
VideoHelperSuite:一个缺少的字母
第一个问题相对简单。VideoHelperSuite 失败是因为缺少 PyAV 包,具体来说,就是一个叫 <code>av</code> 的Python模块。
解决起来也直接:
& "I:\ComfyUI\.ext\python.exe" -m pip install av
安装过程倒是顺利,几十兆的文件下载完,重启ComfyUI,VideoHelperSuite 成功加载。✅
两个节点解决了! SaveVideo 和 CreateVideo 可以用了。但 Nunchaku 的问题才是真正的噩梦。
Nunchaku:版本号的迷宫
当我看到这行日志时,我觉得问题不大:
Nunchaku version: Package 'nunchaku' not found.
Please update nunchaku to a supported version in ['v1.0.0']
需要 1.0.0 版本?简单,装一个呗:
pip install nunchaku==1.0.0
然后 pip 告诉我:
ERROR: Could not find a version that satisfies the requirement nunchaku==1.0.0
什么意思? PyPI 上根本没有 1.0.0 版本!😱
我去查了一下,PyPI 上的 nunchaku 版本是这样的:
- 0.1.0
- 0.15.0 ~ 0.15.4
- 0.16.0 ~ 0.16.1
没有 1.0.0! 完全没有!
这就像你去便利店买可乐,店员说:"我们只有 0.15 升和 0.16 升的,没有 1.0 升的。"你说:"那我要 0.15 升的吧。"然后回家一喝,发现根本不是可乐,是雪碧。
试试 0.15.4 吧
既然 PyPI 上有 0.15.4,那就试试呗。也许插件能兼容?
pip install nunchaku==0.15.4
安装成功!重启 ComfyUI,然后:
Nunchaku version: 0.15.4
ComfyUI-nunchaku 1.0.1 is not compatible with nunchaku 0.15.4
Node <code>NunchakuQwenImageDiTLoader</code> import failed:
ModuleNotFoundError: No module named 'nunchaku.utils'
还是不行。 原来 PyPI 上的 nunchaku 和插件需要的 nunchaku 根本就是两个东西!😤
这就像你在淘宝搜"苹果",结果买到的是水果,而你要的是手机。名字一样,但压根不是一个东西。
GitHub 上的 40 个 Wheel 文件
在绝望之际,我找到了 MIT Han Lab 的 nunchaku GitHub 仓库。点开 releases,看到了这个场景:
40 个 wheel 文件。 按照 PyTorch 版本、Python 版本、操作系统分类,密密麻麻。
PyTorch版本 | Python版本 | 操作系统 | 文件大小 |
---|---|---|---|
2.5 | 3.10/3.11/3.12 | Windows/Linux | 131MB |
2.6 | 3.10/3.11/3.12 | Windows/Linux | 131MB |
2.7 | 3.10/3.11/3.12 | Windows/Linux | 131MB |
… | … | … | … |
我的环境是什么来着?
- Python 3.11 ✓
- PyTorch 2.3.1 ✗
- Windows ✓
等等,我的 PyTorch 是 2.3.1,但最低的 wheel 是 torch2.5!
下载了 <code>nunchaku-1.0.0+torch2.5-cp311-cp311-win_amd64.whl</code>,满怀希望地安装:
pip install "H:\download\nunchaku-1.0.0+torch2.5-cp311-cp311-win_amd64.whl"
安装成功!重启,然后:
ImportError: DLL load failed while importing _C: 找不到指定的程序。
DLL 加载失败。 这是底层 C++ 扩展的问题,意味着这个为 PyTorch 2.5 编译的包,在 PyTorch 2.3 上根本跑不起来。
这就像你买了个 iPhone 15 的手机壳,硬往 iPhone 13 上套,当然套不进去。
那个被忽略的简单方案
折腾了三个小时后,我突然想起一个问题:为什么不直接升级 PyTorch?
打开 ComfyUI Launcher,在"安装 PyTorch"界面,看到了这个下拉菜单:
Torch 2.7.0 (CUDA 12.6) + xFormers 0.0.30
Torch 2.6.0 (CUDA 12.6) + xFormers 0.0.29.post3
Torch 2.5.1 (CUDA 12.4) + xFormers 0.0.28.post3
...
Torch 2.3.1 (CUDA 12.1) + xFormers 0.0.27 ← 当前版本
我擦,原来可以一键升级。 🤦
选择 <code>Torch 2.7.0 (CUDA 12.6) + xFormers 0.0.30</code>,点击安装,等了几分钟,重启 ComfyUI。
然后神奇的事情发生了:
--- Trying source: modelscope for version 1.0.1 ---
--- Attempting to install: nunchaku-1.0.1+torch2.7-cp311-cp311-win_amd64.whl ---
--- Successfully installed from modelscope ---
ComfyUI 自动从 modelscope 下载并安装了正确版本的 nunchaku! 🎉
不需要手动下载 wheel 文件,不需要折腾 pip,不需要纠结版本号。只要 PyTorch 版本对了,一切都自动搞定。
再次重启,查看日志:
Nunchaku version: 1.0.1
ComfyUI-nunchaku version: 1.0.1
完美匹配! 所有 Nunchaku 节点成功加载!✅
第三章:为什么绕了这么大一圈
问题的本质
回过头看,整个折腾过程其实就是一个误区:我一直在试图不动 PyTorch 的前提下解决问题。
为什么会这样想?因为:
- 升级核心依赖有风险 – 担心破坏其他插件
- 习惯性地先尝试小改动 – 能不动就不动
- 没意识到新插件就是为新版本设计的 – 思维定式
但实际上,现代的ComfyUI生态已经很成熟了:
- ✅ 版本管理很完善 – Launcher 支持一键切换
- ✅ 依赖自动处理 – 升级 PyTorch 后会自动安装匹配的包
- ✅ 回滚很容易 – 出问题可以快速降回旧版本
最直接的方案往往就是最好的方案。 这句话在技术领域永远成立。
完整的解决方案总结
如果你也遇到了 Nunchaku 节点缺失的问题,这是最简化的解决流程:
步骤一:升级 PyTorch
打开 ComfyUI Launcher → 选择"安装 PyTorch" → 选择最新的稳定版本(推荐 2.7.0 或更高)→ 点击安装
步骤二:重启 ComfyUI
完全关闭后重新启动,系统会自动检测并安装匹配的依赖包。
步骤三:验证安装
加载工作流,检查是否还有 Missing Nodes 错误。如果只是文件路径问题(比如 LoRA 找不到),那就说明节点已经成功加载了。
就这么简单。 三步,可能总共用不了10分钟。
而我之前绕的那一大圈,花了三个小时。
其他可能遇到的问题
当然,并不是所有情况都这么顺利。在解决 Nunchaku 的过程中,我还遇到了这些坑:
1. VideoHelperSuite 缺少 PyAV
如果你遇到 <code>ModuleNotFoundError: No module named 'av'</code> 错误:
& "I:\ComfyUI\.ext\python.exe" -m pip install av
一行命令搞定。PyAV 是视频处理的核心库,VideoHelperSuite 必须要它。
2. 损坏的插件文件夹
有些插件文件夹可能是空的或者下载不完整(比如我遇到的那几个 <code>__init__.py</code> 缺失的插件)。解决方法:
- 在 ComfyUI Manager 里直接卸载
- 或者手动删除 <code>custom_nodes</code> 下的对应文件夹
- 然后重新安装
3. 工作流文件路径问题
即使节点加载成功,工作流可能因为文件路径不匹配而报错。比如:
lora_name: 'FLUX/flux1-turbo.safetensors' not in [...]
这说明工作流里写的是 <code>FLUX/</code> 子文件夹,但你的 LoRA 文件直接放在 <code>models/loras/</code> 根目录下。
解决办法:
- 在节点的下拉菜单里重新选择正确的文件
- 或者按照工作流的路径结构创建子文件夹
给后来者的建议
如果你正准备折腾 ComfyUI 的视频生成功能,这里有几条血泪教训:
关于环境配置:
- ✅ 优先考虑升级到最新稳定版 – PyTorch、ComfyUI 本体、插件都是
- ✅ 用 Launcher 管理版本 – 别手动 pip install,除非必要
- ✅ CUDA 驱动保持更新 – 新版 PyTorch 需要新驱动支持
- ❌ 不要混用不同渠道的包 – PyPI 和 GitHub 的同名包可能完全不同
关于插件安装:
- ✅ 看清楚插件的要求 – README 里通常会写需要什么版本
- ✅ 先检查日志 – 错误信息往往已经告诉你缺什么了
- ✅ 一个一个解决 – 别多个问题一起搞,会乱
- ❌ 不要盲目相信"最新就是最好" – 有时候稳定版更靠谱
关于问题排查:
- ✅ 保存启动日志 – 出问题时方便回溯
- ✅ Google 搜索错误信息 – 很多人遇到过同样的问题
- ✅ 去 GitHub Issues 看看 – 插件作者可能已经有解决方案
- ❌ 不要一条路走到黑 – 如果某个方向试了三次还不行,换思路
工具箱:常用命令速查
最后,整理一些在折腾过程中常用的命令,方便你复制粘贴:
检查 Python 包版本:
& "I:\ComfyUI\.ext\python.exe" -m pip list | Select-String "包名"
安装指定版本的包:
& "I:\ComfyUI\.ext\python.exe" -m pip install 包名==版本号
卸载包:
& "I:\ComfyUI\.ext\python.exe" -m pip uninstall 包名 -y
查看 PyTorch 版本:
& "I:\ComfyUI\.ext\python.exe" -c "import torch; print(torch.__version__)"
更新 Git 插件:
cd I:\ComfyUI\custom_nodes\插件名
git pull
查看 CUDA 版本:
nvidia-smi
写在最后的话
从晚上十点折腾到凌晨两点,为了装一个插件,我经历了从自信到怀疑,从绝望到柳暗花明的完整过程。现在回想起来,最简单的方案往往被我们最先忽略,因为我们总觉得"不至于这么简单"。
技术的世界就是这样,有时候你需要的不是更复杂的解决方案,而是退一步,看看最基础的地方是不是出了问题。PyTorch 版本不对,再怎么折腾依赖包也没用。 这个道理看起来很简单,但只有真正踩过坑的人才能体会。
如果这篇文章能让你少走一些弯路,少熬一些夜,那我这三个小时就没白费。毕竟,我们折腾技术的目的是为了创造,而不是为了在依赖地狱里无限循环。
现在,工作流终于能跑了,该去做点真正有意思的事情了。比如,用 Nunchaku 生成一个视频,内容就叫《如何正确地浪费一个晚上》。😄
最后提醒一句:技术文档和教程是有时效性的。今天能用的方法,三个月后可能就过时了。所以最重要的不是记住具体的命令,而是学会排查问题的思路。遇到报错,看日志,查文档,找规律,试方案,验证结果。这个流程永远不会过时。
祝你的 ComfyUI 之旅一切顺利。如果不顺利,那就去升级一下 PyTorch 吧。🚀