ModuleNotFoundError: No module named 'mmcv._ext'
我的环境为
torch 2.4.1
torchaudio 2.4.1+cu121
torchvision 0.19.1
下载的支持包版本为
mmcv 2.1.0
mmdet 3.3.0
mmengine 0.10.7
一直换版本都报错
配置mmdetection出错
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
1条回答 默认 最新
檀越@新空间 2026-02-06 18:28关注晚上好🌙🌙🌙
本答案参考通义千问你遇到的错误是:
ModuleNotFoundError: No module named 'mmcv._ext'这个错误通常表示
mmcv没有正确安装,或者 你安装的mmcv版本与你的环境不兼容。根据你提供的信息,你的环境为:- PyTorch 2.4.1
- TorchAudio 2.4.1+cu121
- torchvision 0.19.1
- mmcv 2.1.0
- mmdet 3.3.0
- mmengine 0.10.7
✅ 原因分析
-
mmcv没有正确安装:mmcv是一个依赖项,它包含 C++ 扩展(如_ext),如果你使用的是 pip 安装而不是源码编译,可能会导致扩展没有被正确安装。
-
版本不兼容:
- 你使用的
mmcv和mmdet的版本可能不兼容,尤其是在 PyTorch 2.x 环境中。
- 你使用的
-
CUDA 版本不匹配:
- 你使用的是
cu121(CUDA 12.1),但某些mmcv版本可能只支持特定的 CUDA 版本(如 cu118)。
- 你使用的是
🔧 解决方案
1. 卸载现有 mmcv 并重新安装
pip uninstall mmcv -y然后使用官方推荐的方式安装
mmcv,确保与你的 PyTorch 版本和 CUDA 版本兼容。📌 推荐方式:通过
mmcv-full安装pip install mmcv-full==2.1.0 -f https://download.openmmlab.com/mmcv/dist/2.1.0/torch2.4.1_cu121/index.html如果你不确定哪个版本适合你,可以访问 MMCV 官方下载页面 查看对应版本。
2. 确认 PyTorch 和 CUDA 版本是否匹配
你使用的是 PyTorch 2.4.1 + cu121(CUDA 12.1)。建议你检查一下是否真的支持该组合:
import torch print(torch.__version__) # 应该是 2.4.1 print(torch.version.cuda) # 应该是 12.1 print(torch.backends.cudnn.version()) # 检查 cudnn 是否可用如果发现不匹配,可以考虑更换 PyTorch 或者 CUDA 版本。
3. 升级或降级 mmdet 和 mmengine
你可以尝试以下版本组合,以确保兼容性:
mmdet3.3.0mmengine0.10.7mmcv2.1.0
但建议你查看 MMDetection GitHub 页面 上的 Requirements 部分,选择与你 PyTorch 版本对应的版本。
4. 手动安装 mmcv 源码(可选)
如果你仍然无法通过 pip 安装成功,可以尝试从源码编译:
git clone https://github.com/open-mmlab/mmcv.git cd mmcv pip install -e .注意:这需要你已经安装了
torch、torchvision、setuptools、numpy等依赖。
5. 验证安装是否成功
运行以下代码测试是否能正常导入:
import mmcv print(mmcv.__version__) print(mmcv._ext)如果没有报错,则说明安装成功。
✅ 总结步骤(有序列表)
-
卸载现有的 mmcv
pip uninstall mmcv -y -
使用官方链接安装 mmcv-full
pip install mmcv-full==2.1.0 -f https://download.openmmlab.com/mmcv/dist/2.1.0/torch2.4.1_cu121/index.html -
检查 PyTorch 和 CUDA 版本是否匹配
import torch print(torch.__version__) print(torch.version.cuda) -
验证 mmcv 是否安装成功
import mmcv print(mmcv.__version__) print(mmcv._ext) -
如果仍失败,尝试从源码安装 mmcv
git clone https://github.com/open-mmlab/mmcv.git cd mmcv pip install -e .
💡 额外提示
- 如果你在使用 Colab 或 Jupyter Notebook,请确保每次重启内核后都重新安装依赖。
- 如果你使用的是 Conda 环境,建议使用
conda install -c conda-forge mmcv来避免版本冲突。
如果你仍然无法解决,请提供完整的错误日志或输出结果,我可以进一步帮你定位问题。
解决 无用评论 打赏 举报