Unfortunately using strict = False did not work for me. However, I found a solution, but the workaround is a bit awkward:
model = myGAN(epochs = 10, additional_args)
model.fit(data)

torch.save({"epoch" : 10,
            "model_state_dict" : model.state_dict(),
            "G_optimizer_state_dict" : self.G_optimizer.state_dict(),
            "D_optimizer_state_dict" : self.D_optimizer.state_dict() }, 
            "model.pth")

model2 = myGAN()
model2 = myGAN.fit(data, epochs = 0)

checkpoint = torch.load("model.pth")
model2.load_state_dict(checkpoint['model_state_dict'])
model2.G_optimizer.load_state_dict(checkpoint['G_optimizer_state_dict'])
model2.D_optimizer.load_state_dict(checkpoint['D_optimizer_state_dict'])
 
model2.fit(data, epochs = 10)

I moved the epochs inside the fit function, but I still have to call fit with 0 epochs before loading the model to accept the saved parameters.