I was trying to run autoformer from huggiingface I was getting this error. I have the latest version of transformers
KeyError Traceback (most recent call last)
Cell In[2], line 6
3 # Load model directly
4 from transformers import AutoTokenizer, AutoformerForPrediction
6 tokenizer = AutoTokenizer.from_pretrained("huggingface/autoformer-tourism-
monthly")
7 model = AutoformerForPrediction.from_pretrained("huggingface/autoformer-tourism-
monthly")
File ~/anaconda3/lib/python3.11/site-packages/transformers/models/auto/tokenization_auto.py:841, in AutoTokenizer.from_pretrained(cls, pretrained_model_name_or_path, *inputs, **kwargs)
839 model_type = config_class_to_model_type(type(config).__name__)
840 if model_type is not None:
841 tokenizer_class_py, tokenizer_class_fast = TOKENIZER_MAPPING[type(config)]
842 if tokenizer_class_fast and (use_fast or tokenizer_class_py is None):
843 return tokenizer_class_fast.from_pretrained(pretrained_model_name_or_path, *inputs, **kwargs)
File ~/anaconda3/lib/python3.11/site-
packages/transformers/models/auto/auto_factory.py:740, in _LazyAutoMapping.__getitem__(self, key)
738 model_name = self._model_mapping[mtype]
739 return self._load_attr_from_module(mtype, model_name)
740 raise KeyError(key)
KeyError: <class 'transformers.models.autoformer.configuration_autoformer.AutoformerConfig'>nter code here
I was running this code
# Load model directly
from transformers import AutoTokenizer, AutoformerForPrediction
tokenizer = AutoTokenizer.from_pretrained("huggingface/autoformer-tourism-monthly")
model = AutoformerForPrediction.from_pretrained("huggingface/autoformer-tourism-monthly")
The model file which you shared does not have tokenizer file. Hence its throwing error. If you just load the model, the below code works fine.
# Load model directly
from transformers import AutoformerForPrediction
model = AutoformerForPrediction.from_pretrained(""huggingface/autoformer-tourism-monthly"")
model
Output
AutoformerForPrediction(
(model): AutoformerModel(
(scaler): AutoformerMeanScaler()
(embedder): AutoformerFeatureEmbedder(
(embedders): ModuleList(
(0): Embedding(366, 2)
)
)
(encoder): AutoformerEncoder(
(value_embedding): AutoformerValueEmbedding(
(value_projection): Linear(in_features=22, out_features=64, bias=False)
)
(embed_positions): AutoformerSinusoidalPositionalEmbedding(48, 64)
(layers): ModuleList(
(0-3): 4 x AutoformerEncoderLayer(
(self_attn): AutoformerAttention(
(k_proj): Linear(in_features=64, out_features=64, bias=True)
(v_proj): Linear(in_features=64, out_features=64, bias=True)
(q_proj): Linear(in_features=64, out_features=64, bias=True)
(out_proj): Linear(in_features=64, out_features=64, bias=True)
)
(self_attn_layer_norm): LayerNorm((64,), eps=1e-05, elementwise_affine=True)
(activation_fn): GELUActivation()
(fc1): Linear(in_features=64, out_features=32, bias=True)
(fc2): Linear(in_features=32, out_features=64, bias=True)
(final_layer_norm): AutoformerLayernorm(
(layernorm): LayerNorm((64,), eps=1e-05, elementwise_affine=True)
)
(decomp1): AutoformerSeriesDecompositionLayer(
(avg): AvgPool1d(kernel_size=(25,), stride=(1,), padding=(0,))
)
(decomp2): AutoformerSeriesDecompositionLayer(
(avg): AvgPool1d(kernel_size=(25,), stride=(1,), padding=(0,))
)
)
)
(layernorm_embedding): LayerNorm((64,), eps=1e-05, elementwise_affine=True)
)
(decoder): AutoformerDecoder(
(value_embedding): AutoformerValueEmbedding(
(value_projection): Linear(in_features=22, out_features=64, bias=False)
)
(embed_positions): AutoformerSinusoidalPositionalEmbedding(48, 64)
(layers): ModuleList(
(0-3): 4 x AutoformerDecoderLayer(
(self_attn): AutoformerAttention(
(k_proj): Linear(in_features=64, out_features=64, bias=True)
(v_proj): Linear(in_features=64, out_features=64, bias=True)
(q_proj): Linear(in_features=64, out_features=64, bias=True)
(out_proj): Linear(in_features=64, out_features=64, bias=True)
)
(activation_fn): GELUActivation()
(self_attn_layer_norm): LayerNorm((64,), eps=1e-05, elementwise_affine=True)
(encoder_attn): AutoformerAttention(
(k_proj): Linear(in_features=64, out_features=64, bias=True)
(v_proj): Linear(in_features=64, out_features=64, bias=True)
(q_proj): Linear(in_features=64, out_features=64, bias=True)
(out_proj): Linear(in_features=64, out_features=64, bias=True)
)
(encoder_attn_layer_norm): LayerNorm((64,), eps=1e-05, elementwise_affine=True)
(fc1): Linear(in_features=64, out_features=32, bias=True)
(fc2): Linear(in_features=32, out_features=64, bias=True)
(final_layer_norm): AutoformerLayernorm(
(layernorm): LayerNorm((64,), eps=1e-05, elementwise_affine=True)
)
(decomp1): AutoformerSeriesDecompositionLayer(
(avg): AvgPool1d(kernel_size=(25,), stride=(1,), padding=(0,))
)
(decomp2): AutoformerSeriesDecompositionLayer(
(avg): AvgPool1d(kernel_size=(25,), stride=(1,), padding=(0,))
)
(decomp3): AutoformerSeriesDecompositionLayer(
(avg): AvgPool1d(kernel_size=(25,), stride=(1,), padding=(0,))
)
(trend_projection): Conv1d(64, 22, kernel_size=(3,), stride=(1,), padding=(1,), bias=False, padding_mode=circular)
)
)
(layernorm_embedding): LayerNorm((64,), eps=1e-05, elementwise_affine=True)
(seasonality_projection): Linear(in_features=64, out_features=22, bias=True)
)
(decomposition_layer): AutoformerSeriesDecompositionLayer(
(avg): AvgPool1d(kernel_size=(25,), stride=(1,), padding=(0,))
)
)
(parameter_projection): ParameterProjection(
(proj): ModuleList(
(0-2): 3 x Linear(in_features=22, out_features=1, bias=True)
)
(domain_map): LambdaLayer()
)
)
The repo used huggingface/autoformer-tourism-monthly
is for time-series forecasting. Hence it won't contained any tokenizer file.
If you are using to perform some time series prediction, you can refer the below Hugging face snippet here.