Linus:

# Model is in eval() mode.
model.to('cpu')



I’m a little bit confused by this comment since that line of code doesn’t set the model in evaluation mode, it only moves the model from the source device to the "cpu" device.
But maybe your comment means that somewhere else (in code you’ve not shared) you’ve called model.eval()? Just want to make sure, because judging from your description it definitely seems like the model is not in evaluation mode.