Buckets:
| #!/usr/bin/env python3 | |
| # -*- coding: utf-8 -*- | |
| import argparse | |
| from typing import Optional | |
| from agent_rec.config import EVAL_TOPK | |
| def add_shared_training_args( | |
| parser: argparse.ArgumentParser, | |
| *, | |
| exp_name_default: str, | |
| device_default: str = "cuda:0", | |
| epochs_default: int = 5, | |
| batch_size_default: int = 1024, | |
| lr_default: Optional[float] = None, | |
| lr_help: Optional[str] = None, | |
| include_neg_per_pos: bool = True, | |
| include_eval_cand: bool = True, | |
| eval_cand_default: int = 1000, | |
| topk_default: int = EVAL_TOPK, | |
| ) -> argparse.ArgumentParser: | |
| """ | |
| Attach the common training/data arguments used across runner scripts. | |
| Parameters allow each script to override defaults while keeping the argument | |
| surface consistent. Returning the parser makes the helper chainable. | |
| """ | |
| parser.add_argument("--data_root", type=str, required=True) | |
| parser.add_argument("--exp_name", type=str, default=exp_name_default, help="Cache folder name under .cache/") | |
| parser.add_argument("--epochs", type=int, default=epochs_default) | |
| parser.add_argument("--batch_size", type=int, default=batch_size_default) | |
| if lr_default is not None: | |
| parser.add_argument("--lr", type=float, default=lr_default, help=lr_help) | |
| if include_neg_per_pos: | |
| parser.add_argument("--neg_per_pos", type=int, default=1) | |
| parser.add_argument("--rng_seed_pairs", type=int, default=42) | |
| parser.add_argument("--split_seed", type=int, default=42) | |
| parser.add_argument("--valid_ratio", type=float, default=0.2) | |
| parser.add_argument("--device", type=str, default=device_default) | |
| parser.add_argument("--rebuild_training_cache", type=int, default=0) | |
| parser.add_argument("--train_parts", type=str, nargs="+", default=["PartI", "PartII", "PartIII"], help="data parts to use for training") | |
| parser.add_argument("--eval_parts", type=str, nargs="+", default=["PartI", "PartII", "PartIII"], help="data parts to use for evaluation") | |
| if include_eval_cand: | |
| parser.add_argument("--eval_cand_size", type=int, default=eval_cand_default) | |
| if topk_default is not None: | |
| parser.add_argument("--topk", type=int, default=topk_default, help="Fixed to 10 by default") | |
| return parser | |
Xet Storage Details
- Size:
- 2.25 kB
- Xet hash:
- 71fa0c473df3a950092f5d9050a4afa78badc01bb3443a47a61d2f6262c70e6c
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.