跳至正文
ComfyUI WorldBETA
登录
资料整理

SAM、GroundingDINO 加载失败:代码、权重和原生扩展分开检查

检查节点采用的具体实现,不把 SAM、SAM2 和不同 GroundingDINO 封装当成同一个包。

更新于 2026-09-25发布修订: 7资料基线: 7

改文件之前,先确认具体实现

原版 Segment Anything 把 segment_anything 代码安装与 checkpoint 下载分开说明;示例还要选 vit_h、vit_l 或 vit_b 等模型类型及对应权重。SAM 2 是独立代码库,有自己的权重;SAM 2.1 checkpoint 需要配合新版 SAM 2 代码。GroundingDINO 则有独立的安装、配置文件和 checkpoint。第三方 ComfyUI 节点可能封装其中任一种实现,所以先记录节点仓库及版本,再对照相应项目的说明,不能因名称相近就互换代码或模型文件。

分清 Python 导入、权重和原生扩展

用真正启动受影响 ComfyUI 的 Python 解释器,记录确切的模块缺失或加载错误、节点版本、Python 与 Torch 版本、项目变体、模型配置/类型及 checkpoint 来源。缺 segment_anything 或 groundingdino,先查代码安装与节点导入路径;权重加载失败则查配置与 checkpoint 是否匹配。有些节点内置依赖,仅凭 pip 查不到分发包,不能断言模块不可用。

groundingdino._C 是 GroundingDINO 的编译扩展,不是 SAM 权重。GroundingDINO 上游指出,缺少 CUDA_HOME 可能构建出仅 CPU 版本,并记录了安装步骤不正确后出现 NameError: name '_C' is not defined 的情况。保留第一处构建或原生加载错误,按该项目平台说明在可恢复的环境副本中排查;更换权重路径无法修复扩展。SAM 2 另有用于部分后处理的自定义 CUDA 扩展,其构建警告本身不等于所有 SAM 2 推理均不可用;不能把这一例外套用于 GroundingDINO 的 _C 错误。

python -m pip show torch torchvision
python -c "import sys, platform; print(sys.executable); print(sys.version); print(platform.machine())"

用小输入验证原节点

核对可信代码及匹配的配置/checkpoint 后,用一张不含隐私的小图片测试受影响的检测或分割节点,并检查遮罩尺寸、类型及下游连线。每次只变动一个组件,保留原始错误与验证结果。若节点或平台支持情况未确认,应如实标记,不安装来源不明的 wheel,也不把别人的截图当成本地测试。

相关排查

资料复核并独立审阅中文:2026-09-26。本站未在本地安装包、编译扩展、加载权重、运行工作流或 GPU。

还没解决?

排查下一个可能的原因

同样的现象可能来自不同原因。可以按顺序查看下面这些相关条目。

  1. cv2 找不到或导入失败:先分清 OpenCV 四种安装包No module named cv2区分普通版、contrib 和 headless,检查同一命名空间的重复安装,再处理 DLL 或原生库错误。
  2. MMCV 安装失败或缺少算子:先核对构建组合No module named mmcv区别 mmcv 与 mmcv-lite,并将源码构建失败和运行期扩展加载失败分开处理。
把完整日志粘贴到报错排查工具

这篇内容对你有帮助吗?

匿名统计,只记录“有/没有帮助”的计数,不记录账号、IP 地址或设备信息。

资料来源

2026-09-26 复核原版 SAM、GroundingDINO 和 SAM 2 上游资料并独立审阅中文;未在本地安装、构建、加载权重、运行工作流或 GPU。

01Segment Anything upstream README资料核对: 2026-09-2602GroundingDINO upstream README资料核对: 2026-09-2603SAM 2 upstream README资料核对: 2026-09-26

报告问题 · 23f32f22-e165-5755-9f9f-61add37f001e