从不同的工作目录加载 pytorch 模型

Load pytorch model from different working directory

我想从保存所有文件的外部目录加载和访问预训练模型。目录结构如下:

-MyProject
----Model_checkpoint_and_scripts
------access_model.py
--run_model.py
--other files

当 运行 模型调用 access_model.py 时,它会在当前工作目录中查找 model.py 但没有找到。按照建议 ,我可以使用

the_model = TheModelClass(*args, **kwargs)
the_model.load_state_dict(torch.load(PATH))

但在这种情况下,保存所有参数以初始化模型的好方法是什么?我正在考虑对命令行参数进行 pickle,但是有一些参数是计算出来的,例如 vocab 大小。

谢谢

我可以通过添加以下行来加载它:

here = os.path.dirname(os.path.abspath(__file__))
sys.path.append(here)