OpenBMB / MiniCPM-V

MiniCPM-V 2.6: A GPT-4V Level MLLM for Single Image, Multi Image and Video on Your Phone
Apache License 2.0
12.14k stars 849 forks source link

[BUG] Lora 微调 minicpmv2-5报错 #181

Closed winsonxxxx closed 4 months ago

winsonxxxx commented 4 months ago

image 按官方介绍,MiniCPM-Llama3-V 2.5的Lora微调两卡V100就能跑起来,我这边是单机多卡(V100型号),尝试过2卡/4卡都报out-of-memory (OOM) 的错误。batch_size=1,gradient_accumulation_steps调大,不起作用。transformers=4.40.0,torch=2.1.2;请问这是什么原因?

HelloWorld19930113 commented 4 months ago

有遇到这个错误吗?moduleNotFoundError: No module named transformers_modules.minicpm-2,我跑的时候遇到了这个

winsonxxxx commented 4 months ago

有遇到这个错误吗?moduleNotFoundError: No module named transformers_modules.minicpm-2,我跑的时候遇到了这个

这个倒没遇到

qyc-98 commented 4 months ago

您好,您可以尝试把ds_confgi_zero2中的"zero_optimization": { "stage": 2, "offload_optimizer": { "device": "none", "pin_memory": true },更改为"zero_optimization": { "stage": 2, "offload_optimizer": { "device": "cpu", "pin_memory": true }, 采用将优化器参数 放到cpu上进行训练

winsonxxxx commented 4 months ago

您好,您可以尝试把ds_confgi_zero2中的"zero_optimization": { "stage": 2, "offload_optimizer": { "device": "none", "pin_memory": true },更改为"zero_optimization": { "stage": 2, "offload_optimizer": { "device": "cpu", "pin_memory": true }, 采用将优化器参数 放到cpu上进行训练

您好,感谢回复。按您说的方法,仍然报OOM

qyc-98 commented 4 months ago

您好 我们即将更新zero3相关的代码,您可以之后尝试使用zero3来进行训练

winsonxxxx commented 4 months ago

您好 我们即将更新zero3相关的代码,您可以之后尝试使用zero3来进行训练

好的,谢谢。更新后我再试试

qyc-98 commented 4 months ago

您好 我们这边已经更新了zero3的代码,如果遇到OOM的问题可以参考FAQs,来调整相关文件,目前我们测试下使用zero3,batch为1,最大长度为2048,使用参数以及优化器的offload 的显存在18G左右