Part of Ethgar's robot lab notebook: the 5k reference model of a clean-room SkyJEPA reimplementation (5.6k parameters; flies circle, figure-8 and lemniscate by MPPI through the learned model in sim). The code repository is private for now.
SkyJEPA — quadrotor latent-dynamics world model
A clean-room PyTorch reimplementation of SkyJEPA (Rao et al., 2026,
arXiv:2606.23444): a JEPA-style latent-dynamics world model for quadrotors,
trained entirely on domain-randomized simulation, with a physics-inspired prober
and an MPPI controller. Trained with the full profile.
- Training data:
Ethgar/skyjepa-quadrotor-sim - Method: two causal-TCN encoders (state + action) → GRU latent predictor, anti-collapse via SIGReg (LeJEPA), a frozen-backbone physics prober that outputs residual accelerations correcting a differentiable SO(3) rigid-body integrator. Encoder+predictor stack is ~5.6k parameters.
- Inputs: 18-dim state (position, velocity, rotation matrix, body rates) and 4-dim action histories at 20 Hz. State-based (GPS/IMU), not vision.
Files
| file | contents |
|---|---|
jepa.pt | stage-1 encoders + GRU predictor + normalizer |
prober.pt | stage-2 physics prober (frozen backbone) |
baseline.pt | predictive-MLP baseline (optional) |
export/skyjepa_stack.ts | TorchScript deploy stack (optional) |
export/skyjepa_stack.onnx | ONNX deploy stack (optional) |
Usage
pip install "skyjepa[hf] @ git+https://github.com/edgarmoreaualix/LeDrone.git#subdirectory=skyjepa"
huggingface-cli download Ethgar/skyjepa --local-dir checkpoints/full
python scripts/run_mppi_demo.py --profile full --ckpt-dir checkpoints/full
License & credit
MIT. Method credit belongs to the original SkyJEPA authors (Rao et al., 2026, arXiv:2606.23444); this is an independent clean-room reimplementation, not affiliated with or endorsed by them.