-
Notifications
You must be signed in to change notification settings - Fork 229
adds wandb loging of metrics #676
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
Conversation
The docs for this PR live here. All of your documentation changes will be reflected on that endpoint. The docs are available until 30 days after the last update. |
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 but you need to update the doc on logging
if self.should_push_results_to_tensorboard: | ||
self.push_to_tensorboard( | ||
results=self.metrics_logger.metric_aggregated, details=self.details_logger.compiled_details | ||
) | ||
|
||
def push_to_wandb(self, results_dict: dict, details_datasets: dict) -> None: | ||
self.wandb_run.log( | ||
{**results_dict["results"]}, |
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.
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.
We can probably pass it from nanotron_model
, since these metrics are implementation-specific
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.
not sure what you mean by that ? what's checkpoint_num
and is consumed_tokens
the total amount of tokens used as input ?
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.
I mean just arbitrary step counters coming from somewhere else, e.g. we can implement consumed_tokens
(consumed_train_samples*seq_len
) in nanotron_model.py
def push_to_wandb(self, results_dict: dict, details_datasets: dict) -> None: | ||
self.wandb_run.log( | ||
{**results_dict["results"]}, | ||
) |
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.
nit: IIUC and the metrics are logged as custom|mmlu:astronomy|0/acc_norm
, we can .replace(':', '/')
to get custom|mmlu/astronomy|0/acc_norm
.
Otherwise wandb creates tons of collapsible sections for every subset of the benchmark, instead of just one section for custom|mmlu
with all the metrics inside.
No description provided.