RyanL22/pi05-rby1-wujihand2-synth-boxfull-30k
pi0.5 — RB-Y1 + Wujihand2, synthetic only (human-video, box_full idm-pass), step 30k (final)
LeRobot-native pi05 (v0.6.1) fine-tuned on only synthetic RB-Y1 videos generated from human demonstrations (RoboTryOn-human-2, `lerobot_box_full_idm_pass`, 384 ep, 20 fps), no real teleop data: 11 cells, shares ∝ sqrt(frames).
Checkpoint: step 30,000 (final) of a 30,000-step run (NAVER MLXP, 2x H200, batch 32 x 2 = 64).
54-dim state / action
Same layout as RyanL22/pi05-rby1-wujihand2-teleopv1-baseline-20k: joint_position[10:64] = rightarm0..6 (7) | right hand 20 | leftarm0..6 (7) | left hand 20. Wheels / torso / head dropped (constant); hold them at the recording pose at rollout. max_state_dim = max_action_dim = 54, tokenizer max_length = 320 (already in this repo's config).
Training settings
Inputs
observation.images.base_0_rgb<- left ZED view, 512x288;observation.images.left_wrist_0_rgb<- right ZED view, 512x288observation.state— 54 dims;action— 54 dims, absolute joint targets
Tasks (11): move the box to the right, starting with the left hand and finishing with the right hand / move the cup aside, then pick up the ball from table and put it in the white box / open the air fryer with the left hand, pick up the apple from the table with the right hand and put it in the air fryer, then close the air fryer with the left hand / pick up the ball from table and put it in the white box / pick up the bottle from table and put it in the white box / pick up the bottle from table and put it on the shelf at front / pick up the brush with the right hand and wipe away the black dot / pick up the coffee pot from table and put it in the white box / pick up the doll from table and put it in the white box / pick up the small box from table and put it in the white box / pour the coffee from the bottle into the red cup
Initial state (frame 0) — set the robot here before a rollout
All synthetic episodes start from one pose (per-task arm means within 0.26 rad of the common mean, std ≤ 0.19 rad), so use this synthetic common start for every task. Values are rad in the 66-dim robot order; the 54 policy dims are joint_position[10:64]. Wheels/torso/head are the recording constants and are not fed to the policy.
Real teleop episodes start from a more extended pose: rightarm `+0.522 -0.020 +0.267 -2.078 -0.005 +0.006 -1.592`, leftarm +0.528 +0.015 -0.268 -2.067 +0.008 +0.001 +1.591, hands ≈ open. Both starts are in-distribution for the 4 real tasks; for the synthetic-only tasks use the synthetic start.
Load
from lerobot.policies.pi05.modeling_pi05 import PI05Policy
policy = PI05Policy.from_pretrained("RyanL22/pi05-rby1-wujihand2-synth-boxfull-30k")