为啥run_clm_sft_with_peft.py可以run不能debug,debug会报错AttributeError: 'PeftModelForCausalLM' object has no attribute 'save_checkpoint'?
feifei05 opened this issue · 8 comments
提交前必须检查以下项目
- 请确保使用的是仓库最新代码(git pull),一些问题已被解决和修复。
- 我已阅读项目文档和FAQ章节并且已在Issue中对问题进行了搜索,没有找到相似问题和解决方案。
- 第三方插件问题:例如llama.cpp、LangChain、text-generation-webui等,同时建议到对应的项目中查找解决方案。
问题类型
模型训练与精调
基础模型
Chinese-Alpaca-2 (7B/13B)
操作系统
Linux
详细描述问题
# 为什么sft lora微调能执行不报错,但是debug这个代码就报错,报AttributeError: 'PeftModelForCausalLM' object has no attribute 'save_checkpoint'
依赖情况(代码类问题务必提供)
# peft=0.5.0
torch==2.0.1
transformers==4.31.0
sentencepiece==0.1.97
bitsandbytes==0.41.0
运行日志或截图
#
![image](https://github.com/ymcui/Chinese-LLaMA-Alpaca-2/assets/69673314/6e0c93c0-a912-4f35-b84c-1692e625326f)
![微信图片_20231219175050](https://github.com/ymcui/Chinese-LLaMA-Alpaca-2/assets/69673314/a763924f-d876-4d85-a710-06808c6f9346)
本地的peft版本和你安装的peft版本冲突?
本地的peft版本和你安装的peft版本冲突?
大佬,你意思是项目中training路径下的peft可以删掉是吗?
本地的peft版本和你安装的peft版本冲突?
是不是只需要pip install 一个版本就行,项目中的可以删掉哈
如果你要微调embed_tokens
和lm_head
,不建议删除项目中的peft,因为它没有复制要全量训的参数,有效减少显存占用。而且当前代码是强绑定repo中的peft的,你安装新版本可能出现其它未知的问题。你就按照requirements安装peft版本没什么问题啊
如果你要微调
embed_tokens
和lm_head
,不建议删除项目中的peft,因为它没有复制要全量训的参数,有效减少显存占用。而且当前代码是强绑定repo中的peft的,你安装新版本可能出现其它未知的问题。你就按照requirements安装peft版本没什么问题啊
大佬吖,我pip install peft==0.3.0后,debug还是报AttributeError: 'LlamaForCausalLM' object has no attribute 'save_checkpoint',只是想debug看整个训练过程都不行,但run不会报错
既然跑起来了,为什么还要debug?一定要debug的话就用小一点的数据集,随机生成一个几层的小llama,然后在某个断点打印一下log好了
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your consideration.