diff --git a/src/coolrl_lost_cities/games/classic/deep_cfr/cli.py b/src/coolrl_lost_cities/games/classic/deep_cfr/cli.py index 0002837..67fe68f 100644 --- a/src/coolrl_lost_cities/games/classic/deep_cfr/cli.py +++ b/src/coolrl_lost_cities/games/classic/deep_cfr/cli.py @@ -106,6 +106,7 @@ def train_command(args: argparse.Namespace) -> None: config=config.to_dict(), run_dir=str(run_dir), tags=list(args.wandb_tag) if args.wandb_tag else None, + notes=args.wandb_notes, ) ) trainer = DeepCFRTrainer( @@ -251,6 +252,10 @@ def main(argv: list[str] | None = None) -> None: default=[], help="Tag to attach to the W&B run (repeatable).", ) + train.add_argument( + "--wandb-notes", + help="Free-form note describing this run's purpose (shown on the W&B run page).", + ) train.set_defaults(func=train_command) evaluate = subparsers.add_parser("eval") diff --git a/src/coolrl_lost_cities/games/classic/deep_cfr/tracking.py b/src/coolrl_lost_cities/games/classic/deep_cfr/tracking.py index 95727ef..cd3ad86 100644 --- a/src/coolrl_lost_cities/games/classic/deep_cfr/tracking.py +++ b/src/coolrl_lost_cities/games/classic/deep_cfr/tracking.py @@ -71,6 +71,7 @@ class WandbRunTracker: mode: str | None = None, config: dict[str, Any] | None = None, tags: list[str] | None = None, + notes: str | None = None, ): try: import wandb @@ -88,6 +89,7 @@ class WandbRunTracker: config=config or {}, dir=str(run_dir_path), tags=tags, + notes=notes, reinit=True, )