InstinctWAM (RoboTwin 2.0)
A compact World-Action Model (video world-model + action expert) for bimanual manipulation on RoboTwin 2.0 (aloha-agilex). Trained from scratch using only permissively-licensed inputs:
- WAN-2.2-TI2V-5B (teacher / structured-slice init) โ Apache-2.0
- RoboTwin 2.0 trajectories โ Apache-2.0
- No third-party trained checkpoints were used (see
NOTICE).
Architecture
- Compact video DiT (dim 2048, 12 layers, 16 heads, head_dim 128; ~849M) distilled from WAN-2.2 via structured layer slicing; future-latent size 192ร160 (RT variant).
- Action expert (dim 768, 12 layers, chunk 16, state/action dim 14; ~139M), joint attention (MoT).
- Flow-matching / rectified-flow objective; asymmetric denoising at inference (RT: 2 video-refresh steps).
Training
Curated 16 hard/long-horizon RoboTwin tasks โ 9,254 episodes โ 2.55M samples. Three-stage recipe, 80k steps/stage on 2รH100:
- Compact video distillation (hidden+motion KD in 256-d PCA space + GT flow-matching)
- Frozen-video action training
- Joint video-action refinement
Evaluation (16 tasks ร 20 episodes, success rate %)
| budget | demo_clean | demo_randomized |
|---|---|---|
| 80kร3 (this model) | 61.6 | 58.4 |
Files
instinctwam_robotwin2.ptโ the deployable weights (final, joint-refined).action_stats.jsonโ qpos mean/std normalization (required at inference).NOTICEโ third-party attribution (WAN-2.2, RoboTwin 2.0).
Usage
Code / architecture: https://github.com/william-Dic/instinctwam_clean
from instinct_wam import InstinctWAM
model = InstinctWAM.from_pretrained("GM717/instinct-wam-robotwin-clean") # pulls instinctwam_robotwin2.pt
Pair with action_stats.json for action de-normalization. RT inference settings:
num_inference_steps 10, video_refresh_steps [0, 1], future_video_size [192, 160].
License: Apache-2.0 (see NOTICE for third-party components).