(self, project_name, experiment_name, default_backend: Union[str, List[str]] = 'console', config=None, local_dir=None, wandb_mode='online')
| 22 | supported_backend = ['wandb', 'console'] |
| 23 | |
| 24 | def __init__(self, project_name, experiment_name, default_backend: Union[str, List[str]] = 'console', config=None, local_dir=None, wandb_mode='online'): |
| 25 | if isinstance(default_backend, str): |
| 26 | default_backend = [default_backend] |
| 27 | for backend in default_backend: |
| 28 | if backend == 'tracking': |
| 29 | import warnings |
| 30 | warnings.warn("`tracking` logger is deprecated. use `wandb` instead.", DeprecationWarning) |
| 31 | else: |
| 32 | assert backend in self.supported_backend, f'{backend} is not supported' |
| 33 | |
| 34 | self.logger = {} |
| 35 | |
| 36 | if 'tracking' in default_backend or 'wandb' in default_backend: |
| 37 | import wandb |
| 38 | # wandb.mode = 'offline' |
| 39 | wandb.init(project=project_name, name=experiment_name, mode=wandb_mode, config=config) |
| 40 | self.logger['wandb'] = wandb |
| 41 | |
| 42 | if 'console' in default_backend: |
| 43 | from verl.utils.logger.aggregate_logger import LocalLogger |
| 44 | self.console_logger = LocalLogger(print_to_console=True, log_dir=local_dir) |
| 45 | self.logger['console'] = self.console_logger |
| 46 | |
| 47 | def log(self, data, step, backend=None): |
| 48 | for default_backend, logger_instance in self.logger.items(): |
nothing calls this directly
no test coverage detected