Instructions to use justintiensmith/pi05_Reasoning_Step_076200 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- LeRobot
How to use justintiensmith/pi05_Reasoning_Step_076200 with LeRobot:
- Notebooks
- Google Colab
- Kaggle
| library_name: lerobot | |
| base_model: lerobot/pi05_base | |
| datasets: | |
| - justintiensmith/VLA_Benchmark_Prompted_1200 | |
| language: | |
| - en | |
| tags: | |
| - robotics | |
| - vision-language-action | |
| - pi05 | |
| - lerobot | |
| - so101 | |
| - imitation-learning | |
| # PI0.5 Reasoning — Step 76,200 | |
| This repository contains a LeRobot PI0.5 policy fine-tuned for language-conditioned manipulation and reasoning experiments with an SO-101 robot. It is the checkpoint saved at **training step 76,200**, corresponding to **12 data-equivalent epochs** of the 1,200-episode training dataset. | |
| The checkpoint is released as an artifact accompanying an ICRA paper submission. Quantitative paper results and citation information will be added when available. | |
| ## Model summary | |
| | Item | Value | | |
| |---|---| | |
| | Base checkpoint | [`lerobot/pi05_base`](https://huggingface.co/lerobot/pi05_base) | | |
| | Framework | LeRobot 0.6.0 (`30da8e687a6dfc617fcd94afc367ac7071c376ce`) | | |
| | Checkpoint | Step 76,200 / epoch 12 | | |
| | Robot | SO-101, single-arm manipulation | | |
| | Training objective | Supervised imitation learning with PI0.5 action flow matching | | |
| | Cameras used | `observation.images.middle`, `observation.images.wrist` | | |
| | Robot state | Six absolute joint positions | | |
| | Actions | Six absolute joint-position commands | | |
| | Action chunk | 50 steps | | |
| | Action steps returned | 50 | | |
| | Precision | bfloat16 | | |
| Only the middle and wrist camera streams were provided to the policy. Other camera streams present in the dataset were not included in the model input features. | |
| ## Training data | |
| The model was trained on [`justintiensmith/VLA_Benchmark_Prompted_1200`](https://huggingface.co/datasets/justintiensmith/VLA_Benchmark_Prompted_1200), containing 1,200 demonstrations across six manipulation/reasoning task families. | |
| ### Dataset revision disclosure | |
| This run was launched without an explicit dataset revision in its saved training configuration (`dataset.revision: null`) and therefore used the Hub `main` snapshot available at training time. The experiment records associate the run with the pre-trim snapshot [`96a71744568016d553f2304c94ae393b1b28a148`](https://huggingface.co/datasets/justintiensmith/VLA_Benchmark_Prompted_1200/tree/96a71744568016d553f2304c94ae393b1b28a148), containing **609,565 frames**. | |
| That snapshot predates a later correction which removed the first 0.4 seconds (12 frames at 30 FPS) of episode 819 because of an incorrect sensor reading. The corrected dataset revision is [`f1196a7fa8609a8aa44ed264b045017f55ab0a51`](https://huggingface.co/datasets/justintiensmith/VLA_Benchmark_Prompted_1200/tree/f1196a7fa8609a8aa44ed264b045017f55ab0a51), containing 609,553 frames. This PI0.5 checkpoint was **not** retrained after that correction. The VLA0 and MolmoACT2 comparison runs use the corrected dataset revision. | |
| This difference is disclosed for reproducibility and should be considered when making controlled comparisons among the models. | |
| ## Training configuration | |
| | Parameter | Value | | |
| |---|---:| | |
| | Training steps completed | 76,200 | | |
| | Steps per epoch | 6,350 | | |
| | Per-GPU batch size | 24 | | |
| | Number of training processes / GPUs | 4 | | |
| | Global batch size | 96 | | |
| | Samples processed | 7,315,200 | | |
| | Hardware | 4 × NVIDIA GH200 120 GB | | |
| | DataLoader workers | 8 per process | | |
| | Seed | 1000 | | |
| | Image augmentation | Disabled | | |
| | Video backend | PyAV | | |
| | Held-out training evaluation split | None (`eval_split=0.0`) | | |
| | Gradient checkpointing | Enabled | | |
| | Vision encoder frozen | No | | |
| | Expert-only training | No; the full trainable policy was fine-tuned | | |
| | Model compilation | Disabled | | |
| ### Normalization | |
| ```json | |
| { | |
| "ACTION": "QUANTILES", | |
| "STATE": "QUANTILES", | |
| "VISUAL": "IDENTITY" | |
| } | |
| ``` | |
| ### Optimizer and learning-rate schedule | |
| | Parameter | Value | | |
| |---|---:| | |
| | Optimizer | AdamW | | |
| | Peak learning rate | 2.5e-5 | | |
| | Betas | (0.9, 0.95) | | |
| | Epsilon | 1e-8 | | |
| | Weight decay | 0.01 | | |
| | Gradient clipping norm | 1.0 | | |
| | Warm-up steps | 1,000 | | |
| | Cosine-decay steps | 30,000 | | |
| | Final learning rate | 2.5e-6 | | |
| The original training target was 101,600 steps (16 epochs). This repository intentionally preserves the step-76,200 checkpoint used for the reported epoch-12 evaluation. | |
| ## Loading the policy | |
| Install LeRobot 0.6.0 and load the model with: | |
| ```python | |
| from lerobot.policies.pi05.modeling_pi05 import PI05Policy | |
| policy = PI05Policy.from_pretrained( | |
| "justintiensmith/pi05_Reasoning_Step_076200" | |
| ) | |
| ``` | |
| For evaluation or robot deployment, use the preprocessor and postprocessor files shipped in this repository together with the model checkpoint. They contain the normalization statistics and transformations used during training. | |
| ## Evaluation status | |
| Preliminary real-robot rollouts indicated useful task behavior at the epoch-10 and epoch-12 checkpoints. This statement is qualitative: no quantitative success rate is claimed in this model card yet. Controlled per-task results, evaluation protocol, and uncertainty estimates will be reported with the associated paper. | |
| ## Intended use | |
| This checkpoint is intended for: | |
| - reproducible robotics research; | |
| - comparison of vision-language-action policies on the associated benchmark; | |
| - real-robot evaluation with a compatible SO-101 observation/action interface; | |
| - analysis of language-conditioned manipulation and reasoning behavior. | |
| ## Limitations and safety | |
| - The policy was trained on a limited set of robot demonstrations and may not generalize beyond the recorded camera views, workspace, objects, prompts, or robot calibration. | |
| - The training data contain correlated frames from demonstrations; the number of frames is not the number of independent examples. | |
| - No held-out loss split was used during training. Real-robot task success, rather than training loss, should be used for model selection. | |
| - This checkpoint used the pre-trim dataset snapshot described above. | |
| - Outputs can be unsafe or unpredictable under distribution shift. Use physical safeguards, conservative motion limits, emergency-stop procedures, and human supervision when operating real hardware. | |
| ## Citation | |
| Citation details will be added when the associated ICRA submission is publicly available. Until then, please cite this model repository and the accompanying dataset with their pinned revisions. | |