Skip to content

feat: experience-guided training with continual learning replay#98

Open
pearlq12345 wants to merge 6 commits into
MINT-SJTU:mainfrom
pearlq12345:feat/experience-loop
Open

feat: experience-guided training with continual learning replay#98
pearlq12345 wants to merge 6 commits into
MINT-SJTU:mainfrom
pearlq12345:feat/experience-loop

Conversation

@pearlq12345
Copy link
Copy Markdown

What

  • Add ExperienceStore: append-only JSONL store that records training outcomes (dataset, policy, result, lesson)
  • Add get_replay_datasets(): retrieves historically successful datasets for the same policy to mix into new training runs
  • TrainSession now records every training submission and completion as a structured experience
  • TrainSession generates experience_hint from past terminal-state records (success/failed/error/stopped only, not submitted)
  • Add continual_learning flag (default false): when enabled, mixes historical datasets into the current training run to prevent catastrophic forgetting (ref: continual learning survey, arxiv 2302.00487)
  • HTTP training route and UI Training Center checkbox expose the flag — off by default, does not affect existing workflows

Testing

  • 7 unit tests in tests/test_experience_replay.py and tests/test_train_experience.py
  • Tests are hermetically isolated via per-test tmp_path fixtures

Xiaofang Wu added 6 commits May 6, 2026 11:17
…checks

- Validates checkpoint path exists before inference starts
- Checks action_dim in config.json matches manifest follower motor count
- Warns on device mismatch between checkpoint and manifest
- Warns on dataset repo_id mismatch between checkpoint and current dataset
- Warns if dataset codebase_version is older than v2.1
- Hooked into EmbodiedService.start_inference()
- 4 new tests covering missing checkpoint, action_dim mismatch, version warning, passing case
…nferenceConfigVerifier

Experience replay for continual learning was premature:
- lerobot BC models train from scratch, no catastrophic forgetting
- no checkpoint-resume support, so replay has no effect
- confusing for research users testing different models

Kept:
- ExperienceStore: records training history, surfaces hints for next run
- InferenceConfigVerifier: checkpoint/dataset consistency checks before inference
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant