'Transformers model from Hugging-Face throws error that specific classes couldn t be loaded
Hi after running this code below, I get the following error.
ValueError: Could not load model facebook/bart-large-mnli with any of the following classes: (<class 'transformers.models.auto.modeling_tf_auto.TFAutoModelForSequenceClassification'>,).
import tensorflow as tf
from transformers import pipeline
classifier = pipeline("zero-shot-classification", model="facebook/bart-large-mnli")
Could someone please help. Thank you!
Solution 1:[1]
Use the following:
!pip install pytorch-pretrained-bert
import pytorch_pretrained_bert as ppb
assert 'bert-large-cased' in ppb.modeling.PRETRAINED_MODEL_ARCHIVE_MAP
Now run your original code.
Solution 2:[2]
I had the same issue! Somebody has commented here that you need to have PyTorch installed (https://github.com/huggingface/transformers/issues/16849).
To sum it up:
- Some models only exist as PyTorch models (e.g.
deepset/roberta-base-squad2
). - Calling
pipeline()
selects the framework (TF or PyTorch) based on what is installed on your machine (or venv in my case) - If both are installed, Torch will be selected
- If you don't have PyTorch installed, it threw above mentioned error
- Installing PyTorch solved the issue for me!
- In the GitHub issue, another workaround is mentioned:
load the model in TF with
from_pt=True
and save as personal copy as a TF model withsave_pretrained
andpush_to_hub
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
Solution | Source |
---|---|
Solution 1 | Sachin Motwani |
Solution 2 |