Spaces:
Runtime error
Runtime error
| #!/usr/bin/env python3 | |
| from __future__ import annotations | |
| import json | |
| def build_checkpoint_report(files: list[str]) -> dict[str, object]: | |
| by_job: dict[str, dict[str, object]] = {} | |
| for path in files: | |
| parts = path.split("/") | |
| if len(parts) < 3 or parts[0] != "jobs": | |
| continue | |
| job_id = parts[1] | |
| filename = parts[-1] | |
| if filename not in {"best_bpb.pt", "pretrain_final.pt", "latest.pt"}: | |
| continue | |
| row = by_job.setdefault(job_id, {"job_id": job_id, "paths": []}) | |
| row["paths"].append(path) | |
| candidates = [] | |
| for job_id, row in by_job.items(): | |
| paths = list(row["paths"]) | |
| preferred = None | |
| for suffix in ("pretrain_final.pt", "best_bpb.pt", "latest.pt"): | |
| for path in paths: | |
| if path.endswith(suffix): | |
| preferred = path | |
| break | |
| if preferred is not None: | |
| break | |
| candidates.append({ | |
| "job_id": job_id, | |
| "preferred_path": preferred, | |
| "available_paths": sorted(paths), | |
| }) | |
| candidates.sort(key=lambda row: row["job_id"], reverse=True) | |
| return { | |
| "n_candidates": len(candidates), | |
| "candidates": candidates, | |
| } | |
| def main() -> int: | |
| print(json.dumps(build_checkpoint_report([]), indent=2, sort_keys=True)) | |
| return 0 | |
| if __name__ == "__main__": | |
| raise SystemExit(main()) | |