-
Notifications
You must be signed in to change notification settings - Fork 18
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
Add ChainLogger
, PyTorchLogger
and LookupLogger
#19
Conversation
ChainLogger',
PyTorchLogger and
LookupLogger`ChainLogger
, PyTorchLogger
and LookupLogger
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.
Nice!
The loggerX
arguments aren't very satisfying as you noted, but I don't see an immediate way around this either.
One thing: we should add at least a few unit tests here. I see that we haven't been in the habit of doing so for spacy-loggers
, but we really should. Checking console output etc is not straightforward, but we can at least check initialization from a config, both happy and non-happy path, etc.
Co-authored-by: Sofie Van Landeghem <[email protected]>
Added a new utility method that will be needed for the upcoming PRs. |
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.
Tests are looking good, thanks!
Just had a few more minor nitpicks...
Clarify error message Fix `None` check
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.
Should be good to merge once the tests go green :-)
Nice work!
ChainLogger
- Allows multiple loggers to be daisy-chained. The number of links in the chain is hard-coded asconfection
neither supports second-order resolution of registry functions nor does its parser correctly convert list primitives inside the same. This also interferes withpydantic
validation, making the following syntax impossible:PyTorchLogger
- Queries PyTorch stats and passes them to other loggers. We wanted to track CUDA memory statistics during training/distillation, but there was no straight-forward way to pass that information to the Weights and Biases logger, thus giving rise to logger chaining.LookupLogger
- Meant to be used to as a development tool when working with logger interop (wrote it for testing the above two additions).I still need to add support for tracking arbitrary values in
WandbLogger
, but that'll come in a separate PR.