You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

加载HuggingFace Autoformer模型触发KeyError求助(已装最新transformers)

解决Autoformer模型加载时的KeyError问题

问题描述

运行以下代码加载Autoformer时间序列预测模型时,出现KeyError: <class 'transformers.models.autoformer.configuration_autoformer.AutoformerConfig'>错误:

# Load model directly
from transformers import AutoTokenizer, AutoformerForPrediction

tokenizer = AutoTokenizer.from_pretrained("huggingface/autoformer-tourism-monthly")
model = AutoformerForPrediction.from_pretrained("huggingface/autoformer-tourism-monthly")

完整报错回溯:

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'>

问题原因

huggingface/autoformer-tourism-monthly是时间序列预测模型,处理的是数值序列而非文本,不需要使用AutoTokenizer。AutoTokenizer无法找到与AutoformerConfig对应的分词器映射关系,因此抛出KeyError。

解决方案

移除AutoTokenizer相关代码,改用AutoformerFeatureExtractor处理时间序列数据,修正后的代码如下:

from transformers import AutoformerFeatureExtractor, AutoformerForPrediction

# 加载特征处理器和模型
feature_extractor = AutoformerFeatureExtractor.from_pretrained("huggingface/autoformer-tourism-monthly")
model = AutoformerForPrediction.from_pretrained("huggingface/autoformer-tourism-monthly")

# 示例:处理时间序列输入
import numpy as np
# 生成符合模型输入格式的随机时间序列数据
input_data = np.random.randn(1, 12)  # 假设输入是1条长度为12的序列
inputs = feature_extractor(input_data, return_tensors="pt")

# 进行预测
outputs = model(**inputs)
predicted_values = outputs.logits

内容的提问来源于stack exchange,提问作者User1086

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.27 18:50:20