CheckpointConfiguration
ABC for configurations that include checkpoint settings.
Intended to be used as an interface so that the checkpoint code only sees the checkpoint-related properties.
Values
checkpoint_frequency
checkpoint_frequency: Annotated[int, Field(gt=0)] = 10checkpoint_movie_command
checkpoint_movie_command: Annotated[str, Field(min_length=1)] = 'oakemu'The OakEmu tool executable used to record checkpoint movies. May be an absolute path; a bare name is resolved against PATH and then ~/.local/bin (GUI-launched processes often lack the latter in PATH).
checkpoint_movie_extra_end_frames
checkpoint_movie_extra_end_frames: Annotated[int, Field(ge=0)] = 50Emulator frames to keep recording after the episode ends, so the movie shows what the final step led to. Stop conditions fire the frame the game decides an outcome, often before it is drawn -- Green Beret's death routine stop fires before any death animation ; with no extra frames a movie can end with the player apparently fine. 50 frames is one second.
checkpoint_movie_filename_template
checkpoint_movie_filename_template: Annotated[str, Field(min_length=1)] = '{game}_checkpoint_{checkpoint}.mp4'Relative movie output path inside the checkpoint directory. Supports the same fields as checkpoint_onnx_filename_template.
checkpoint_movie_maximum_steps
checkpoint_movie_maximum_steps: Annotated[int, Field(gt=0)] = 5000Step cap for checkpoint movies so games without a natural end (for example Deathchase) still terminate.
checkpoint_onnx_filename_template
checkpoint_onnx_filename_template: Annotated[str, Field(min_length=1)] = '{game}_checkpoint_{checkpoint}.onnx'Relative ONNX output path inside the checkpoint directory. Supports {game}, {game_name}, {experiment}, {experiment_name}, {checkpoint}, and {checkpoint_number}.
compress_checkpoints
compress_checkpoints: bool = TrueWhether to zstd-compress checkpoint files. Disabling can significantly speed up checkpoint saving at the cost of larger files.
keep_last_n_checkpoints
keep_last_n_checkpoints: Annotated[int | None, Field(gt=0)] = 10save_movies_with_checkpoints
save_movies_with_checkpoints: bool = TrueWhether to record a movie of each checkpoint's ONNX model playing greedily into the checkpoint directory. Runs the OakEmu tool as a detached background process so training is not blocked. Requires save_onnx_with_checkpoints. Movies are pruned along with their checkpoint directories.
save_onnx_with_checkpoints
save_onnx_with_checkpoints: bool = TrueWhether to export an ONNX model into each checkpoint directory after saving checkpoint files.
save_trajectory_store_keys_csv
save_trajectory_store_keys_csv: bool = FalseWhether to save trajectory-store debug CSVs (keys, per-entry rows, and frontier summaries) in each checkpoint.