You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

本地运行SAM演示Notebook遇‘torchvision::nms’CUDA后端错误求助

解决Segment-Anything本地运行时torchvision::nms的CUDA后端错误

我在本地Jupyter Notebook运行Segment-Anything的automatic_mask_generator_example.ipynb时遇到以下错误:

NotImplementedError: Could not run 'torchvision::nms' with arguments from the 'CUDA' backend. This could be because the operator doesn't exist for this backend, or was omitted during the selective/custom build process (if using custom build).

环境对比

  • Google Colab(可正常运行):
PyTorch version: 2.0.1+cu118
Torchvision version: 0.15.2+cu118
CUDA is available: True
  • 本地环境:
PyTorch version: 2.0.1+cu117
Torchvision version: 0.15.2+cpu
CUDA is available: True

已尝试但无效的安装命令:

  • pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu117
  • pip install torchvision==0.15.0+cu117
  • conda install torchvision==0.15.0+cu117 -c pytorch -c nvidia

解决步骤

1. 彻底卸载现有CPU版本依赖

先清理已安装的包,避免版本冲突:

# pip环境
pip uninstall -y torch torchvision torchaudio

# conda环境(如果用conda管理)
conda uninstall -y torch torchvision torchaudio

2. 确认CUDA 11.7环境变量配置

检查本地CUDA 11.7的环境变量是否生效:

# Linux/macOS
echo $CUDA_HOME
echo $PATH | grep cuda
echo $LD_LIBRARY_PATH | grep cuda

# Windows(命令提示符)
echo %CUDA_PATH%

确保输出指向CUDA 11.7的安装路径,未配置则手动添加。

3. 重新安装适配CUDA 11.7的PyTorch套件

方法一:pip安装(优先推荐)

执行指定版本的安装命令,确保从官方CUDA 11.7源获取包:

pip install torch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2 --index-url https://download.pytorch.org/whl/cu117

方法二:conda安装

若使用conda环境,运行:

conda install pytorch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2 pytorch-cuda=11.7 -c pytorch -c nvidia

4. 验证安装结果

在Jupyter Notebook中运行以下代码确认:

import torch
import torchvision

print(f"PyTorch version: {torch.__version__}")
print(f"Torchvision version: {torchvision.__version__}")
print(f"CUDA is available: {torch.cuda.is_available()}")
print(f"Torchvision CUDA enabled: {torchvision._is_cuda_enabled()}")

需确保torchvision版本带有+cu117后缀,且Torchvision CUDA enabled输出为True。

5. 临时替代方案(安装失败时使用)

若上述方法仍无法解决,可临时强制SAM在CPU上运行,修改Notebook中的设备设置:

device = torch.device('cpu')

此方案会降低运行速度,仅作为临时应急手段。


内容的提问来源于stack exchange,提问作者Cjk34

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 17:14:52