Kaminoikari's picture
Upload README.md with huggingface_hub
3ac08be verified
|
Raw
History Blame
2.04 kB
---
license: apache-2.0
library_name: lerobot
base_model: lerobot/smolvla_base
datasets:
- lerobot/svla_so101_pickplace
tags:
- robotics
- lerobot
- smolvla
- vision-language-action
- so-101
- imitation-learning
pipeline_tag: robotics
---
# SmolVLA · SO-101 Pick-and-Place (fine-tuned)
Fine-tune of [`lerobot/smolvla_base`](https://huggingface.co/lerobot/smolvla_base) (450M VLA)
on the real-robot SO-101 dataset
[`lerobot/svla_so101_pickplace`](https://huggingface.co/datasets/lerobot/svla_so101_pickplace)
(50 teleoperated episodes, 2 cameras `up`/`side`, 6-DoF state).
[`lerobot/svla_so101_pickplace`](https://huggingface.co/datasets/lerobot/svla_so101_pickplace)
[`lerobot/svla_so101_pickplace`](https://huggingface.co/datasets/lerobot/svla_so101_pickplace)
[`lerobot/svla_so101_pickplace`](https://huggingface.co/datasets/lerobot/svla_so101_pickplace)
(50 teleoperated episodes, 2 cameras `up`/`side`, 6-DoF state).
## Training
| | |
|---|---|
| Base | `lerobot/smolvla_base` |
| Dataset | `lerobot/svla_so101_pickplace` (50 ep / 11,939 frames) |
| Steps | 2,000 (batch size 8) |
| GPU | single T4 (~78 min) |
| Camera mapping | `up to camera1`, `side to camera2` via `--rename_map` |
| Loss | 0.410 to 0.141 (monotonic) |
## Intended use & honest limitations
This is a **pipeline-validation / learning run**, not a production policy.
- Demonstrates the full real-robot imitation-learning loop: load a real teleoperation dataset, fine-tune a pretrained VLA, converge, ship a checkpoint.
- Only 2,000 steps (~1.3 epochs). The SmolVLA paper uses ~20k steps; expect this checkpoint to under-perform a fully trained one.
- No closed-loop success rate. Evaluation on the physical SO-101 arm (`lerobot-record`) was not run (no hardware). Reported signal is training-loss
convergence only, which proves the model is learning, not real-world task success.
## Load
```python
from lerobot.policies.smolvla.modeling_smolvla import SmolVLAPolicy
policy = SmolVLAPolicy.from_pretrained("Kaminoikari/smolvla-so101-pickplace-ft")