| from __future__ import annotations | |
| import json | |
| from pathlib import Path | |
| import numpy as np | |
| ROOT = Path(__file__).resolve().parents[1] | |
| RESULT_DIR = ROOT / "result" | |
| def main() -> int: | |
| score_path = RESULT_DIR / "score.json" | |
| pred_path = RESULT_DIR / "predictions.npz" | |
| if score_path.exists(): | |
| print(score_path.read_text(encoding="utf-8")) | |
| return 0 | |
| if not pred_path.exists(): | |
| raise FileNotFoundError(f"No result found at {score_path} or {pred_path}. Run scripts/inference.py first.") | |
| data = np.load(pred_path) | |
| mse = float(np.mean((data["pred"] - data["target"]) ** 2)) | |
| summary = {"mse": mse, "num_nodes": int(data["pred"].shape[0])} | |
| print(json.dumps(summary, indent=2)) | |
| return 0 | |
| if __name__ == "__main__": | |
| raise SystemExit(main()) | |