Unable to load weights from pytorch checkpoint file
See original GitHub issueš Bug
Information
I uploaded two models this morning using the transformers-cli
. The models can be found on my huggingface page. The folder I uploaded for both models contained a PyTorch model in bin format, a zip file containing the three TF model files, the config.json
and the vocab.txt
. The PT model was created from TF checkpoints using this code. Iām able to download the tokenizer using:
tokenizer = AutoTokenizer.from_pretrained("mananeau/clinicalcovid-bert-base-cased")
.
Yet, when trying to download the model using:
model = AutoModel.from_pretrained("mananeau/clinicalcovid-bert-base-cased")
I am getting the following error:
AttributeError Traceback (most recent call last) ~/anaconda3/lib/python3.7/site-packages/torch/serialization.py in _check_seekable(f) 226 try: ā> 227 f.seek(f.tell()) 228 return True
AttributeError: āNoneTypeā object has no attribute āseekā
During handling of the above exception, another exception occurred:
AttributeError Traceback (most recent call last) ~/anaconda3/lib/python3.7/site-packages/transformers/modeling_utils.py in from_pretrained(cls, pretrained_model_name_or_path, *model_args, **kwargs) 625 try: ā> 626 state_dict = torch.load(resolved_archive_file, map_location=ācpuā) 627 except Exception:
~/anaconda3/lib/python3.7/site-packages/torch/serialization.py in load(f, map_location, pickle_module, **pickle_load_args) 425 pickle_load_args[āencodingā] = āutf-8ā ā> 426 return _load(f, map_location, pickle_module, **pickle_load_args) 427 finally:
~/anaconda3/lib/python3.7/site-packages/torch/serialization.py in _load(f, map_location, pickle_module, **pickle_load_args) 587 ā> 588 _check_seekable(f) 589 f_should_read_directly = _should_read_directly(f)
~/anaconda3/lib/python3.7/site-packages/torch/serialization.py in _check_seekable(f) 229 except (io.UnsupportedOperation, AttributeError) as e: ā> 230 raise_err_msg([āseekā, ātellā], e) 231
~/anaconda3/lib/python3.7/site-packages/torch/serialization.py in raise_err_msg(patterns, e) 222 " try to load from it instead.") ā> 223 raise type(e)(msg) 224 raise e
AttributeError: āNoneTypeā object has no attribute āseekā. You can only torch.load from a file that is seekable. Please pre-load the data into a buffer like io.BytesIO and try to load from it instead.
During handling of the above exception, another exception occurred:
OSError Traceback (most recent call last) <ipython-input-5-5451ffd9a3b5> in <module> ----> 1 model = AutoModel.from_pretrained(āmananeau/clinicalcovid-bert-base-casedā)
~/anaconda3/lib/python3.7/site-packages/transformers/modeling_auto.py in from_pretrained(cls, pretrained_model_name_or_path, *model_args, **kwargs) 425 for config_class, model_class in MODEL_MAPPING.items(): 426 if isinstance(config, config_class): ā> 427 return model_class.from_pretrained(pretrained_model_name_or_path, *model_args, config=config, **kwargs) 428 raise ValueError( 429 āUnrecognized configuration class {} for this kind of AutoModel: {}.\nā
~/anaconda3/lib/python3.7/site-packages/transformers/modeling_utils.py in from_pretrained(cls, pretrained_model_name_or_path, *model_args, **kwargs) 627 except Exception: 628 raise OSError( ā> 629 "Unable to load weights from pytorch checkpoint file. " 630 "If you tried to load a PyTorch model from a TF 2.0 checkpoint, please set from_tf=True. " 631 )
OSError: Unable to load weights from pytorch checkpoint file. If you tried to load a PyTorch model from a TF 2.0 checkpoint, please set from_tf=True.
Environment info
transformers
version: 2.9.0- Platform: Ubuntu 18.04
- Python version: 3.7.4
- PyTorch version (GPU?): 1.3.1
- Tensorflow version (GPU?): 1.14.0
- Using GPU in script?: No
- Using distributed or parallel set-up in script?: No
Issue Analytics
- State:
- Created 3 years ago
- Reactions:10
- Comments:16 (4 by maintainers)
Top GitHub Comments
I had this problem when I trained the model with
torch==1.6.0
and tried to load the model with1.3.1
. The issue was fixed by upgrading to1.6.0
in my environment where Iām loading the model.For this problem I switched to pip install with the repository of tranformers=2.8 which had been download in my old environment.
It normal works to download and load any pretrained weight
I donāt know why, but itās work