AttributeError: module transformers has no attribute TFGPTNeoForCausalLM

AttributeError: module transformers has no attribute TFGPTNeoForCausalLM

我克隆了这个 repository/documentation https://huggingface.co/EleutherAI/gpt-neo-125M

无论是 运行 在 google collab 上还是在本地,我都会收到以下错误。我还使用这个

安装了变压器
pip install git+https://github.com/huggingface/transformers

并确保配置文件被命名为 config.json

      5 tokenizer = AutoTokenizer.from_pretrained("gpt-neo-125M/",from_tf=True)
----> 6 model = AutoModelForCausalLM.from_pretrained("gpt-neo-125M",from_tf=True)
      7 
      8 

3 frames
/usr/local/lib/python3.7/dist-packages/transformers/file_utils.py in __getattr__(self, name)

AttributeError: module transformers has no attribute TFGPTNeoForCausalLM

完整代码:

from transformers import AutoTokenizer, AutoModelForCausalLM 

tokenizer = AutoTokenizer.from_pretrained("EleutherAI/gpt-neo-125M",from_tf=True)

model = AutoModelForCausalLM.from_pretrained("EleutherAI/gpt-neo-125M",from_tf=True)

transformers-cli 环境结果:

合作和本地都有TensorFlow 2.5.0版本

尝试不使用 from_tf=True 标志,如下所示:

from transformers import AutoTokenizer, AutoModelForCausalLM 

tokenizer = AutoTokenizer.from_pretrained("EleutherAI/gpt-neo-125M")

model = AutoModelForCausalLM.from_pretrained("EleutherAI/gpt-neo-125M")

from_tf 期望 pretrained_model_name_or_path(即第一个参数)是从中加载保存的 Tensorflow 检查点的路径。

我的解决方案是首先编辑源代码以删除在包前面添加“TF”的行,因为正确的变形金刚模块是 GPTNeoForCausalLM , 但在源代码的某处它手动在它前面添加了一个“TF”。

其次,在克隆存储库之前,必须 运行

 git lfs install. 

这个 link 帮助我正确安装了 git lfs https://askubuntu.com/questions/799341/how-to-install-git-lfs-on-ubuntu-16-04