/
githubmirror
/
ColossalAI
Обзор
Документация
Войти
/
githubmirror
/
ColossalAI
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
examples/community/roberta/pretraining/utils/WandbLog.py
40 строк
1 KB
Hongxin Liu
[misc] update pre-commit and run all files (#4752)
19 сен 2023, 09:20
Не верифицирован
19 сен 2023, 09:20
079bf3c
Код
Авторство
О чём код?
import os import time import wandb from torch.utils.tensorboard import SummaryWriter class WandbLog: @classmethod def init_wandb(cls, project, notes=None, name=time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()), config=None): wandb.init(project=project, notes=notes, name=name, config=config) @classmethod def log(cls, result, model=None, gradient=None): wandb.log(result) if model: wandb.watch(model) if gradient: wandb.watch(gradient) class TensorboardLog: def __init__(self, location, name=time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()), config=None): if not os.path.exists(location): os.mkdir(location) self.writer = SummaryWriter(location, comment=name) def log_train(self, result, step): for k, v in result.items(): self.writer.add_scalar(f"{k}/train", v, step) def log_eval(self, result, step): for k, v in result.items(): self.writer.add_scalar(f"{k}/eval", v, step) def log_zeroshot(self, result, step): for k, v in result.items(): self.writer.add_scalar(f"{k}_acc/eval", v, step)