ModuleNotFoundError: No module named ‘ultralytics’

该报错通常出现在 Windows 上通过 Stability Matrix 启动 ComfyUI 并加载 ComfyUI-Impact-Pack 时;Impact Pack 的依赖安装脚本因权限/时序问题没能成功安装 ultralytics ,随后在导入 impact_subpack 时抛出 Mod

快速结论:该报错通常出现在 Windows 上通过 Stability Matrix 启动 ComfyUI 并加载 ComfyUI-Impact-Pack 时;Impact Pack 的依赖安装脚本因权限/时序问题没能成功安装 ultralytics,随后在导入 impact_subpack 时抛出 ModuleNotFoundError: No module named 'ultralytics'。优先排查 Stability Matrix 自带 Python 环境里是否确实缺少该包,以及安装时相关 DLL/文件是否被占用导致 WinError 5。

适用环境:Windows;Stability Matrix 启动的 ComfyUI;ComfyUI-Impact-Pack。Issue 中未确认具体的 Python、CUDA、PyTorch、显卡版本。

最快修复方案:维护者给出的处理方向是:在关闭 Stability Matrix 的情况下,直接向 Stability Matrix 所使用的那个 Python 环境安装 ultralytics。Issue 中未给出可直接照抄的具体命令。

注意事项:该问题被确认主要发生在 Windows + Stability Matrix 组合下,属于启动时序导致的依赖安装过晚。直接向 Stability Matrix 的 Python 环境装包时要确保使用正确的解释器、且 Stability Matrix/ComfyUI 完全关闭,否则仍可能遇到 WinError 5 文件占用。Issue 中未验证通用的一步命令,请以本机实际路径为准。

问题场景

用户在 Windows 上通过 Stability Matrix 启动 ComfyUI,加载 ComfyUI-Impact-Pack 时,Impact Pack 的安装脚本尝试安装 opencv-python、pandas、thop、seaborn、ultralytics 等依赖。安装过程中对已存在的 cv2\cv2.pyd 写入被拒绝,导致依赖安装失败;随后 ComfyUI 加载 custom_nodes/ComfyUI-Impact-Pack/impact_subpack 时因为找不到 ultralytics 而导入失败,界面提示 Impact-Pack 处于 IMPORT FAILED / subpack 不完整状态。

报错原文

Installing collected packages: opencv-python, pandas, thop, seaborn, ultralytics
ERROR: Could not install packages due to an OSError: [WinError 5] Access is denied: 'C:\\Users\\user\\AppData\\Roaming\\StabilityMatrix\\Packages\\ComfyUI\\venv\\Lib\\site-packages\\cv2\\cv2.pyd'
Check the permissions.

### ComfyUI-Impact-Pack: (IMPORT FAILED) Subpack
The module at the `custom_nodes/ComfyUI-Impact-Pack/impact_subpack` path appears to be incomplete.
Recommended to delete the path and restart ComfyUI.

Traceback (most recent call last):
  File "...\\custom_nodes\\ComfyUI-Impact-Pack\\__init__.py", line 406, in <module>
    import impact.subpack_nodes
  File "...\\impact_subpack\\impact\\subpack_nodes.py", line 4, in <module>
    import impact.subcore as subcore
  File "...\\impact_subpack\\impact\\subcore.py", line 10, in <module>
    from ultralytics import YOLO

ModuleNotFoundError: No module named 'ultralytics'

原因分析

直接报错是 ModuleNotFoundError: No module named 'ultralytics',说明 ultralytics 没被成功装进 Stability Matrix 所使用的 Python 环境。更上层的原因是 Windows + Stability Matrix 组合下的依赖安装时序与权限问题:ComfyUI 本身通常会在其它模块安装前先为自定义节点安装依赖,但 Stability Matrix 会在导入大量其它模块之后才导入 ComfyUI,导致 Impact Pack 的安装脚本执行过晚,并且安装时可能因目标文件仍被占用而触发 [WinError 5] Access is denied。维护者据此判断这是 Stability Matrix(Windows)下的特定限制。

环境排查

  • 确认是否在 Windows 上通过 Stability Matrix 启动 ComfyUI。
  • 确认 ComfyUI 使用的是 Stability Matrix 的虚拟环境(Issue 中路径形如 ...\StabilityMatrix\Packages\ComfyUI\venv\Lib\site-packages)。
  • 确认该环境中是否已安装 ultralytics。
  • 确认安装 ultralytics 或 onnxruntime 等包时,ComfyUI / Stability Matrix 是否已完全退出,避免 DLL 或 .pyd 文件被占用。
  • Issue 未确认具体 Python、PyTorch、CUDA、显卡版本,排查时无需强行对齐版本号。

解决步骤

  1. 先按维护者建议,关闭 Stability Matrix,确保 ComfyUI 及相关进程没有在后台运行。
  2. 定位 Stability Matrix 为 ComfyUI 使用的 Python 解释器(即上述 venv 对应的 Python 环境)。
  3. 用该解释器直接安装 ultralytics 包,绕开 ComfyUI 启动时的延迟安装,避免安装过晚导致的依赖缺失。
  4. 如果安装过程中仍报 [WinError 5] Access is denied,说明目标文件仍被占用:再次确认 ComfyUI / Stability Matrix 已完全退出后再重试;必要时以管理员身份运行终端。
  5. Issue 评论中提到同类 onnxruntime 占用问题可通过先卸载再强制重装解决,这属于相关思路参考,并非本 Issue 针对 ultralytics 已验证的一步命令,可优先尝试但需以本机路径为准。
  6. 安装完成后重启 Stability Matrix / ComfyUI,重新加载 ComfyUI-Impact-Pack。
  7. 如果 impact_subpack 仍提示不完整,可按错误提示删除该路径后重新安装 Impact Pack。

验证方法

重启 ComfyUI 后,(IMPORT FAILED) Subpack 提示应消失,加载 Impact Pack 节点时不再出现 ModuleNotFoundError: No module named 'ultralytics';在对应 Python 环境中执行导入检查能成功导入 ultralytics,即可确认问题已解决。

参考来源

ltdrdata/ComfyUI-Impact-Pack #287

GamsGo AI

AI 工具推荐

想把多个 AI 模型放在一个入口?

GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。

了解 GamsGo AI

推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。

这个方案解决了吗?

celebrityanime
celebrityanime
文章: 25398

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注