Instructions to use bklassen3434/smolvla_pick_pen_v2_frozen with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- LeRobot
How to use bklassen3434/smolvla_pick_pen_v2_frozen with LeRobot:
# See https://github.com/huggingface/lerobot?tab=readme-ov-file#installation for more details git clone https://github.com/huggingface/lerobot.git cd lerobot pip install -e .[smolvla]
# Launch finetuning on your dataset python lerobot/scripts/train.py \ --policy.path=bklassen3434/smolvla_pick_pen_v2_frozen \ --dataset.repo_id=lerobot/svla_so101_pickplace \ --batch_size=64 \ --steps=20000 \ --output_dir=outputs/train/my_smolvla \ --job_name=my_smolvla_training \ --policy.device=cuda \ --wandb.enable=true
# Run the policy using the record function python -m lerobot.record \ --robot.type=so101_follower \ --robot.port=/dev/ttyACM0 \ # <- Use your port --robot.id=my_blue_follower_arm \ # <- Use your robot id --robot.cameras="{ front: {type: opencv, index_or_path: 8, width: 640, height: 480, fps: 30}}" \ # <- Use your cameras --dataset.single_task="Grasp a lego block and put it in the bin." \ # <- Use the same task description you used in your dataset recording --dataset.repo_id=HF_USER/dataset_name \ # <- This will be the dataset name on HF Hub --dataset.episode_time_s=50 \ --dataset.num_episodes=10 \ --policy.path=bklassen3434/smolvla_pick_pen_v2_frozen - Notebooks
- Google Colab
- Kaggle
smolvla_pick_pen_v2_frozen
SmolVLA (450M) fine-tuned from lerobot/smolvla_base on an SO-101 teleop dataset for
language-conditioned pen selection: "Pick up the blue pen" / "Pick up the pink pen" /
"Pick up the grey pen" (all three pens present in every episode).
This variant keeps SmolVLA's defaults: only the action expert trains, the VLM and vision
encoder are frozen, so fine-tuning physically cannot overwrite the pretrained language
grounding. Part of a 3-way sweep — see also smolvla_pick_pen_v2_lr1e4 and
smolvla_pick_pen_v2_lr5e5, which both unfreeze the vision encoder.
Training
| Base model | lerobot/smolvla_base |
| Dataset | bklassen3434/pick_pen_v2_20260920_124400 |
| Steps | 10,000 (batch size 64, ~24 epochs) |
| Learning rate | 1e-4 (default), cosine decay over 10,000 steps |
| Trainable | action expert only (freeze_vision_encoder=true, train_expert_only=true) |
| Hardware | 1x A100-80GB (Modal), 1h23m, 15.5 GB peak |
| Final loss | 0.043 |
Cameras are recorded as observation.images.top / observation.images.wrist and remapped
onto SmolVLA's baked-in camera keys at train time:
--rename_map='{"observation.images.top": "observation.images.camera1",
"observation.images.wrist": "observation.images.camera2"}'
The same rename map must be passed at eval time (lerobot-rollout / lerobot-record).
- Downloads last month
- -
Model tree for bklassen3434/smolvla_pick_pen_v2_frozen
Base model
lerobot/smolvla_base