Robotics
LeRobot
Safetensors
pi05
vla
yam

pi05_pick_block_red_yam

Full-parameter fine-tune of π0.5 on YzyLmc/pick_block_red, a single-task YAM-arm dataset for the instruction "Pick up the red block".

Intermediate checkpoint — step 18,000 of a 20,000-step run. Task success has not been evaluated on a robot or in simulation. Loss curves and held-out scoring are not yet available. Treat this as a work-in-progress artifact, not a validated policy.

Model details

Base checkpoint lerobot/pi05_base @ a538eb273274eb30f126a118f39dbc0ee212c883
Architecture PaliGemma gemma_2b backbone + gemma_300m action expert
Trained parameters All (no LoRA, no frozen backbone, no expert-only training)
Action space 7-D joint control, chunk size 50 @ 30 fps (~1.67 s horizon)
State 7-D joint position
Weights bfloat16, 812 tensors
model.safetensors SHA-256 bdeb1c2177c908061f1b376a9cd945c031dac9ba63b68d346b3fb4936554072f

Data

30 episodes / 12,833 frames @ 30 fps, robot_type: yam, LeRobot dataset format v3.0.

  • Train: episodes 0–26 (27 episodes)
  • Held out: episodes 27, 28, 29 — not seen during training
  • Cameras used: scene_camera, left_wrist_camera (RGB 480×640, AV1)
  • Excluded: depth_scene_camera — Ï€0.5's SigLIP tower is 3-channel and cannot consume the 1-channel depth track

Camera keys are remapped to the OpenPI canonical names the base checkpoint expects:

observation.images.scene_camera      -> observation.images.base_0_rgb
observation.images.left_wrist_camera -> observation.images.left_wrist_0_rgb

right_wrist_0_rgb is absent from this dataset and is handled as a masked placeholder.

Training configuration

Batch size 32
Optimizer AdamW, lr 2.5e-5, betas (0.9, 0.95), weight decay 0.01, grad clip 1.0
Schedule cosine, 1,000 warmup steps, 20,000 decay steps, min lr 2.5e-6
Precision bfloat16
Gradient checkpointing enabled (memory only — mathematically exact, no effect on results)
Seed 1000

Environment

Reproduced with LeRobot v0.4.1, which pins the dataset format (CODEBASE_VERSION = "v3.0") matching this dataset.

  • lerobot==0.4.1, Python 3.11
  • torch==2.7.1+cu128, torchvision==0.22.1 (CUDA 12.8 for Blackwell sm_120)
  • transformers==4.53.3 from LeRobot's patched branch git+https://github.com/huggingface/transformers.git@fix/lerobot_openpi — required; stock PyPI transformers fails Ï€0.5's transformers.models.siglip.check guard
  • Video decoding via PyAV (--dataset.video_backend=pyav)
  • Hardware: 1× NVIDIA RTX PRO 6000 Blackwell (96 GB), ~3.47 s/step

The base checkpoint is pinned to revision a538eb27 deliberately: later revisions add a relative_actions_processor preprocessing step that LeRobot 0.4.1 cannot resolve.

Usage

from lerobot.policies.pi05.modeling_pi05 import PI05Policy

policy = PI05Policy.from_pretrained("YzyLmc/pi05_pick_block_red_yam")

Supply observations under the OpenPI camera keys above, a 7-D observation.state, and the task string "Pick up the red block".

Limitations

  • Single task, single scene, 30 demonstrations — no generalization claims.
  • Intermediate checkpoint; the final step-20,000 weights may differ substantially.
  • No task-success evaluation has been performed.

License

Apache-2.0, inherited from lerobot/pi05_base and LeRobot.

Downloads last month
-
Safetensors
Model size
4B params
Tensor type
F32
·
BF16
·
Video Preview
loading

Model tree for YzyLmc/pi05_pick_block_red_yam

Finetuned
(384)
this model

Dataset used to train YzyLmc/pi05_pick_block_red_yam