如何解决ModuleNotFoundError: No module named 'torch.distributed._shard'错误?
修复
ModuleNotFoundError: No module named 'torch.distributed._shard' 问题 原因
你当前使用的PyTorch版本低于1.12,而安装的PyTorch Lightning版本调用了PyTorch 1.12才新增的torch.distributed._shard模块,导致导入失败。
解决办法
升级PyTorch到对应版本
针对你的CUDA 11.4环境,执行下面的命令升级:pip install torch==1.12.1+cu114 torchvision==0.13.1+cu114 torchaudio==0.12.1 --extra-index-url https://download.pytorch.org/whl/cu114升级完成后重新运行代码即可。
降级PyTorch Lightning
要是不想升级PyTorch,就把PyTorch Lightning降到不依赖该模块的版本,比如1.9.5,这个版本适配PyTorch 1.10及以上版本:pip install pytorch-lightning==1.9.5验证版本兼容性
执行命令查看当前PyTorch和PyTorch Lightning的版本,确认两者匹配:pip show torch pytorch-lightning参考兼容规则:PyTorch Lightning 2.0+要求PyTorch 1.12及以上;1.9.x版本支持PyTorch 1.10到1.13。
内容的提问来源于stack exchange,提问作者math_guy
相关产品推荐
相关产品推荐

