Goal: Override FastAI appending models/
prefix and .pth
suffix to the weights file path.
Version: fastai==2.7.7
Note: this behaviour does not happen to the model file path.
How can I override this behaviour?
Turning:
model.load('data/models/my_weights.pth')
Into:
FileNotFoundError: [Errno 2] No such file or directory: 'models/data/models/my_weights.pth.pth'
Code:
def inference(model_params: ModelParams, device: str, dataloader: DataLoader, id: str):
model = load_learner(model_params.model, cpu=device=='cpu')
model.load('data/models/my_weights.pth')
Traceback:
Traceback (most recent call last):
File "/home/me/BitBucket/project/app/container/main.py", line 145, in <module>
prediciton = inference(model_params, device, dataloader, id)
File "/home/me/BitBucket/project/app/container/main.py", line 116, in inference
model.load('data/models/my_weights.pth')
File "/home/me/miniconda3/envs/venv/lib/python3.9/site-packages/fastai/learner.py", line 387, in load
load_model(file, self.model, self.opt, device=device, **kwargs)
File "/home/me/miniconda3/envs/venv/lib/python3.9/site-packages/fastai/learner.py", line 51, in load_model
state = torch.load(file, map_location=device)
File "/home/me/miniconda3/envs/venv/lib/python3.9/site-packages/torch/serialization.py", line 791, in load
with _open_file_like(f, 'rb') as opened_file:
File "/home/me/miniconda3/envs/venv/lib/python3.9/site-packages/torch/serialization.py", line 271, in _open_file_like
return _open_file(name_or_buffer, mode)
File "/home/me/miniconda3/envs/venv/lib/python3.9/site-packages/torch/serialization.py", line 252, in __init__
super().__init__(open(name, mode))
FileNotFoundError: [Errno 2] No such file or directory: 'models/data/models/my_weights.pth.pth'