π0 & π0.5
MetaFine supports both π0 and its successor π0.5 — flow-matching action experts on top of PaliGemma vision-language backbones. Both consume the LeRobot export.
What they are
π0 and π0.5 — flow-matching VLA policies. Vendored under core/policies/pi0 and core/policies/pi05. π0.5 closed-loop inference in the MetaFine simulator is verified.
Data
Both consume a LeRobot dataset. Run record → merge → replay → convert_to_lerobot (see Quickstart).
Install
$ pip install -e core/policies/pi05
Evaluate (π0.5, verified)
The real evaluate.py is a standalone argparse script — no --task-graph adapter. There are two modes (general-task vs specific object/part); the full flag reference is core/policies/pi05/README.md:
$ python core/policies/pi05/evaluate.py \ --policy-path /path/to/pretrained_model \ --env-id grasp_part \ --object-name 100221 \ --part-name cap \ --obs-mode rgb \ --control-mode pd_joint_delta_pos \ --n-episodes 50 \ --device cuda \ --task "Grasp the cap of the bottle." \ --record-dir eval_out --save-video
For the staged diagnostic (semantic-intervention / object-swap — the Understanding protocol):
$ bash core/policies/pi05/run_eval_three_stage.sh --policy-path ... --env-id ... --task "..."
π0 follows the same shape; see core/policies/pi0/README.md. Canonical source: python core/policies/pi05/evaluate.py --help.