2.2 KiB
2.2 KiB
Changelog
All notable changes to this project will be documented here. Format follows Keep a Changelog; versioning follows Semantic Versioning.
[Unreleased]
Changed
- Mouse post-processing pipeline reworked to remove endpoint artifacts:
hard forward clip → backtrack-tolerant soft monotonic with tanh
overshoot compression (
soften_forward); tail-drag endpoint snapping → whole-curve smoothstep residual correction (warp_endpoints); abrupt start damping → continuous smoothstep damping (damp_start); gaussian smoothing now applied to both axes. tests/unit/data/golden_mouse.npzre-baselined against the new pipeline (intentional behavior change; scroll goldens unchanged).
[0.2.0] - 2026-05-12
Changed (breaking)
- Inference no longer requires PyTorch. Runtime dependencies are now
numpy + onnxruntimeonly. - Public API additions:
MouseModelandScrollModelclasses wrapping a persistent ORTInferenceSession. - Function signatures
generate()andgenerate_scroll()are now keyword-only past the positionalstart/end(orstart_scroll_y/target_scroll_y). - New parameters:
click=True(mouse),seed=(both),viewport_height=(scroll). - Removed
config=parameter; use kwargs directly. model_dir=renamed tomodel_path=; acceptsstrorpathlib.Path.start_scrollY/target_scrollYrenamed tostart_scroll_y/target_scroll_y.- Training, web UI, collector, eval, and data adapter code moved to repo-level
tools/; no longer packaged in the wheel.
Added
- ONNX-format pre-trained weights bundled inside the wheel via
importlib.resources(~3 MB). tools/export_onnx.pyscript with PyTorch/ORT parity check.- Errors namespace
ai_mouse.errorswithAiMouseError,ModelLoadError,GenerationError. - Custom ORT providers parameter for GPU / DirectML.
- Per-process
lru_cachesogenerate()/generate_scroll()reuse the default model across calls.
Removed
- Legacy
JointCVAEclass. ai_mouse.config.GenerateConfigtop-level export (parameters moved to kwargs).- Source dependency on
scipy.stats.truncnorm(replaced by numpy rejection sampling).