← Lesson
Checkpoints You Can Replay
Joeven
Run
Reset
Python loads on first run
CKPT = [] def checkpoint(step, state, obs): CKPT.append({ "step": step, "state": dict(state), "obs": obs, }) def latest(): return CKPT[-1] if CKPT else None def resume_from(step_no): for c in reversed(CKPT): if c["step"] == step_no: return {"state": dict(c["state"]), "obs": c["obs"]} return None state = {"phase": "gather", "ticket_id": None} checkpoint(1, state, {"hits": 3}) state = {"phase": "apply", "ticket_id": "T1"} checkpoint(2, state, {"id": "T1"}) print("latest phase", latest()["state"]["phase"]) print("resume step 1", resume_from(1)["state"]["phase"]) print("missing", resume_from(9))
Run to execute this in your browser. Nothing is sent to a server.