ChatGLM2-6B中引入ptuning报错:AttributeError: ‘ChatGLMModel‘ object has no attribute ‘prefix_encoder‘

File "/home/ai/gm/ChatGLM2-6B/ptuning-v1/main.py", line 411, in <module>
    main()
  File "/home/ai/gm/ChatGLM2-6B/ptuning-v1/main.py", line 131, in main
    model.transformer.prefix_encoder.float()
  File "/home/ai/anaconda3/envs/ChatGLM2/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1614, in __getattr__
    raise AttributeError("'{}' object has no attribute '{}'".format(
AttributeError: 'ChatGLMModel' object has no attribute 'prefix_encoder'

ChatGLM2-6B中引入ptuning报错:AttributeError: ‘ChatGLMModel‘ object has no attribute ‘prefix_encoder‘_第1张图片
经查看:
https://huggingface.co/THUDM/chatglm2-6b/blob/main/configuration_chatglm.py
改文件已更新:
ChatGLM2-6B中引入ptuning报错:AttributeError: ‘ChatGLMModel‘ object has no attribute ‘prefix_encoder‘_第2张图片
多了标红的这几行
ChatGLM2-6B中引入ptuning报错:AttributeError: ‘ChatGLMModel‘ object has no attribute ‘prefix_encoder‘_第3张图片
ChatGLM2-6B中引入ptuning报错:AttributeError: ‘ChatGLMModel‘ object has no attribute ‘prefix_encoder‘_第4张图片
将这几个文件下载并替换
ChatGLM2-6B中引入ptuning报错:AttributeError: ‘ChatGLMModel‘ object has no attribute ‘prefix_encoder‘_第5张图片

ChatGLM2-6B中引入ptuning报错:AttributeError: ‘ChatGLMModel‘ object has no attribute ‘prefix_encoder‘_第6张图片
成功解决

其他解决办法:
问题二
chatGLM模型使用官方提供的p-tuing微调方法训练完成模型后,加载启动模型权重文件报错AttributeError: ‘ChatGLMModel‘ object has no attribute ‘prefix_encoder‘

这个问题在网上找了很多相关的文章最后都是不匹配的解决方案,最终的解决方法是修改configuration_chatglm.py模块中pre_seq_len参数即可。
原文链接:https://blog.csdn.net/Together_CZ/article/details/131340838
ChatGLM2-6B中引入ptuning报错:AttributeError: ‘ChatGLMModel‘ object has no attribute ‘prefix_encoder‘_第7张图片

https://blog.csdn.net/dzysunshine/article/details/130506521

你可能感兴趣的:(python,自然语言处理,人工智能,大模型,微调,CHATGLM2)