polyguard-openenv / scripts /train_grpo_planner.py
TheJackBright's picture
Deploy PolyGuard OpenEnv Space
877add7 verified
#!/usr/bin/env python3
"""Train planner GRPO-like policy (canonical planner script name)."""
from __future__ import annotations
import json
import os
from pathlib import Path
import sys
ROOT = Path(__file__).resolve().parents[1]
if str(ROOT) not in sys.path:
sys.path.insert(0, str(ROOT))
from app.training.planner_grpo import train_planner_grpo
def main() -> None:
root = Path(__file__).resolve().parents[1]
episodes = int(os.getenv("POLYGUARD_PLANNER_EPISODES", "8"))
result = train_planner_grpo(episodes=episodes, checkpoint_dir=root / "checkpoints")
out = root / "outputs" / "reports"
out.mkdir(parents=True, exist_ok=True)
(out / "planner_grpo.json").write_text(json.dumps(result, ensure_ascii=True, indent=2), encoding="utf-8")
print("planner_grpo_done")
if __name__ == "__main__":
main()