-
Notifications
You must be signed in to change notification settings - Fork 3.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
An instance of SaveConfigCallback should only save the config once #14927
Conversation
I think I agree with the changes. However, I don't understand this sentence:
In order to reproduce, I think it makes sense to have run=False, overwrite=False, because we want to save the config of the initial fit/test. If we were to overwrite, we would end up with the config of the last ever called fit/test, but that would make it not reproducible. The logic in the code of this PR however makes sense to me, and I think it implements what I mean. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM !
What does this PR do?
When using
LightningCLI(.., run=False)
it is very common to call multipleTrainer
methods, e.g.fit
thentest
. In the second method call, theSaveConfigCallback
attempts to save the config again, which by default would fail because it refuses to overwrite. This makes it necessary to havesave_config_overwrite=True
even though one might not want this. This can be observed in some places, for example #1715 (comment).This change is so that a single instance of
SaveConfigCallback
only attempts to save the config once, avoiding the problem described before. I would consider this to be a bug fix.Does your PR introduce any breaking changes? If yes, please list them.
None
Before submitting
PR review
Anyone in the community is welcome to review the PR.
Before you start reviewing, make sure you have read the review guidelines. In short, see the following bullet-list:
Did you have fun?
Make sure you had fun coding 🙃