根据您提供的错误信息,问题出在layer_norm.cu
文件中。这些错误是由于在CUDA代码中使用了半精度浮点数(const __half
)进行运算,但没有正确处理这些特殊情况。为了解决这个问题,您可以尝试以下方法:
- 在
layer_norm.cu
文件的开头添加以下代码,以禁用半精度浮点数的支持:
# define __HALF_ENABLED__
- 修改
reduction_utils.h
文件中的运算符重载,以处理半精度浮点数的特殊情况。例如,将以下代码:
return lhs + rhs;
替换为:
return __half2::__add(__half2::from_bits(lhs.x), __half2::from_bits(rhs.x));
同样,对于其他涉及半精度浮点数运算的操作符,也需要进行相应的修改。
重新编译和运行您的代码。如果一切顺利,这些问题应该已经解决。
这个错误是由于在构建transformer_inference
扩展时出现了问题。你可以尝试以下方法解决这个问题:确保你的PyTorch和DeepSpeed版本是兼容的。你可以查看官方文档以获取更多信息。
清除之前的构建缓存,然后重新构建。你可以使用以下命令来清除缓存:
rm -rf build/
rm -rf dist/
rm -rf torch_model_parallel.egg-info/
如果问题仍然存在,尝试升级或降级PyTorch和DeepSpeed的版本,以找到一个兼容的组合。
如果以上方法都无法解决问题,你可以尝试在GitHub上提交一个issue,详细描述你遇到的问题,并附上相关的错误信息和代码片段。这样,DeepSpeed的开发者和其他用户可能会帮助你找到解决方案。
文件 "/home/ai_group/anaconda3/envs/liuy/lib/python3.10/site-packages/mii/deployment.py",第120行,在_deploy_local函数中
mii.utils.import_score_file(deployment_name).init()
文件 "/tmp/mii_cache/llama2_deployment/score.py",第30行,在init函数中
model = mii.MIIServerClient(task,
文件 "/home/ai_group/anaconda3/envs/liuy/lib/python3.10/site-packages/mii/server_client.py",第92行,在init函数中
self._wait_until_server_is_live()
文件 "/home/ai_group/anaconda3/envs/liuy/lib/python3.10/site-packages/mii/server_client.py",第115行,在_wait_until_server_is_live函数中
raise RuntimeError("server crashed for some reason, unable to proceed")
运行时错误:服务器因某种原因崩溃,无法继续进行。
4条答案
按热度按时间deyfvvtc1#
你好,@ly19970621,这看起来像是与DeepSpeed-Inference的内核编译相关的问题。你能分享一下
ds_report
的输出吗?同时,请尝试使用DS_BUILD_TRANSFORMER_INFERENCE=1 pip install deepspeed
预先编译内核并分享结果。谢谢!wlzqhblo2#
你好,@ly19970621,这个问题看起来像是DeepSpeed-Inference内核编译过程中出现的问题。你能分享一下
ds_report
的输出结果吗?另外,请尝试使用DS_BUILD_TRANSFORMER_INFERENCE=1 pip install deepspeed
预先编译内核并分享结果。谢谢!感谢回复。我运行了
python -m deepspeed.env_report
,以下是输出结果:我运行了
DS_BUILD_TRANSFORMER_INFERENCE=1 pip install deepspeed
,环境没有改变,重新执行仍然出现上述错误。nhn9ugyo3#
对不起,我没有及时回复。如果你仍然遇到这个错误,请尝试仅使用DeepSpeed运行以下脚本并分享结果?
用
deepspeed llama-example.py
运行这个2w2cym1i4#
关于这个的更新,先生?我尝试用T4(4 x 16 GB) GPU运行llama-2-13b-chat-hf,但仍然遇到这个问题。
Cc: @mrwyattii