MCPcopy
hub / github.com/hkust-nlp/simpleRL-reason / __init__

Method __init__

verl/utils/tracking.py:27–69  ·  view source on GitHub ↗
(self, project_name, experiment_name, default_backend: Union[str, List[str]] = 'console', config=None)

Source from the content-addressed store, hash-verified

25 supported_backend = ["wandb", "mlflow", "swanlab", "console"]
26
27 def __init__(self, project_name, experiment_name, default_backend: Union[str, List[str]] = 'console', config=None):
28 if isinstance(default_backend, str):
29 default_backend = [default_backend]
30 for backend in default_backend:
31 if backend == 'tracking':
32 import warnings
33 warnings.warn("`tracking` logger is deprecated. use `wandb` instead.", DeprecationWarning)
34 else:
35 assert backend in self.supported_backend, f'{backend} is not supported'
36
37 self.logger = {}
38
39 if 'tracking' in default_backend or 'wandb' in default_backend:
40 import wandb
41 wandb.init(project=project_name, name=experiment_name, config=config)
42 self.logger['wandb'] = wandb
43
44 if 'mlflow' in default_backend:
45 import mlflow
46 mlflow.start_run(run_name=experiment_name)
47 mlflow.log_params(_compute_mlflow_params_from_objects(config))
48 self.logger['mlflow'] = _MlflowLoggingAdapter()
49
50 if "swanlab" in default_backend:
51 import swanlab
52 import os
53
54 SWANLAB_API_KEY = os.environ.get("SWANLAB_API_KEY", None)
55 SWANLAB_LOG_DIR = os.environ.get("SWANLAB_LOG_DIR", "swanlog")
56 SWANLAB_MODE = os.environ.get("SWANLAB_MODE", "cloud")
57 if SWANLAB_API_KEY:
58 swanlab.login(SWANLAB_API_KEY) # NOTE: previous login information will be overwritten
59 swanlab.init(project=project_name,
60 experiment_name=experiment_name,
61 config=config,
62 logdir=SWANLAB_LOG_DIR,
63 mode=SWANLAB_MODE)
64 self.logger["swanlab"] = swanlab
65
66 if 'console' in default_backend:
67 from verl.utils.logger.aggregate_logger import LocalLogger
68 self.console_logger = LocalLogger(print_to_console=True)
69 self.logger['console'] = self.console_logger
70
71 def log(self, data, step, backend=None):
72 for default_backend, logger_instance in self.logger.items():

Callers

nothing calls this directly

Calls 5

LocalLoggerClass · 0.90
initMethod · 0.45
getMethod · 0.45

Tested by

no test coverage detected