Repository navigation
Train official RigidFormer through shared SL - #889
Conversation
48eab97 to
017d1af
Compare
017d1af to
0f1845b
Compare
[Medium impact] The PR adds a RigidFormer training workflow and optional recovery features to shared supervised learning. The PR appears safe to merge, with a non-blocking correction needed to preserve training settings in exported weights.
|
| "model_state_dict": { | ||
| k.removeprefix("network."): v.detach().clone() for k, v in selected.items() | ||
| }, | ||
| "config": signature["reference_config"], |
There was a problem hiding this comment.
Exported settings lose overrides
When a recipe overrides training settings or sampling, export_rigidformer_checkpoint still writes the unchanged reference_config. Changed loss weights or step-size choices disappear from the exported file, leaving readers with settings that do not describe how the weights were trained. Copy the reference configuration and merge the saved training and sampling settings before exporting it.
Knowledge Base Used: RigidFormer dynamics models
Prompt To Fix With AI
This is a comment left during a code review.
Path: extensions/embodichain_models/embodichain_models/dynamics/rigidformer/checkpoint.py
Line: 131
Comment:
**Exported settings lose overrides**
When a recipe overrides training settings or sampling, `export_rigidformer_checkpoint` still writes the unchanged `reference_config`. Changed loss weights or step-size choices disappear from the exported file, leaving readers with settings that do not describe how the weights were trained. Copy the reference configuration and merge the saved `training` and `sampling` settings before exporting it.
**Knowledge Base Used:** [RigidFormer dynamics models](https://app.greptile.com/dexforce/-/custom-context/knowledge-base/dexforce/embodichain/-/docs/rigidformer-dynamics.md)
---
For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.
Description
Train prepared MOVi geometry through the existing supervised learner/trainer, preserving author shifted anchor losses, grouped AdamW, epoch scheduling and ramped FP32 EMA. Immutable geometry, splits, scales and committed anchor/FPS caches bind source recovery; a compact index retains the author window mapping without repeated path dictionaries.
Add ordered
SupervisedTrainingStateparticipants that commit after optimizer success and retain rank-local checkpoint/validation state. Preserve main's #877 source-recovery preflight. DDP buffer broadcast is opt-in; empty/default recipes retain checkpoint formats 1/2, while required participant/buffer state uses 3/4. Raw/EMA export remains distinct from importing official optimizer state.Stack
mainType of change
Validation
train-slCLI through recovery, and strictly reloads raw/EMA exports without a repository PYTHONPATH.The development Blackwell host used process-local NCCL 2.29.7 built for sm_120 with CUDA 12.8. Its inherited NCCL 2.26.2 also failed an independent parameter-layout-only DDP broadcast. This correctness validation uses shared-memory transport with P2P/IB disabled; the dependent acceptance protocol records reproduction details.
Checklist
black .with Black 26.10.1.