Instructions to use alexsuw/smolvla-libero-fewshot-stability-n1 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- LeRobot
How to use alexsuw/smolvla-libero-fewshot-stability-n1 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=alexsuw/smolvla-libero-fewshot-stability-n1 \ --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=alexsuw/smolvla-libero-fewshot-stability-n1 - Notebooks
- Google Colab
- Kaggle
SmolVLA N=1 Frozen-Stats FT and Anchored FT (L2-SP)
Twelve independently trained checkpoints from a matched stability experiment:
two methods, three held-out LIBERO-Goal tasks, and train seeds 42/123. All
cells start from the same frozen
seen-expert-100k
checkpoint and use the first registered target demonstration.
Code: github.com/alexsuw/smolvla-libero-fewshot
Collection: SmolVLA LIBERO Few-shot
Frozen protocol and results
Both methods use the original libero_90 normalization during target training
and deployment. No target-overlay statistics are fitted. Anchored FT adds an
FP32 raw-sum L2-SP penalty with preregistered lambda=0.01 on the trainable
Action Expert/projection parameters relative to their frozen initialization.
| Method | Target success | Corrected seen retention | Trainable parameters | Peak VRAM |
|---|---|---|---|---|
| Naive N=1 reference | 109/120 (90.8%) | 37/180 (20.6%) | 99,880,992 | 7,540 MiB |
| Frozen-Stats FT N=1 | 109/120 (90.8%) | 39/180 (21.7%) | 99,880,992 | 7,540 MiB |
| Anchored FT N=1 | 105/120 (87.5%) | 57/180 (31.7%) | 99,880,992 | 8,036 MiB |
No method or anchoring strength was selected, tuned, or rerun using target or retention success.
Layout and loading
<frozen_stats|anchored_l2sp>/<task>_n01_s<seed>/
weights.pt
normalization_stats.json # canonical frozen libero_90 statistics
config.resolved.yaml
COMPLETED.json
checksums.json
trainable_parameters.txt
run/ # provenance and training metrics, no optimizer
from huggingface_hub import hf_hub_download
weights = hf_hub_download(
"alexsuw/smolvla-libero-fewshot-stability-n1",
"anchored_l2sp/drawer_middle_n01_s42/weights.pt",
)
stats = hf_hub_download(
"alexsuw/smolvla-libero-fewshot-stability-n1",
"anchored_l2sp/drawer_middle_n01_s42/normalization_stats.json",
)
Every published normalization file has SHA-256
b159b6fed3e52edf25bd39b377dd64940221b7a030362daf7f726b1c2ecb30cf.
index.json records exact checkpoint hashes and per-cell evaluation results.
Full tables and limitations are in results/results.md.
Optimizer/RNG state, raw rollouts, datasets, traces, videos, and credentials are intentionally excluded.
License
Derivatives of lerobot/smolvla_base trained on nvidia/LIBERO_LeRobot_v3.
Project code is Apache-2.0; follow upstream model and dataset terms for weights.
Model tree for alexsuw/smolvla-libero-fewshot-stability-n1
Base model
HuggingFaceTB/SmolLM2-360M