Views
No views yet
fold_towellerobot/pi05_base on 100 teleop episodes of the dual-arm SO-101 fold_towel task.base_0_rgb, left_wrist_0_rgb, right_wrist_0_rgb (224×224)observation.images.left_top → observation.images.base_0_rgb
observation.images.left_wrist → observation.images.left_wrist_0_rgb
observation.images.right_wrist → observation.images.right_wrist_0_rgbleft_{shoulder_pan, shoulder_lift, elbow_flex, wrist_flex, wrist_roll, gripper}.pos
right_{shoulder_pan, shoulder_lift, elbow_flex, wrist_flex, wrist_roll, gripper}.posACTION/STATE = MEAN_STD, VISUAL = IDENTITY.CoRL2026-CSI/SO101-DualArm-teleop_fold_towel_100epi — 100 episodes, 65,151 frames, 30 fps, human teleop.| Hardware | 4 × GPU (DDP, 🤗 Accelerate) |
| Per-device batch | 32 |
| Gradient accumulation | 2 |
| Effective global batch | 256 |
| Steps | 12,800 (~50 epochs) |
| Optimizer | AdamW, β=(0.9, 0.95), wd=0.01, grad clip 1.0 |
| LR | cosine decay, peak 2.5e-5 → 2.5e-6, warmup 1000, decay 30000 |
| Gradient checkpointing | on |
| Image aug | ColorJitter (brightness/contrast/saturation/hue), SharpnessJitter, RandomAffine — max_num=3, random order |
| Seed | 1000 |
scripts/train_pi05_fold_towel.sh.1from lerobot.policies.pi05.modeling_pi05 import PI05Policy
2
3policy = PI05Policy.from_pretrained("CoRL2026-CSI/pi05_teleop_fold_towel").to("cuda").eval()lerobot-eval --policy.path=CoRL2026-CSI/pi05_teleop_fold_towel --env.type=<env> --eval.n_episodes=20lerobot/pi05_base).