尝试从 Anaconda 环境中的不同驱动器加载 PyTorch 检查点时遇到“权限被拒绝”错误。 我正在尝试使用 Python 脚本中的 torch.load 函数加载位于 D:\GreaseLM\saved_models\greaselm 的检查点文件。但是,我始终收到以下错误消息:
Traceback (most recent call last):
File "greaselm.py", line 610, in <module>
main(args)
File "greaselm.py", line 547, in main
evaluate(args, has_test_split, devices, kg)
File "greaselm.py", line 430, in evaluate
checkpoint = torch.load(load_model_path, map_location='cpu')
File "C:\Users\Usuario\anaconda3\envs\greaselm\lib\site-packages\torch\serialization.py", line 579, in load
with _open_file_like(f, 'rb') as opened_file:
File "C:\Users\Usuario\anaconda3\envs\greaselm\lib\site-packages\torch\serialization.py", line 230, in _open_file_like
return _open_file(name_or_buffer, mode)
File "C:\Users\Usuario\anaconda3\envs\greaselm\lib\site-packages\torch\serialization.py", line 211, in __init__
super(_open_file, self).__init__(open(name, mode))
PermissionError: [Errno 13] Permission denied: 'D:\\GreaseLM\\saved_models\\greaselm'
我尝试了多种解决方案,包括以管理员身份运行 PyCharm、向我的用户帐户授予权限以及更改文件文件夹的位置,但都没有解决问题。
任何人都可以提供有关如何从我通过训练模型获得的 D: 驱动器加载 PyTorch 检查点时解决此权限错误的见解吗?任何帮助将不胜感激。谢谢!
我以管理员身份运行 PyCharm:我以管理员权限启动 PyCharm,希望它能解决任何与权限相关的问题。但是,问题仍然存在,我继续收到“权限被拒绝”错误。 向用户帐户授予权限:我手动向我的用户帐户授予了包含检查点文件的目录 (D:\GreaseLM\saved_models\greaselm) 的完全权限。尽管如此,在尝试加载检查点时错误仍然存在。 更改了文件文件夹的位置:为了缓解该问题,我将文件文件夹重新定位到不同目录中的位置。但是,此更改并没有解决权限错误,我仍然遇到同样的问题。
通过在文件夹中指定特定文件名而不是尝试不加区别地访问所有先前的检查点来解决该错误。此外,授予用户对特定目录的完全访问权限并确保在目录属性中取消选中只读选项有助于解决与权限相关的问题。这个解决方案对我来说很有效。”