本文旨在系统记录使用 PyTorch 进行深度学习开发过程中遇到的各类疑难报错与异常问题,详细梳理报错现象、排查思路及最终解决方案。一方面是为了复盘问题解决过程,沉淀技术经验;另一方面也能避免后续再次遇到同类问题时重复踩坑,提升开发效率。
1 使用torchrun报错
failed to create process.
找到D:\LMZFile\Anaconda3\envs\bisenet\Scripts\torchrun-script.py,修改第一行的python环境,如下图所示:

2 conda activate报错
CommandNotFoundError: Your shell has not been properly configured to use 'conda activate'.

报错原因:当前的 shell 进程没有加载最新的.bashrc配置(conda init的配置会写入.bashrc,但仅对新进程生效)。
解决办法:
cmd
source ~/.bashrc

3 PyTorch 与 CUDA 相关核心报错
3.1 CUDA 内核加载报错
CUDA error: no kernel image is available for execution on the device
问题根因
版本不匹配核心问题:当前安装的 CUDA Toolkit 版本、PyTorch 版本、本地 GPU 硬件型号 三者之间不兼容,PyTorch 编译时内置的 CUDA 内核镜像,无法适配当前 GPU 的硬件算力,导致内核无法加载执行。
解决方案
根据本地 GPU 的计算能力(Compute Capability),重新安装与之匹配的 PyTorch + CUDA 版本组合,确保三者算力与版本完全兼容。
3.2 GPU 算力不兼容报错
报错现象
Tesla P40 with CUDA capability sm_61 is not compatible with the current PyTorch installation. The current PyTorch install supports CUDA capabilities sm_70 sm_75 sm_80 sm_86 sm_90 sm_100 sm_120.
问题根因
当前安装的 PyTorch 版本,在编译阶段仅对算力值 sm_70及以上 的显卡做了适配支持;而本地使用的 Tesla P40 显卡算力值为 sm_61,不在该 CUDA版本的支持范围内,因此触发算力不兼容报错。
补充说明
若不清楚自身显卡对应的算力值(Compute Capability),可参考 NVIDIA 官方算力查询地址,精准查询显卡型号对应的算力版本:NVIDIA 官方显卡算力对照表
如图所示我的是这一栏的:

下图是算力与CUDA对照表:

源地址在这里:CUDA#GPUs_supported
注:上述图仅供参考,虽然上述写的12x支持6.1算力,但是据我尝试,12x的cuda还是会报错,找官网说是为了减少torch的体积,将cuda给阉割了.
我这里直接安装11.8版本的torch:
shell
pip install torch==2.7.1 torchvision==0.22.1 torchaudio==2.7.1 --index-url https://download.pytorch.org/whl/cu118
4 PyTorch 版本导入包相关错误
ImportError: cannot import name 'PytorchGELUTanh' from 'transformers.activations'
在/xxx/anaconda3/envs/llamafactory/lib/python3.11/site-packages/transformers/activations.py目录下添加以下代码:
shell
PytorchGELUTanh = GELUTanh
如下图所示:
