Views
No views yet
lerobot/pi05_base on
johannesmichalke/sharpen-pencil
— a YAM single-arm 7-DOF dataset of "move a pencil from the box into the sharpener."030000/ for best fit.lerobot[pi,dataset] (≥ 0.5.1), and peft (≥ 0.18). No HF auth needed — public repo.1from huggingface_hub import snapshot_download
2from lerobot.policies import make_policy
3
4ckpt = snapshot_download(
5 "EmptyDrum/sharpen-pencil-pi05-v2",
6 allow_patterns="030000/*",
7)
8policy = make_policy(pretrained_policy_name_or_path=f"{ckpt}/030000")
9policy.eval()
10# policy.predict_action(observation) -> (10, 7) action chunklerobot/pi05_base (~6 GB) is fetched lazily on first construction.observation.images.base_0_rgb — top-down view (trained on Logitech, cam_high in dataset)observation.images.left_wrist_0_rgb — wrist view (trained on RealSense D405, cam_wrist in dataset)observation.images.right_wrist_0_rgb — always masked during training. Pass a zero image with image_mask=False, or set policy.config.empty_cameras=1.observation.state = float32[7] = [joint0…joint5, gripper]. Joints in radians, gripper ∈ [0, 1]. State is padded to 32 dims internally by the policy — feed 7 raw values."move a pencil from the box into the sharpener". It comes from the dataset's meta/tasks.parquet automatically when using the lerobot data loader, but for live inference pass it explicitly in the observation dict.| Base model | lerobot/pi05_base |
| Dataset | johannesmichalke/sharpen-pencil (LeRobot v3.0, 77 episodes, 64 107 frames, 30 fps) |
| Method | LoRA via PEFT, target_modules=all-linear, r=32, lora_alpha=32 |
| Trainable / total params | 92 M / 4.2 B |
| Batch size | 8 |
| Steps | 30 000 (≈ 3.74 epochs) |
| LR schedule | Cosine decay with 1 k warmup, peak 2.5e-5, decay to 2.5e-6 |
| Optimizer | AdamW, grad-clip 1.0 |
| Precision | bf16 with torch.compile=max-autotune + gradient checkpointing |
| Action chunk | 10 |
max_token_len | 200 (pi05 default) |
| Hardware | 1× H100 80 GB |
| Wall-clock | 10 h 34 min |
pi05_base API; it carries no information from this dataset.HalfEmptyDrum/Server-YAM:runs/sharpen_pencil_v2.env — every hyperparameter for this runscripts/train.sh — generic lerobot-train launcheruv + lerobot install, then ./scripts/train.sh sharpen_pencil_v2).lerobot/pi05_base checkpoint.