@mratsim, You’re right! I made a mistake here understanding the question.
I don’t use to do that but, maybe something dirty
like that to save you entirely objects:
import copy
import pickle
# model stuff
model = mymodel()
train = trainer.train(model...)
# copy you entirely object and save it
saved_trainer = copy.deepcopy(train)
with open(r"my_trainer_object.pkl", "wb") as output_file:
pickle.dump(saved_trainer, output_file)