π0
Physical Intelligence's flow-matching vision-language-action model: a PaliGemma VLM plus a 300M-parameter action expert that predicts 50-step action chunks. Open weights via openpi; LeRobot ships a PyTorch port.
3.3B paramsopen weightsRTCPEFT / LoRAverified 2026-10-24paper →
Architecture
- Family
- vla
- Parameters
- 3,300,000,000 (Authors state 3.3 billion (PaliGemma 3B + 300M action expert). The LeRobot paper's Table 2 lists π0 as 3.5B.)src
- Backbone
- PaliGemma (SigLIP + Gemma 2B), with a Gemma-300M action expertsrc
- Action head
- flow-matchingsrc
- Action chunking
- yes
- Real-Time Chunking
- supportedsrc
- PEFT / LoRA
- supported
- Code license
- Apache-2.0
- Weights license
- Gemma (Hub license tag `gemma` on lerobot/pi0_base)
- Language input
- optional
Compute requirements
| Memory | Precision | Conditions | |
|---|---|---|---|
| train | ≥24 GB · ≤40 GBsrc | — | Peak training VRAM at batch size 8 with AdamW (LeRobot default), "Large VLA" group (pi0, pi0_fast, pi05, xvla, wall_x) in the LeRobot compute hardware guide; suggested A100 40 GB+, "24 GB tight at BS 1". The guide calls its figures indicative, order-of-magnitude numbers, not exact predictions. Precision not stated. · batch 8 · ~4–8 h for 5 epochs on a ~45k-frame dataset at batch 4 on a single A100 40 GB (indicative, ±50%). |
| inference | 13.32 GB measuredsrc | fp32 | Peak memory at inference measured by the LeRobot paper (Table 2): 13.32 GB on both RTX 4090 and A100, all models in full fp32 precision, 10 flow-matching denoising steps. (Same table: 4.13GB CPU-only, 97MB on Apple MPS, where unified memory and swap make figures unreliable per the paper.) |
Training requirements: see also the LeRobot compute hardware guide, the authoritative source for LeRobot training envelopes.
Measured inference 0 runs · inference cost only, not task success
No measured runs yet. Submit one with its runtime, precision and camera count.
Robots running π0 16 of 24 with evidence
| Robot | State | Tier | Verified | Detail |
|---|---|---|---|---|
| AgileX PiPER | partial | T3 · community reported | 2026-10-24 1d ago | Training evidenced by public checkpoint(s); on-robot inference not documented by a primary source. |
| ALOHA (stationary) | works | T1 · upstream documented | 2026-10-24 1d ago | openpi's ALOHA checkpoints were fine-tuned on Physical Intelligence's ALOHA data; upstream warns zero-shot use is experimental and recommends fine-tuning π0 on data from the target robot. |
| ARX5 | works with caveats | T3 · community reported | 2026-10-24 1d ago | Community-reported only (RoboChallenge benchmark by Dexmal/Hugging Face); not documented by Physical Intelligence or maintainer-tested. |
| Bimanual SO-100/SO-101 | partial | T3 · community reported | 2026-10-24 1d ago | Training evidenced by public checkpoint(s); on-robot inference not documented by a primary source. |
| Franka Emika Panda | works with caveats | T1 · upstream documented | 2026-10-24 1d ago | openpi lists pi0_droid as a fine-tuning starting point and says it may not follow language commands as well as π0-FAST-DROID. On real DROID tasks PI reports a lower score for π0 (0.49) than for its knowledge-insulated model (0.55). |
| Koch v1.1 | partial | T3 · community reported | 2026-10-24 1d ago | Training evidenced by public checkpoint(s); on-robot inference not documented by a primary source. |
| Mobile ALOHA | partial | T1 · upstream documented | 2026-10-25 today | Only a misconfigured zero-shot pi0_base run is documented: it executed on Mobile ALOHA hardware but produced no task behavior. No fine-tuned or correctly configured Mobile ALOHA run is publicly documented. |
| ROBOTIS OMX | partial | T3 · community reported | 2026-10-24 1d ago | Training evidenced by public checkpoint(s); on-robot inference not documented by a primary source. |
| OpenArm | works | T1 · upstream documented | 2026-10-24 1d ago | |
| Reachy 2 | partial | T3 · community reported | 2026-10-25 today | Community-reported only (TAVIS benchmark, anonymous submission under double-blind review); no Reachy 2 success rates are published yet. |
| reBot Arm B601-DM | partial | T1 · upstream documented | 2026-10-25 today | Training on reBot B601-DM data is documented by the vendor (Seeed wiki 'B601-DM with LeRobot'). The wiki's on-robot evaluation command (lerobot-record with --policy.path and no teleoperator) is rejected by the Seeed LeRobot fork the wiki installs, which directs policy deployment to lerobot-rollout, so on-robot inference is not validly documented. |
| SO-100 | works | T1 · upstream documented | 2026-10-24 1d ago | |
| SO-101 | partial | T3 · community reported | 2026-10-24 1d ago | Training evidenced by public checkpoint(s); on-robot inference not documented by a primary source. |
| Trossen WidowX AI | works with caveats | T1 · upstream documented | 2026-10-24 1d ago | Trossen labels its openpi tutorial experimental, with minimal testing on the Trossen AI setup. |
| Unitree G1 | works with caveats | T1 · upstream documented | 2026-10-24 1d ago | Documented by Unitree in its unitree_IL_lerobot repository, which pins LeRobot as a git submodule (commit a5b29d4, November 2025) and deploys with its own eval_robot/eval_g1.py script, not through LeRobot's native unitree_g1 robot or lerobot-rollout. |
| Universal Robots UR5e | works with caveats | T1 · upstream documented | 2026-10-24 1d ago | The upstream evidence is Physical Intelligence's own UR5e evaluation; openpi ships no UR5e fine-tuned checkpoint, and its examples/ur5 is an outline for writing UR5 input/output transforms rather than a tested recipe. |
No verified evidence, but both are available in LeRobot (ecosystem context): EarthRover Mini Plus, HopeJR, I2RT YAM, LeKiwi, UFACTORY xArm, XLeRobot.
Framework support
| Framework | Support | Since | Type string | Docs |
|---|---|---|---|---|
| LeRobot | nativesrc | 0.3.2 | pi0 | docs |
| openpi | upstream-reposrc | — | — | docs |
| LeRobot: `pi0` is registered at v0.3.2, the first tagged LeRobot release (the only earlier PyPI release, 0.1.0 of 2024-03, predates π0). The v0.4.0 release notes list "Add OpenPi, Pi0 and Pi0.5" (PR #1910); the docs describe the current implementation as adapted from openpi. RTC per rtc.mdx; PEFT per peft_training.mdx. | ||||
| openpi: Official Physical Intelligence release (JAX, plus PyTorch since Sept 2025); base checkpoint gs://openpi-assets/checkpoints/pi0_base. | ||||
Checkpoints
- lerobot/pi0_base · LeRobot-format base model; Hub license tag gemma.
- lerobot/pi0_libero_base · LIBERO-trained variant. The v0.6.1 pi0 docs link lerobot/pi0_libero, which the Hub redirects here.
Related terms
Action chunking · Action horizon · Action tokenization · Asynchronous inference · Behavioral cloning · Control rate · Flow matching · Imitation learning · Inference latency · LeRobotDataset · Parameter-efficient fine-tuning (PEFT) and LoRA · Proprioception · Quantization and numeric precision · Real-time chunking · Vision-language-action model
Sources
- T1 · upstream documentedpapersource 2024-10-31verified 2026-10-24 (1d ago)
π0 paper states total parameter count (PaliGemma 3B + 300M action expert).
“We add 300M parameters for the action expert (which is initialized from scratch) for a total of 3.3 billion parameters.”
https://arxiv.org/abs/2410.24164 - T1 · upstream documentedpapersource 2024-10-31verified 2026-10-24 (1d ago)
π0 builds on PaliGemma and supervises action-chunk tokens with conditional flow matching (H = 50).
“During training, we supervise these action tokens using a conditional flow matching loss”
https://arxiv.org/abs/2410.24164 - T1 · upstream documentedsource-codesource 2025-08-01verified 2026-10-24 (1d ago)lerobot 0.3.2
`pi0` policy type is registered at v0.3.2 (and unchanged at v0.6.1).
“@PreTrainedConfig.register_subclass("pi0")”
https://github.com/huggingface/lerobot/blob/v0.3.2/src/lerobot/policies/pi0/configuration_pi0.py - T1 · upstream documentedrelease-notessource 2025-10-23verified 2026-10-24 (1d ago)lerobot 0.4.0
v0.4.0 added the openpi-based Pi0 and Pi0.5 implementations.
“* Add OpenPi, Pi0 and Pi0.5 by @pkooij in https://github.com/huggingface/lerobot/pull/1910”
https://github.com/huggingface/lerobot/releases/tag/v0.4.0 - T1 · upstream documentedofficial-docssource 2026-08-03verified 2026-10-24 (1d ago)lerobot 0.6.1
LeRobot π0 docs; implementation adapted from openpi, Apache 2.0.
“The LeRobot implementation is adapted from their open source [OpenPI](https://github.com/Physical-Intelligence/openpi) repository.”
https://github.com/huggingface/lerobot/blob/v0.6.1/docs/source/pi0.mdx - T1 · upstream documentedofficial-docsverified 2026-10-24 (1d ago)openpi 215abfb
openpi is Physical Intelligence's official repo containing π0 with base checkpoints.
“- the [π₀ model](https://www.physicalintelligence.company/blog/pi0), a flow-based vision-language-action model (VLA).”
https://github.com/Physical-Intelligence/openpi/blob/215abfb217dbac7d5f1273282331b9b1866c0479/README.md - T1 · upstream documentedofficial-docsverified 2026-10-24 (1d ago)openpi 215abfb
openpi single-GPU memory requirements: inference >8 GB, LoRA fine-tuning >22.5 GB, full fine-tuning >70 GB.
“| Fine-Tuning (Full) | > 70 GB | A100 (80GB) / H100 |”
https://github.com/Physical-Intelligence/openpi/blob/215abfb217dbac7d5f1273282331b9b1866c0479/README.md - T1 · upstream documentedofficial-docssource 2026-08-03verified 2026-10-24 (1d ago)lerobot 0.6.1
LeRobot RTC docs name Pi0 as a supported flow-matching policy.
“allows large, flow-matching based robotic policies, such as [Pi0](./pi0), [Pi0.5](./pi05), and [SmolVLA](./smolvla), to produce smooth, continuous, and reactive motion”
https://github.com/huggingface/lerobot/blob/v0.6.1/docs/source/rtc.mdx - T1 · upstream documentedofficial-docssource 2026-08-03verified 2026-10-24 (1d ago)lerobot 0.6.1
LeRobot PEFT guide names π₀ among the pretrained policies it adapts (PI0Policy also defines default LoRA targets).
“large pretrained models such as pre-trained policies (e.g., SmolVLA, π₀, ...) to new tasks without training all”
https://github.com/huggingface/lerobot/blob/v0.6.1/docs/source/peft_training.mdx - T1 · upstream documentedofficial-docssource 2026-08-03verified 2026-10-24 (1d ago)lerobot 0.6.1
Compute hardware guide: Large VLA group (incl. `pi0`) peak VRAM ~24–40GB at BS 8 with AdamW; indicative figures.
“| Large VLA | `pi0`, `pi0_fast`, `pi05`, `xvla`, `wall_x` | ~24–40GB | A100 40 GB+ (24 GB tight at BS 1) |”
https://github.com/huggingface/lerobot/blob/v0.6.1/docs/source/hardware_guide.mdx - T1 · upstream documentedpapersource 2026-02-26verified 2026-10-24 (1d ago)
LeRobot paper Table 2: π0 (3.5B) peak memory 4.13GB CPU, 97MB MPS, 13.32 GB RTX 4090, 13.32 GB A100, fp32.
“Table 2: Peak memory consumption of policy models currently supported by lerobot . All models are run in full precision (fp32). Diffusion and Flow Models are run with 10 denoising steps at inference.”
https://arxiv.org/abs/2602.22818 - T1 · upstream documentedmodel-cardsource 2025-09-09verified 2026-10-24 (1d ago)
lerobot/pi0_base card lists inputs (multi-view images, state, optional language), flow-matching objective, license gemma.
“- **Inputs:** images (multi-view), proprio/state, optional language instruction”
https://huggingface.co/lerobot/pi0_base