问题描述
transformers 4.0+版本训练出来的模型,在3.0的Model.from_pretrained中加载会报错,pytorch_model.bin is a zip archive (did you mean to use torch.jit.load()?)
这是因为pytorch1.6及之后,更换了保存模型文件的方式
解决方法
将高版本的,模型文件重新保存一下,加上参数_use_new_zipfile_serialization=False,这样模型就可以在1.6以下的环境中运行了
import torch
state_dict = torch.load('pytorch_model.bin', map_location="cpu")
torch.save(state_dict, 'pytorch_model.bin', _use_new_zipfile_serialization=False)