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

Python Transformers文本生成报错'dict object has no attribute architectures'如何解决

报错解决方案

错误原因

核心报错AttributeError: 'dict' object has no attribute 'architectures'的触发原因是:transformers库pipeline方法的config参数要求传入PretrainedConfig类的实例,你直接传入普通字典不符合参数要求。
开头的CUDA相关警告不影响代码运行,没有NVIDIA显卡或者不需要用GPU加速可以直接忽略。

解决方法

有两种可行的修改方案:

  • 方案1:将生成长度参数直接传给pipeline或者生成调用逻辑,不需要单独修改config
  • 方案2:先加载官方配置对象,修改参数后再传入pipeline

修正后完整代码(最简方案)

from transformers import pipeline

# 把max_length直接作为pipeline的参数传入即可,不需要放在config字典中
pipe = pipeline('text-generation', model='dbmdz/german-gpt2', tokenizer='dbmdz/german-gpt2', max_length=800)

text = pipe("Der Sinn des Lebens ist es")[0]['generated_text']

print(text)

如果需要屏蔽开头的CUDA警告,可以在代码最开头加入以下两行:

import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'

内容的提问来源于stack exchange,提问作者Lukas Koch-Schulte

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 00:06:03