Instructions to use Cache-SCA/pi05_teleop_fold_towel with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- LeRobot
How to use Cache-SCA/pi05_teleop_fold_towel with LeRobot:
- Notebooks
- Google Colab
- Kaggle
metadata
license: apache-2.0
library_name: lerobot
pipeline_tag: robotics
tags:
- lerobot
- robotics
- pi05
- so101
- dual-arm
- imitation-learning
datasets:
- CoRL2026-CSI/SO101-DualArm-teleop_fold_towel_100epi
base_model: lerobot/pi05_base
Ο0.5 β SO-101 Dual-Arm fold_towel
Fine-tuned lerobot/pi05_base on 100 teleop episodes of the dual-arm SO-101 fold_towel task.
Model
- Architecture: Ο0.5 (PaliGemma-2B VLM + Gemma-300M action expert, flow matching, 10 inference steps)
- Cameras:
base_0_rgb,left_wrist_0_rgb,right_wrist_0_rgb(224Γ224) - State / Action dim: 32 (padded) / 12 (dual-arm SO-101: 6 left + 6 right)
- Action chunk: 50
- dtype: bfloat16
Camera key rename (dataset β policy):
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_rgb
Action features (12 DoF):
left_{shoulder_pan, shoulder_lift, elbow_flex, wrist_flex, wrist_roll, gripper}.pos
right_{shoulder_pan, shoulder_lift, elbow_flex, wrist_flex, wrist_roll, gripper}.pos
Normalization: ACTION/STATE = MEAN_STD, VISUAL = IDENTITY.
Data
CoRL2026-CSI/SO101-DualArm-teleop_fold_towel_100epi β 100 episodes, 65,151 frames, 30 fps, human teleop.
Training
| 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 |
Training script: scripts/train_pi05_fold_towel.sh.
Usage
from lerobot.policies.pi05.modeling_pi05 import PI05Policy
policy = 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=20
Limitations
- Single task, single seed; no quantitative success rate reported here.
- Trained on dual-arm SO-101; not directly transferable to single-arm setups.
- 100 episodes only β sensitive to camera/lighting domain shift.
License
Apache 2.0 (inherits from lerobot/pi05_base).