raise RuntimeError('Attempting to deserialize object on a CUDA ' 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.
时间: 2023-10-14 09:21:29 浏览: 61
torch.cuda.is-available()返回False的问题解决
这个错误信息出现的原因是尝试将一个在CUDA设备上训练的模型加载到一个没有CUDA设备的机器上。在此情况下,需要使用`torch.load`函数,并将参数`map_location`设置为`torch.device('cpu')`,以将模型加载到CPU设备上。以下是一个示例:
```
import torch
# 加载模型
model = torch.load('model.pth', map_location=torch.device('cpu'))
# 对模型进行推理
output = model(input)
```
在这个示例中,我们将模型从文件“model.pth”中加载,并将其映射到CPU设备上进行推理。
阅读全文