【大模型-驯化】成功解决deepspeed加速出现:.cache/torch_extensions/py310_cu118/fused_adam/fused_adam.so: undefined symbol: _ZN3c107WarningC1ENS问题
本次修炼方法请往下查看
🌈 欢迎莅临我的个人主页 👈这里是我工作、学习、实践 IT领域、真诚分享 踩坑集合,智慧小天地!
🎇 相关内容文档获取 微信公众号
🎇 相关内容视频讲解 B站
🎓 博主简介:AI算法驯化师,混迹多个大厂搜索、推荐、广告、数据分析、数据挖掘岗位 个人申请专利40+,熟练掌握机器、深度学习等各类应用算法原理和项目实战经验。
🔧 技术专长: 在机器学习、搜索、广告、推荐、CV、NLP、多模态、数据分析等算法相关领域有丰富的项目实战经验。已累计为求职、科研、学习等需求提供近千次有偿|无偿定制化服务,助力多位小伙伴在学习、求职、工作上少走弯路、提高效率,近一年好评率100% 。
📝 博客风采: 积极分享关于机器学习、深度学习、数据分析、NLP、PyTorch、Python、Linux、工作、项目总结相关的实用内容。
下滑查看解决方法
🎯 1.问题介绍
目前大模型的训练大都是是基于deepspeed来进行多卡并行加速,目前单模中qwen相对来说比较火,我们在搭建qwen微调的过程中最大的环境问题在于deepspeed的加速问题,具体在运行的过程中出现:
.cache/torch_extensions/py310_cu118/fused_adam/fused_adam.so: undefined symbol: _ZN3c107WarningC1ENS
或者会出现
ImportError: /data/.cache/torch_extensions/py36_cu111/fused_adam/fused_adam.so: cannot open shared object file: No such file or directory
💡 2. 解决方法
2.1 常用的解决方法
对于上述的问题,通常的解决方法为重新安装deepspeed,具体的方法如下所示:
pip uninstall deepspeed
DS_BUILD_FUSED_ADAM=1 pip install deepspeed
git clone https://github.com/microsoft/DeepSpeed.git
cd DeepSpeed
DS_BUILD_FUSED_ADAM=1 pip3 install .
通常我们通过上述的代码后,在执行判断安装是否成功会出现如下的情况,执行ds_report
:
我亲自验证上述的逻辑没有出现yes的情况,可能是服务器的问题,所以在执行的过程中会一直报错
2.2 最终解决方法
根据上述的报错,查看.cache中的内容,具体的结果如下所示:
可以看出每次在跑的时候会调用这哥.cache里面的文件,因此,我们需要查看自己的这个目录下面是否有这4个文件,如果不存在肯定会报错,但是我的存在也会报错,因此,我找一个别人能跑的环境,把那里的文件复制过来,即使运行ds_report
出现no,微调的整个过程的代码也不会报错。