Spaces:
Running
Running
| title: Project-IRA | |
| emoji: π¦Ύ | |
| colorFrom: indigo | |
| colorTo: gray | |
| sdk: static | |
| pinned: false | |
| short_description: Vision-Language-Action policies for LeRobot SO101 | |
| # Project-IRA β Interactive Robotic Arm | |
| Vision-Language-Action policies and multi-task manipulation datasets for the | |
| **SO-101** low-cost robot arm, built on [LeRobot](https://github.com/huggingface/lerobot). | |
| **Code:** https://github.com/Project-IRA/interactive-robotic-arm β the repositories here and that repo depend on each other; the code | |
| repo contains the recording, validation, merging, training and inference pipeline that | |
| produced everything in this organization. | |
| **Authors:** Cleo Baten, Bela Keppler, Jonas Sapper | |
| --- | |
| ## Start here | |
| If you just want a policy that works on an SO-101: | |
| > **[`Project-IRA/TPSoSe2026_Pi05_LeRobot_SO101_Finetuning_V7_Full_V2`](https://huggingface.co/Project-IRA/TPSoSe2026_Pi05_LeRobot_SO101_Finetuning_V7_Full_V2)** β checkpoint **008000** | |
| This is the strongest model in the org: Pi0.5 fine-tuned on all four tasks, with image | |
| augmentation. Note its unusual internal directory layout, documented on its card. | |
| ## Demo | |
| <video controls src="https://huggingface.co/Project-IRA/TPSoSe2026_Pi05_LeRobot_SO101_Finetuning_V7_Full_V2/resolve/main/assets/pi05_lego_demo.mp4"></video> | |
| Pi0.5 sorting lego bricks onto colour-matched plates on the physical SO-101. | |
| ## Tasks | |
| | Task | What the arm does | | |
| |---|---| | |
| | **Sort Lego Color** | Sort lego bricks onto colour-matched plates | | |
| | **Desk Cleanup** | Clear objects from the desk into a bowl | | |
| | **Dice Throw** | Pick up a dice cup and tip the dice onto the table ("true random") | | |
| | **Fetch Ball** | Pick up a ball and place it into a waiting human hand | | |
| ## Models | |
| Quality ratings are qualitative operator assessments from rollouts on the physical arm. | |
| There are no formal success-rate numbers. | |
| | Model | Base | Trained on | Best checkpoint | Quality | | |
| |---|---|---|---|---| | |
| | [Pi05 V7 Full V2](https://huggingface.co/Project-IRA/TPSoSe2026_Pi05_LeRobot_SO101_Finetuning_V7_Full_V2) | Pi0.5 | all 4 tasks | **008000** | **Best overall** β works really well | | |
| | [Pi05 V7 Full](https://huggingface.co/Project-IRA/TPSoSe2026_Pi05_LeRobot_SO101_Finetuning_V7_Full) | Pi0.5 | all 4 tasks | **010000** | Works really well | | |
| | [Pi05 V4 Lego](https://huggingface.co/Project-IRA/TPSoSe2026_Pi05_LeRobot_SO101_Finetuning_V4_Lego) | Pi0.5 | Lego only | **030000** | Works really well (Lego only) | | |
| | [SmolVLA V6 Full](https://huggingface.co/Project-IRA/TPSoSe2026_SmolVLA_LeRobot_SO101_Finetuning_V6_Full) | SmolVLA | all 4 tasks | ~150000 (untested) | OK-ish, across most tasks | | |
| | [SmolVLA V5 Full](https://huggingface.co/Project-IRA/TPSoSe2026_SmolVLA_LeRobot_SO101_Finetuning_V5_Full) | SmolVLA | all 4 tasks | **100000** | Works, but worse than V6 | | |
| | [SmolVLA V2 Lego](https://huggingface.co/Project-IRA/TPSoSe2026_SmolVLA_LeRobot_SO101_Finetuning_V2_Lego) | SmolVLA | Lego only | **030000** | OK-ish (Lego only) | | |
| | [SmolVLA V3 Desk Cleanup](https://huggingface.co/Project-IRA/TPSoSe2026_SmolVLA_LeRobot_SO101_Finetuning_V3_Desk_Cleanup) | SmolVLA | Desk Cleanup only | β | Does not work | | |
| | [SmolVLA V1 Misc](https://huggingface.co/Project-IRA/TPSoSe2026_SmolVLA_LeRobot_SO101_Finetuning_V1_Misc_Dataset) | SmolVLA | misc early data | β | Does not work | | |
| **The headline result:** Pi0.5 substantially outperforms SmolVLA on this setup. The | |
| ~450M SmolVLA appears capacity-limited across four tasks, while Pi0.5 handles the full | |
| multi-task set well β and needs far fewer steps to get there (8kβ10k vs 100kβ200k). | |
| ## Datasets | |
| | Dataset | Episodes | Content | | |
| |---|---|---| | |
| | [Full Merged Final V1](https://huggingface.co/datasets/Project-IRA/TPSoSe2026_Dataset_Full_Merged_Final_LeRobot_SO101_V1) | **930** | The training set. All 4 tasks, 93 prompts, 844,208 frames | | |
| | [Lego](https://huggingface.co/datasets/Project-IRA/TPSoSe2026_Dataset_Lego_LeRobot_SO101) | 460 | Colour sorting | | |
| | [Desk Cleanup](https://huggingface.co/datasets/Project-IRA/TPSoSe2026_Dataset_Desk_Cleanup_LeRobot_SO101) | 350 | Desk clearing (250 of these went into the merge) | | |
| | [Dice Throw](https://huggingface.co/datasets/Project-IRA/TPSoSe2026_Dataset_Dice_Throw_LeRobot_SO101) | 120 | Dice cup | | |
| | [Fetch Ball](https://huggingface.co/datasets/Project-IRA/TPSoSe2026_Dataset_Fetch_Ball_LeRobot_SO101) | 100 | Ball handover | | |
| | [Collection](https://huggingface.co/datasets/Project-IRA/TPSoSe2026_Dataset_Collection_LeRobot_SO101) | β | Early miscellaneous data; superseded | | |
| ## Robot setup | |
| | | | | |
| |---|---| | |
| | Robot | SO-101 follower arm (6-DOF), `robot_type: so_follower` | | |
| | Teleoperation | SO-101 leader arm | | |
| | Control frequency | 30 fps | | |
| | State / action space | 6-dim: `shoulder_pan.pos`, `shoulder_lift.pos`, `elbow_flex.pos`, `wrist_flex.pos`, `wrist_roll.pos`, `gripper.pos` | | |
| | Camera `observation.images.desk_view` | 800x600, h264 (recording) | | |
| | Camera `observation.images.wrist_left` | 640x480, h264 (recording) | | |
| > **Inference note:** both cameras are run at **640x480 during inference**, not at their | |
| > recording resolutions, to reduce the payload sent to the inference server. | |
| ## Prompt design | |
| Language conditioning was varied deliberately: the prompt phrasing was changed roughly | |
| every 10 episodes during recording. The merged dataset therefore contains **93 distinct | |
| prompts across 10 episodes each**, all in English. Full prompt lists are on each dataset card. | |
| ## Licensing | |
| All models and datasets here are **CC BY-SA 4.0** β share-alike, so derivatives must stay | |
| open. Upstream LeRobot, SmolVLA and Pi0.5/openpi components are Apache-2.0; their | |
| copyright notices and licence text are retained as Apache-2.0 Section 4 requires. | |
| ## Citation | |
| ```bibtex | |
| @misc{project_ira_2026, | |
| title = {Project-IRA: Interactive Robotic Arm}, | |
| author = {Baten, Cleo and Keppler, Bela and Sapper, Jonas}, | |
| year = {2026}, | |
| howpublished = {\url{https://huggingface.co/Project-IRA}}, | |
| note = {Code: \url{https://github.com/Project-IRA/interactive-robotic-arm}} | |
| } | |
| ``` |