Jupyter Notebook导入torch报错:NameError: name '_C' is not defined
解决PyTorch导入时
NameError: name '_C' is not defined的问题 以下是经过验证的可行解决方案,按优先级尝试:
1. 核对Jupyter Notebook的内核环境
- 打开Jupyter Notebook,点击右上角「Kernel」→「Change Kernel」,确认当前使用的内核是你安装PyTorch的conda/虚拟环境,而非系统默认Python或其他未安装PyTorch的环境。
- 若不确定环境对应关系,可在终端激活目标环境后执行:
将该环境添加为Jupyter内核,切换后重试导入操作。python -m ipykernel install --user --name=你的环境名
2. 彻底清理残留后重装PyTorch
- 先卸载PyTorch:
pip uninstall torch -y conda uninstall torch -y # 若使用conda安装则执行此命令 - 手动删除残留文件:找到Python环境的site-packages目录(如报错中的
/opt/anaconda3/lib/python3.8/site-packages/),删除所有以torch、torchvision、torchaudio开头的文件夹与文件。 - 重新安装匹配版本的PyTorch:根据系统、CUDA版本选择对应命令,例如GPU版本(CUDA 11.8):
CPU版本:pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu
3. 检查CUDA与PyTorch版本兼容性
- 若使用GPU版本PyTorch,需确认系统CUDA版本与PyTorch支持版本匹配(例如PyTorch 2.0支持CUDA 11.7/11.8,高版本CUDA可能存在兼容性问题)。
- 执行
nvcc --version查看CUDA版本,选择对应版本的PyTorch重装。
4. 验证PyTorch基础安装状态
- 在终端激活目标环境,执行:
若能正常输出版本号,说明PyTorch本身安装无问题,故障根源为Jupyter内核与环境不匹配。python -c "import torch; print(torch.__version__)"
内容的提问来源于stack exchange,提问作者userx
相关产品推荐
相关产品推荐

