RoboSynChallenge team checkpoints (Ο0.5)
Ο0.5 checkpoints fine-tuned by our team for the RoboSynChallenge CobotMagic simulation tasks, trained with openpi from pi05_base on the official RoboSynChallenge/cobotmagic_Sim_<task> datasets (1,000 expert episodes per task, LeRobot v2.1).
The repository has one folder per task (ten tasks); inside, <run>/<step>/ is one openpi checkpoint step: params/ (full model parameters, also for LoRA runs), assets/<repo_id>/norm_stats.json and, for most folders, train_state/ (optimizer state) for resuming.
Checkpoints (<task>/<run>/<step>)
| Path | Task | Run | Step | Success / episodes | Mean action steps / limit | Evaluation |
|---|---|---|---|---|---|---|
table_rearrangement/pi05_full_v1/5000 |
table_rearrangement | full fine-tune | 5000 | 60 / 100 | 246.6 / 361 | random setting, 100 episodes |
table_rearrangement/pi05_full_v1/10000 |
table_rearrangement | full fine-tune | 10000 | 73 / 100 | 219.1 / 361 | random setting, 100 episodes |
table_rearrangement/pi05_full_v1/15000 |
table_rearrangement | full fine-tune | 15000 | 78 / 100 | 209.3 / 361 | random setting, 100 episodes |
table_rearrangement/pi05_full_v1/19999 |
table_rearrangement | full fine-tune | 19999 | 76 / 100 | 229.3 / 361 | random setting, 100 episodes |
table_rearrangement/pi05_lora_v1/2500 |
table_rearrangement | LoRA | 2500 | 32 / 100 | 299.2 / 361 | random setting, 100 episodes |
table_rearrangement/pi05_lora_v1/5000 |
table_rearrangement | LoRA | 5000 | 39 / 100 | 294.6 / 361 | random setting, 100 episodes |
table_rearrangement/pi05_lora_v1/7500 |
table_rearrangement | LoRA | 7500 | 52 / 100 | 259.5 / 361 | random setting, 100 episodes |
table_rearrangement/pi05_lora_v1/10000 |
table_rearrangement | LoRA | 10000 | 56 / 100 | 265.4 / 361 | random setting, 100 episodes |
table_rearrangement/pi05_lora_v1/12500 |
table_rearrangement | LoRA | 12500 | 70 / 100 | 233.6 / 361 | random setting, 100 episodes |
table_rearrangement/pi05_lora_v1/14999 |
table_rearrangement | LoRA | 14999 | 76 / 100 | 223.9 / 361 | random setting, 100 episodes |
items_handover/pi05_lora_v1/2500 |
items_handover | LoRA | 2500 | 7 / 100 | 348.3 / 350 | random setting, 100 episodes |
items_handover/pi05_lora_v1/5000 |
items_handover | LoRA | 5000 | 1 / 100 | 349.5 / 350 | random setting, 100 episodes |
items_handover/pi05_lora_v1/7500 |
items_handover | LoRA | 7500 | 11 / 100 | 349.0 / 350 | random setting, 100 episodes |
items_handover/pi05_lora_v1/10000 |
items_handover | LoRA | 10000 | 14 / 100 | 347.6 / 350 | random setting, 100 episodes |
items_handover/pi05_lora_v1/12500 |
items_handover | LoRA | 12500 | 38 / 100 | 342.2 / 350 | random setting, 100 episodes |
items_handover/pi05_lora_v1/14999 |
items_handover | LoRA | 14999 | 14 / 100 | 348.4 / 350 | random setting, 100 episodes |
items_handover/pi05_aug_lora_v1/2500 |
items_handover | LoRA (team-generated data) | 2500 | 0 / 100 | 350.0 / 350 | random setting, 100 episodes; trained on the team-generated data (see Notes) |
items_handover/pi05_aug_lora_v1/5000 |
items_handover | LoRA (team-generated data) | 5000 | 2 / 42 | β | early-stopped |
items_handover/pi05_aug_lora_v1/7500 |
items_handover | LoRA (team-generated data) | 7500 | 0 / 25 | β | early-stopped |
items_handover/pi05_aug_lora_v1/10000 |
items_handover | LoRA (team-generated data) | 10000 | 0 / 25 | β | early-stopped |
items_handover/pi05_aug_lora_v1/12500 |
items_handover | LoRA (team-generated data) | 12500 | 1 / 29 | β | early-stopped |
items_handover/pi05_aug_lora_v1/14999 |
items_handover | LoRA (team-generated data) | 14999 | 0 / 25 | β | early-stopped |
handle_basket/pi05_lora_v1/2500 |
handle_basket | LoRA | 2500 | 28 / 100 | 472.9 / 500 | random setting, 100 episodes |
handle_basket/pi05_lora_v1/5000 |
handle_basket | LoRA | 5000 | 35 / 100 | 467.1 / 500 | random setting, 100 episodes |
handle_basket/pi05_lora_v1/7500 |
handle_basket | LoRA | 7500 | 79 / 100 | 414.0 / 500 | random setting, 100 episodes |
handle_basket/pi05_lora_v1/10000 |
handle_basket | LoRA | 10000 | 45 / 100 | 447.2 / 500 | random setting, 100 episodes |
handle_basket/pi05_lora_v1/12500 |
handle_basket | LoRA | 12500 | 25 / 100 | 469.4 / 500 | random setting, 100 episodes |
handle_basket/pi05_lora_v1/14999 |
handle_basket | LoRA | 14999 | 65 / 100 | 431.6 / 500 | random setting, 100 episodes |
item_assembly/pi05_lora_v1/2500 |
item_assembly | LoRA | 2500 | 0 / 18 | β / 500 | early-stopped at 0/18 (no realistic chance against the baselines), gripper rescaling on |
item_assembly/pi05_lora_v1/5000 |
item_assembly | LoRA | 5000 | 0 / 18 | β / 500 | early-stopped at 0/18 (no realistic chance against the baselines), gripper rescaling on |
item_assembly/pi05_lora_v1/7500 |
item_assembly | LoRA | 7500 | 0 / 25 | β / 500 | early-stopped at 0/25 (no realistic chance against the baselines), gripper rescaling on |
item_assembly/pi05_lora_v1/10000 |
item_assembly | LoRA | 10000 | 16 / 100 | 469.1 / 500 | random setting, 100 episodes, gripper rescaling on |
item_assembly/pi05_lora_v1/12500 |
item_assembly | LoRA | 12500 | 2 / 40 | β / 500 | early-stopped at 2/40 (no realistic chance against the baselines), gripper rescaling on |
item_assembly/pi05_lora_v1/14999 |
item_assembly | LoRA | 14999 | 13 / 100 | 474.6 / 500 | random setting, 100 episodes, gripper rescaling on |
Recommended checkpoint per task
| Task | Best of ours | Official / community baselines (per 100) |
|---|---|---|
| table_rearrangement | table_rearrangement/pi05_full_v1/15000 (78/100) |
ACT 96, SmolVLA 90, DP 17 |
| items_handover | items_handover/pi05_lora_v1/12500 (38/100) |
ACT 26, SmolVLA 22, DP 0 |
| handle_basket | handle_basket/pi05_lora_v1/7500 (79/100) |
ACT 54, SmolVLA 33, DP 12 |
| item_assembly | item_assembly/pi05_lora_v1/10000 (16/100, below every baseline) |
ACT 65, community Ο0.5 64, SmolVLA 51, DP 38 |
Training recipes
| Run | Trainable weights | Steps | Batch | LR schedule | EMA | Wall clock | Checkpoint size |
|---|---|---|---|---|---|---|---|
table_rearrangement/pi05_full_v1 (full) |
all 3.35B parameters | 20,000 | 64 | cosine 2.5e-5 β 2.5e-6 over 30k, warmup 1k | 0.99 | 34 h 58 min, one shared H100 NVL | 42 GB (params 12 GB + train_state 31 GB); the step-5000 folder holds params only |
<task>/pi05_lora_v1 (LoRA) |
LoRA rank 16 (PaliGemma) / 32 (action expert) + SigLIP encoder + projections, 467M of 3.4B | 15,000 (last save named 14999) | 64 | cosine 2.5e-5 β 2.5e-6 over 15k, warmup 1k | off | 8 to 13 h on two H100 NVL | 9.5 GB (params + optimizer state of the trained subset) |
Action horizon 50, images 224Γ224 from three cameras, 14-D state and absolute joint actions with the openpi delta transform for the arm joints (config names pi05_<task> and pi05_<task>_lora in policy/pi05/src/openpi/training/config.py of the team repository).
Using a checkpoint
From the team repository (arlo-yang/RoboSynChallenge), with the Ο0.5 inference worker installed (policy/pi05_community/setup.sh):
python web/scripts/hf_hub.py download checkpoint handle_basket/pi05_lora_v1/7500 # -> checkpoints/handle_basket/pi05_lora_v1/7500
conda activate robosyn && export ROBOSYN_RUNTIME=$CONDA_PREFIX
bash policy/pi05_community/inference.sh eval --task handle_basket --episodes 100 --gpu 0 \
--local-checkpoint checkpoints/handle_basket/pi05_lora_v1/7500 --config-name pi05_handle_basket_lora --label hb_7500 --rescale-gripper
Pass the openpi config the checkpoint was trained with (--config-name pi05_<task> for the full fine-tune, pi05_<task>_lora for LoRA). The worker executes 10 of the 50 predicted actions per call.
Gripper scaling. The official datasets store the two gripper targets in [0, 1] for Items hand-over, Handle basket and Item assembly, while the simulator clips actions to [0, 0.05]; pass --rescale-gripper for those tasks. Table rearrangement stores physical gripper positions and must not use it. (The Items hand-over and Handle basket numbers above were measured without rescaling, which happens to act as an open/close threshold; Item assembly needs the rescaling.)
Notes
Success rates come from our own 100-episode evaluations in the
randomsetting with expert feasibility screening, on the same EmbodiChain simulator as the official baselines; they are not official scores. A 100-episode run has roughly a 5-point standard error.LoRA success is not monotonic in training steps on these tasks (e.g. Handle basket 79 at step 7500, then 45, 25, 65) while the training loss falls smoothly; pick checkpoints by evaluation, not by loss.
Replays, training records, loss curves and per-checkpoint analyses are on the team page (task pages, "Policies" and "Our fine-tuning runs").
Datasets for augmentation experiments are in
2bidoubi/Robo_trajectory; this repository holds model weights only.items_handover/pi05_aug_lora_v1/*was trained with the same LoRA recipe on the team-generatedrobotrajectory/RoboSyn-Trajectoryfolderitems_handover_augmented_1702(1702 episodes) instead of the official release. Those episodes have no appearance randomisation (white table, grey holder, black pen, fixed layout, no distractors), while the official data and the evaluation randomise textures, colours, poses and distractors, so every checkpoint scored 0 to 2 successes; evaluations after step 2500 were stopped early (0 successes after 25 episodes or at most 2 after 40). Kept for the record only.