当使用 torch.load()
加载模型时,出现以下错误
RuntimeError: Attempting to deserialize object on a CUDA device but torch.cuda.is_available() is False. If you are running on a CPU-only machine, please use torch.load with map_location=torch.device('cpu') to map your storages to the CPU.
以上问题描述是说未获取到当前环境下的 cuda,若你当前在只有 CPU 环境下运行的话,需要加上map_location=torch.device('cpu')
。但问题在于我当前的环境是有 GPU 以及 CUDA 的。
在网上找了很久,也有很多人说是 CUDA 版本 与 torch 版本不一致,但我当前版本也是一致的。
解决办法:如果你与我以上的情况一致,可以试试以下解决方法:
在文件开头加上以下代码即可解决以上报错问题。
print(torch.cuda.is_available())
import torch
torch.cuda.current_device()
torch.cuda._initialized = True
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)