| 107 | |
| 108 | |
| 109 | def run(config_path: Path, out_root: Path) -> Path: |
| 110 | cfg = _read_config(config_path) |
| 111 | meta = cfg.get("meta", {}) |
| 112 | dataset, dataset_meta = _dataset_from_cfg(cfg) |
| 113 | merged_cfg = _merged_run_cfg(cfg) |
| 114 | |
| 115 | out = openquant.research.run_flywheel_iteration(dataset, config=merged_cfg) |
| 116 | |
| 117 | run_name = str(meta.get("name", config_path.stem)) |
| 118 | digest = openquant.research.research_run_manifest(cfg)["config_digest"] |
| 119 | run_dir = out_root / f"{run_name}-{digest}" |
| 120 | _write_run_artifacts( |
| 121 | run_dir, |
| 122 | run_name=run_name, |
| 123 | config_path=config_path, |
| 124 | manifest_cfg=cfg, |
| 125 | dataset_meta=dataset_meta, |
| 126 | out=out, |
| 127 | ) |
| 128 | |
| 129 | print(run_dir) |
| 130 | return run_dir |
| 131 | |
| 132 | |
| 133 | def run_grid(config_path: Path, grid_config_path: Path, out_root: Path) -> Path: |