Render dynamic histories in configurable chunks

This commit is contained in:
2026-09-23 10:35:29 +08:00
parent 43aff1e2ee
commit a06ca45f30
7 changed files with 181 additions and 32 deletions
+11
View File
@@ -35,6 +35,11 @@ def build_parser() -> argparse.ArgumentParser:
run = subparsers.add_parser("run", help="run renderer and solver from a task JSON file")
run.add_argument("task", type=Path)
run.add_argument(
"--render-chunk-size",
type=int,
help="override the task's records per renderer request (default: 60)",
)
return parser
@@ -60,6 +65,11 @@ def main(argv: list[str] | None = None) -> int:
task = _load_task(args.task)
renderer = LLMClient(LLMClientConfig.from_env("renderer"))
solver = LLMClient(LLMClientConfig.from_env("solver"))
render_chunk_size = (
args.render_chunk_size
if args.render_chunk_size is not None
else int(task.get("render_chunk_size", 60))
)
summary = run_evaluation(
renderer=renderer,
solver=solver,
@@ -69,6 +79,7 @@ def main(argv: list[str] | None = None) -> int:
output_dir=Path(task["output_dir"]),
entity_count=int(task.get("entity_count", 128)),
simulation_steps=int(task.get("simulation_steps", 1000)),
render_chunk_size=render_chunk_size,
)
print(json.dumps(summary, ensure_ascii=False, indent=2))
return 0