Ошибка при загрузке настроенной модели simpletransformer в Docker Container
При загрузке настроенной простой модели преобразователя в контейнер Docker я столкнулся с этой ошибкой, которую не могу решить.
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python3.7/dist-packages/torch/serialization.py", line 594, in load
return _load(opened_zipfile, map_location, pickle_module, **pickle_load_args)
File "/usr/local/lib/python3.7/dist-packages/torch/serialization.py", line 853, in _load
result = unpickler.load()
File "/usr/local/lib/python3.7/dist-packages/transformers/models/xlm_roberta/tokenization_xlm_roberta.py", line 161, in __setstate__
self.sp_model.Load(self.vocab_file)
File "/usr/local/lib/python3.7/dist-packages/sentencepiece.py", line 367, in Load
return self.LoadFromFile(model_file)
File "/usr/local/lib/python3.7/dist-packages/sentencepiece.py", line 177, in LoadFromFile
return _sentencepiece.SentencePieceProcessor_LoadFromFile(self, arg)
OSError: Not found: "/home/jupyter/.cache/huggingface/transformers/9df9ae4442348b73950203b63d1b8ed2d18eba68921872aee0c3a9d05b9673c6.00628a9eeb8baf4080d44a0abe9fe8057893de20c7cb6e6423cddbf452f7d4d8": No such file or directory Error #2
Если кто-нибудь знает об этом, дайте мне знать.
Я использую torch ==1.7.1+cu101
предложения-трансформеры 0.3.9
простые трансформаторы 0.51.15
трансформаторы 4.4.2
тензорный поток 2.2.0
1 ответ
Я предлагаю использовать объекты — словари Python, поскольку их можно легко сохранять, обновлять и восстанавливать, что дает вам гибкость для последующего восстановления модели. Вот рекомендуемые методы сохранения/загрузки для сохранения моделей с
state_dict
:
Сохранять
torch.save(model.state_dict(), PATH)
Нагрузка
model = TheModelClass(*args, **kwargs)
model.load_state_dict(torch.load(PATH))
model.eval()