
TinyVLA ve SmolVLA, 1 milyar parametrenin altında çalışan bir VLA sunar. Her iki makaleden gerçek sayılar, LeRobot varsayılanları, ölçülen gecikme ve 24 GB'lık bir kartta bir çalıştırmanın maliyeti.
Hakkında yazılan neredeyse her görsel-dil-eylem modeli bir veri merkezi kartı varsayar. OpenVLA 7 milyar parametredir. GR00T N1.7 ve Pi0.5 yaklaşık 3 milyar parametredir ve ince ayar için bir A100 80 GB ister. Eğer masanızdaki kart bir 4090 ise, o model sınıfı ulaşılamazdır.
İki makale buna ihtiyacınız olmadığını savunuyor. TinyVLA (arXiv 2409.12514, Şubat 2025'te IEEE Robotics and Automation Letters tarafından kabul edildi) 400 milyon ila 1.3 milyar parametreli bir omurgadan ve bir difüzyon eylem başlığından bir VLA oluşturur. SmolVLA (arXiv 2506.01844, 2 Haziran 2025'te gönderildi) açık ağırlıklar, açık veriler ve tek bir tüketici kartında çalışan bir betik ile 450 milyon parametre sunar. İşte ikisinin de ölçtüğü ve 1 milyar altı argümanının geçerliliğini yitirdiği nokta.
Bilmeniz gerekenler
- •TinyVLA üç boyutta sunulur: 101 milyon eğitilebilir ile toplam 422 milyon, 138 milyon ile 740 milyon, 143 milyon ile 1.3 milyar. Sadece ilk ikisi 1 milyarın altındadır.
- •Tablo IV'ü, TinyVLA-1B için tek bir A6000 üzerinde eylem başına 14 ms'lik bir tahmin süresi ölçerken, OpenVLA-7B için 292 ms ve küçültülmüş bir OpenVLA-1B için 140 ms ölçmüştür.
- •Bu hızı sağlayan omurga değil, başlıktır: TinyVLA-H'nin difüzyon başlığını bir ACT başlığıyla değiştirin ve beş gerçek robot görevi ortalama 94.0'dan tek hanelere düşer. Bir MLP başlığı her yerde 0 puan alır.
- •SmolVLA 450 milyon parametredir, bunun yaklaşık 100 milyonu eylem uzmanıdır ve 481 topluluk LeRobot veri kümesi ile 10.6 milyon kare üzerinde önceden eğitilmiştir. LIBERO'da 3.3 milyar parametreli robotik ön eğitimli bir Pi0 için 86.0'a karşı 87.3, ve üç gerçek SO-100 görevinde 3.5 milyar parametreli Pi0 için 61.7'ye karşı 78.3 rapor eder.
- •Bu ön eğitim olmadan tek görevli eğitildiğinde, SmolVLA bu görevlerde 40.0'a düşer, ACT'nin 48.3'ünün altındadır. Küçük olmak otomatik olarak kolay değildir.
- •TinyVLA'nın LeRobot entegrasyonu yoktur ve bir CUDA 11.7 tekerlek yığınına bağlıdır. SmolVLA lerobot'ta bulunur ve buradaki 24 GB katmanında çalıştırma başına yaklaşık 1 ila 3 USD maliyeti vardır.
Gerçekten küçük bir VLA ne sayılır?
Bir model kartındaki parametre sayısı tek bir sayı değildir. Toplam ağırlıkları, çıkarım sırasında yüklenen ağırlıkları veya sırasında gradyan alan ağırlıkları anlamına gelebilir. TinyVLA her ikisini de rapor eder ve aradaki fark büyüktür: TinyVLA-H toplamda 1.3 B'dir ancak 143 M eğitilebilir, çünkü LoRA adaptörleri ve eylem başlığı hareket ederken görüş kulesi ve dil modelinin çoğu donmuş kalır. Makale, eğitilebilir payı yaklaşık yüzde 5 olarak belirtir.
| Model | Parametreler | Omurga | Eylem başlığı | Kaynak |
|---|---|---|---|---|
| TinyVLA-S | 422 M toplam, 101 M eğitilebilir | Llava-Pythia ~400 M | Difüzyon (droid_diffusion U-Net) | arXiv 2409.12514 |
| TinyVLA-B | 740 M toplam, 138 M eğitilebilir | Llava-Pythia ~700 M | Difüzyon | arXiv 2409.12514 |
| TinyVLA-H | 1.3 B toplam, 143 M eğitilebilir | Llava-Pythia ~1.3 B | Difüzyon | arXiv 2409.12514 |
| SmolVLA | 450 M, ~100 M eylem uzmanı | SmolVLM2-500M-Video-Instruct | Akış eşleştirme uzmanı | arXiv 2506.01844 |
| Octo-Small | 27 M | ViT-S ölçeği, T5-Base metin kodlayıcı | Difüzyon | octo-small-1.5 card |
| ACT | ~80 M | ResNet, dil modeli yok | Doğrudan öbek regresyonu | AY-Robots catalog |
| OpenVLA | 7 B | Llama 2 7 B, DINOv2 ve SigLIP kodlayıcılar | Ototegresif eylem belirteçleri | arXiv 2406.09246 |
İki satır tartışmaya değer. yaklaşık 80 M ile buradaki diğer her şeyden daha küçüktür ancak dil modeli yoktur, bu yüzden bir VLA değildir: tek bir görevi öğrenir ve başka bir görev yapması söylenemez. 27 M ile bir LLM omurgası yerine bir T5-Base metin kodlayıcı aracılığıyla koşullandırılmıştır. İyi temel modellerdir, ancak hiçbiri etiketin ima ettiği talimat takibini sağlamaz.
Manşet sonuçlarını taşıyan varyant olan TinyVLA-H, 1.3 B'dir ve çizginin üzerindedir. Daha iyi soru, bir modelin eğitim sırasında 24 GB'a sığıp sığmadığı ve çıkarım sırasında kontrol hızınıza ulaşıp ulaşmadığıdır. Burada eğitebileceğiniz beş politika politikalar sayfasında yer almaktadır; sayılarını diğer herkesinkinin yanında görmek isterseniz, TinyVLA'nın bir arena girişi vardır.
TinyVLA: hız baştan gelir, omurgadan değil
Açıkça anlaşılan, dil modelini küçülttükleri için daha hızlı hale geldiğidir. Makalenin ablasyonu ise aksini söylüyor. OpenVLA'nın 7 B'lik omurgasını yaklaşık 1 B'lik bir omurga ile değiştirmek, eylem başına tahmini 292 ms'den 140 ms'ye düşürerek 2 kat kazanç sağladı. Karşılaştırılabilir bir parametre sayısına sahip TinyVLA-H, aynı kart üzerinde 14 ms'de çalışır. Diğer 10 katlık fark ise eylem başlığından kaynaklanıyor.
| Model | Eylem başına tahmin | Ölçüldüğü yer |
|---|---|---|
| OpenVLA-7B | 292 ms | single A6000 |
| OpenVLA-1B, TinyVLA'nın omurgasıyla değiştirildi | 140 ms | single A6000 |
| TinyVLA-1B (TinyVLA-H) | 14 ms | single A6000 |
OpenVLA, eylemleri dil modeli başlığı aracılığıyla ayrık tokenler olarak, eylem boyutu başına bir tane olmak üzere, otoregresif olarak yayar. TinyVLA, tüm parçayı tek seferde üreten bir difüzyon kod çözücü ekler. Tablo V, TinyVLA-H'deki mimariyi gösterir ve aynı beş gerçek robot görevinde yalnızca başlığı değiştirir. Bu, her iki makalede de şu argüman için en net kanıttır: akış eşleştirme politikaları yapar ve Pi0'ın token kod çözmeden uzaklaşmasının nedeni.
| TinyVLA-H Başlığı | Tenis Yerleştirme | Kupa Çevirme | Küp İstifleme | Çekmece Kapatma | Kutu Açma |
|---|---|---|---|---|---|
| Difüzyon (droid_diffusion) | 90.0 | 98.3 | 98.3 | 96.7 | 86.7 |
| Eylem Parçalama Dönüştürücüsü | 13.3 | 8.3 | 8.3 | 13.3 | 23.3 |
| Çok Katmanlı Algılayıcı | 0 | 0 | 0 | 0 | 0 |
292 / 140 / 14 ms'lik rakamlar Tablo IV'ten alınmıştır ve hepsi tek bir A6000 üzerinde elde edilmiştir. Bunlar eylem tahmini başına olup kamera yakalama, ön işleme ve servolara seri yazmayı içermez. Yayınlanan gecikmeyi bir alt sınır olarak kabul edin, asla kontrol hızı olarak değil. Kendi sayılarımız da aynı sınırlamayı taşır: bkz. çıkarım gecikmesi.
TinyVLA'nın Başarıları
| Kıyaslama | Protokol | TinyVLA-H | Temel Modeller |
|---|---|---|---|
| MetaWorld, 50 görev, simülasyon | Çoklu görev, 50 demo, 3 tohum | Zorluğa göre 77.6 / 21.5 / 11.4 / 15.8, ortalama 31.6 | Difüzyon Politikası ortalaması 10.5 |
| Gerçek Franka Panda, 5 görev | Görev başına 100 yörünge, 20 deneme | 94.0 ortalama | OpenVLA 68.3, Diffusion Policy 35.3 |
| Çift Kollu UR5, 3 görev | Çoklu görev, görev başına 10 deneme | 76.7 / 36.7 / 30.0 | OpenVLA 0 / 0 / 0, Diffusion Policy 40.3 / 31.3 / 43.0 |
Çift kollu sıra, makalenin kendisinin verdiği sıkıcı bir açıklamaya sahip: OpenVLA, tamamen tek kollu verilerden oluşan Open X-Embodiment üzerinde önceden eğitilmiştir, bu nedenle iki kollu bir eylem alanı dağıtım dışıdır ve sıfır puan alır. Difüzyon politikası taban çizgisi, bu üç görevin ikisinde TinyVLA-H'yi yener. Arka plan Open X-Embodiment yazısında.

TinyVLA deposu, Ağustos 2026 itibarıyla
Makale iyi. Kod bir araştırma ürünü. Depo github.com/liyaxuanliyaxuan/TinyVLA; README'si kodun yayınlanma tarihini 17 Şubat 2025 ve son commit'i 11 Mart 2025 olarak belirtiyor. Bir makaleyi yeniden üretmek için uygun, ancak bakımı yapılan bir kütüphane istiyorsanız sorunlu.
git clone https://github.com/liyaxuanliyaxuan/TinyVLA
conda create -n tinyvla python=3.10 -y
conda activate tinyvla
pip install --upgrade pip
pip install -r requirements.txt
cd policy_heads && pip install -e .
cd ../llava-pythia && pip install -e .requirements.txt, torch==2.0.1, transformers==4.37.1, deepspeed==0.9.5, peft==0.4.0, diffusers==0.11.1, numpy==1.24.4 ve CUDA yığınını 11.x tekerleklerine sabitler: nvidia-cuda-runtime-cu11==11.7.99, nvidia-cudnn-cu11==8.5.0.96, triton==2.0.0. README, Python 3.10 ister; lerobot 0.6.1 ise 3.12 veya daha yenisini gerektirir, bu nedenle ikisi aynı ortamı paylaşamaz. Öncelikle GPU nesliniz için bir torch 2.0.1 derlemesinin mevcut olduğunu doğrulayın. Eğer bir çalıştırma VRAM yetersizliğinden dolayı durursa, bellek yetersizliği kontrol listesi tahmin etmekten daha hızlıdır.
TinyVLA ayrıca LeRobot veri kümeleri okumaz. Biçimi ACT tarzı HDF5'tir: action, language_raw ve çoklu görünümlü görüntüler, joint_positions, qpos ve qvel içeren bir gözlem grubu. Depo, RLDS girişi için data_utils/rlds_to_h5py.py'yi içerir ve her görev, aloha_scripts/constants.py'de dataset_dir, episode_len ve camera_names ile manuel olarak kaydedilir. Eğer sizin bölümleriniz lerobot'tan veya masaüstü istemcisinden geldiyse, dönüştürme size aittir.
# scripts/train.sh, the real flags from the repository
ACTION_HEAD=droid_diffusion
deepspeed --master_port 29600 --num_gpus=8 --num_nodes=1 ./train_tinyvla.py \
--deepspeed scripts/zero2.json \
--lora_enable True \
--lora_module 'vit llm' \
--lora_r 64 \
--lora_alpha 256 \
--non_lora_lr 2e-5 \
--task_name "example_task_config" \
--model_name_or_path /path/to/pretrained_vlm \
--freeze_vision_tower True \
--freeze_backbone True \
--bf16 True \
--max_steps 10000 \
--per_device_train_batch_size 32 \
--gradient_accumulation_steps 1 \
--learning_rate 2e-4 \
--lr_scheduler_type "cosine" \
--warmup_ratio 0.005 \
--save_steps 1000 \
--action_head_type $ACTION_HEAD \
--use_state True \
--window_size 6- --num_gpus=8 sekiz kartlı bir düğüm varsayar. Bunu 1 olarak ayarlayın ve toplu iş boyutunu 32'nin oldukça altına düşürün. Tek GPU'lu bir varyant yukarı akışta gönderilmediğinden, komut 4090 üzerinde olduğu gibi çalıştırılamaz.
- --deepspeed scripts/zero2.json, üst düzey scripts dizininde olmayan bir dosyayı işaret ediyor. DeepSpeed yapılandırmaları llava-pythia/scripts/zero2.json adresinde bulunur. İlk çalıştırmanızdan önce yolu düzeltin.
- README, çıktı dizini adının llava_pythia içermesini ve LoRA etkinse lora içermesini gerektirir.
- Omurga ayrı bir indirmedir: lesjie/Llava-Pythia-400M, -700M veya -1.3B. lerobot/smolvla_base'i işaret ettiğiniz gibi bir politikayı işaret edebileceğiniz tek bir temel kontrol noktası yoktur.
SmolVLA: Bu öğleden sonra çalıştırabileceğiniz 1 B altı model
SmolVLA, bakımı yapılan bir kütüphane içinde aynı argümanı sunar. SmolVLM2-500M-Video-Instruct omurgasında 450 M parametreye sahiptir ve verimlilik, küçük olma iddiasından ziyade configuration_smolvla.py dosyasından okuyabileceğiniz ayarlardan gelir.
| configuration_smolvla.py içindeki ayar | Varsayılan | Ne sağlar |
|---|---|---|
| num_vlm_layers | 16 | Yalnızca ilk 16 dil modeli katmanı çalışır |
| expert_width_multiplier | 0.75 | Eylem uzmanı gizli boyutu, VLM'nin yüzde 75'idir |
| self_attn_every_n_layers | 2 | Çapraz dikkat ile serpiştirilmiş öz-dikkat |
| chunk_size / n_action_steps | 50 / 50 | Tek bir geçiş 50 eylem üretir ve 50'si de yürütülür |
| num_steps | 10 | Akış eşleştirme gürültü giderme 10 adımda sabitlenmiştir |
| tokenizer_max_length | 48 | Talimat 48 tokene kısaltılır |
| freeze_vision_encoder / train_expert_only | True / True | İnce ayar, görme kulesini değil, uzmanı hareket ettirir |
| optimizer_lr, warmup, decay | 1e-4, 1000 steps, to 2.5e-6 over 30000 | Makale tarifi değil: ön eğitimi 200000 adımda 100 adımlık bir ısınma kullandı |
Ön eğitimde 4 GPU üzerinde 481 topluluk LeRobot veri seti, 22.9 K bölüm ve 10.6 M kare kullanıldı, 256'lık küresel bir parti ile 200000 adım atıldı; makale tüm projenin yaklaşık 30 K GPU saati sürdüğünü belirtiyor. Dikkat edilmesi gereken bir sayı: Hugging Face lansman blogu 487 derlenmiş veri seti derken, makalenin tablosu 481 diyor. Makalenin rakamını kullanıyor ve bu farklılığı işaretliyoruz.

| Kıyaslama | SmolVLA 0.45 B | SmolVLA 2.25 B | Pi0 | ACT |
|---|---|---|---|---|
| LIBERO ortalaması, çoklu görev | 87.3 | 88.75 | 86.0 (3.3 B, robotics-pretrained) | - |
| Meta-World ortalaması, çoklu görev | 57.3 | 68.24 | 47.9 (3.5 B, robotics-pretrained) | - |
| Gerçek SO-100, 3 görev, çoklu görev eğitimi | 78.3 | - | 61.7 (3.5 B) | - |
| Gerçek SO-100, 3 görev, tek görev, robotik ön eğitimi yok | 40.0 | - | - | 48.3 |
| SO-101 lego al-yerleştir, tek görev, dağılım içinde | 90 | - | - | 70 |
| SO-101 lego al-yerleştir, tek görev, dağılım dışında | 50 | - | - | 40 |
LIBERO bir simülasyondur ve artık her yetkin model orada seksenli puanlar alıyor. 450 M'lik bir modelin 3.5 B'lik bir modeli 16.6 puanla geçtiği gerçek SO-100 satırı ilginç olan; altındaki satır ise karşı ağırlıktır. Topluluk ön eğitimini ve çoklu görev eğitimini çıkardığınızda, aynı model ACT'nin altında 40.0'a düşüyor. Savunulabilir iddia, küçük bir modelin otomatik olarak daha kötü olmadığı, daha iyi olmadığıdır.
Bir tesadüf yardımcı oluyor: SmolVLA makalesinin Meta-World tablosu, TinyVLA'nın kendi yayınlanmış sayılarını bir temel olarak içeriyor, bu sayede her iki model de bir tabloda yer alıyor; SmolVLA-0.45B 57.3'te, TinyVLA-H ise 31.6'da. Ayrıca SmolVLA'nın Pi0'dan yaklaşık yüzde 40 daha hızlı ve 6 kat daha az bellek kullanarak eğitildiğini bildiriyor. Tüm bunlar SmolVLA yazarlarından geliyor; arena girişi her değeri kaynağına bağlıyor.
SmolVLA zamanını nerede harcıyor
AY-Robots, SmolVLA'yı eylem adımı başına 245 ms ve ACT 20 ms olarak listeliyor, politika kataloğu. TinyVLA, eylem tahmini başına 14 ms bildiriyor. Bu sayılar karşılaştırılabilir değil ve onları öyleymiş gibi ele almak bu konuda en yaygın hatadır: bazıları bir ileri geçişi zamanlar, bazıları ise bu geçişi bir öbek boyunca eylem öbekleme amorti ettiğinde o geçişi bir öbek boyunca böler.
- SmolVLA, ileri geçiş başına 50 eylem yayar ve tüm 50 eylemi yürütür. Makalenin gerçek robotlarda kullandığı 30 fps'de, bir çıkarım yaklaşık 1.7 saniyelik hareketi kapsar.
- Asenkron çıkarım, mevcut öbek hala yürütülürken bir sonraki öbeği hesaplar: 9.7 s ortalama görev tamamlama süresi, 13.75 s senkron süreye karşı, yaklaşık yüzde 30 daha hızlı ve sabit 60 saniyelik bir pencerede 9'a karşı 19 alma-yerleştirme döngüsü.
- Başarı oranları daha iyi olmaktan ziyade karşılaştırılabilirdi; 78.3 senkron, 73.3 asenkron. Asenkron, doğruluk değil, verim sağlar.
- Öbekleme, hesaplama gecikmesini gizler, ağ gecikmesini değil ve 50 eyleme bağlı olduğu için politikayı daha az tepkisel hale getirir.
AY-Robots, yerel robot istemcisi o uç noktayla konuşurken politikanıza hizmet eden bir bulut GPU pod'unu otomatik olarak sağlayabilir ve pod, sessizce faturalandırmak yerine kendini yok etmesi için bir boşta kalma izleyicisi taşır. Yapmadığı şey, genel internet gidiş dönüşünü ortadan kaldırmaktır. Buradaki beş politika arasındaki kontrol döngüsü, herhangi bir ağ bağlantısı olmadan eylem adımı başına 20 ila 485 ms'dir, bu nedenle uzaktan çıkarım, yavaş alma ve yerleştirme için uygunken, hızlı reaktif hareket için uygun değildir.

Tek bir tüketici kartında SmolVLA'yı ince ayar yapmak
Manuel yol, lerobot 0.6.1 üzerinde, 23 Ağustos 2026 itibarıyla mevcut PyPI sürümü. Aşağıdaki her şey, aynı gün alınan Hugging Face lerobot SmolVLA belgelerinden gelmektedir; rehberli sürüm daha naziktir.
- 1lerobot'u smolvla eklentisiyle kurun
SmolVLA bağımlılıkları isteğe bağlı bir eklentidir, temel kurulumun bir parçası değildir. Onsuz kurup ardından politika türünün neden bilinmediğini merak etmek, sıkça yaşanan yarım saatlik bir kayıptır.
bashgit clone https://github.com/huggingface/lerobot.git cd lerobot pip install -e ".[smolvla]" - 2Yeterli bölüme sahip bir veri kümesi edinin
Belgeler yaklaşık 50 bölüm önermekte ve aynı görevin 25 bölümle yeterli olmadığını belirtmektedir. AY-Robots minimumu 30 olarak belirlemiştir. Kendi verilerinizi kaydedin veya veri kümesi dizininden başlayın.
bash# any LeRobotDataset on the Hub works as --dataset.repo_id # lerobot/svla_so100_pickplace is the paper's own 50-episode set: # 5 cube positions, 10 episodes each - 3İnce ayarı başlatın
lerobot kılavuzundaki komut, değiştirilmemiş haliyle. Belgeler, 20000 adımın tek bir A100 üzerinde yaklaşık 4 saat sürdüğünü belirtiyor. 24 GB'lık bir kartta daha uzun sürmesini bekleyin ve süreyi ölçün.
bashcd lerobot && lerobot-train \ --policy.path=lerobot/smolvla_base \ --dataset.repo_id=${HF_USER}/mydataset \ --batch_size=64 \ --steps=20000 \ --output_dir=outputs/train/my_smolvla \ --job_name=my_smolvla_training \ --policy.device=cuda \ --wandb.enable=true - 4Sığana kadar yığın boyutunu düşürün
batch_size=64 belgelenmiş bir örnektir, kartınız hakkında bir vaat değildir. Belgeler, yükleme süreleri kısa kaldığı sürece küçükten başlayıp artırmayı tavsiye eder.
bashlerobot-train --help - 5Kontrol noktasını kola dağıtın
Aynı kütüphane, tek komut. Gerçek zamanlı parçalama bayrakları belgelerde yorum satırı yapılmıştır ve düşük güçlü donanımlarda başvurulması gerekenlerdir.
bashlerobot-rollout \ --strategy.type=base \ --robot.type=so101_follower \ --robot.port=/dev/ttyACM0 \ --robot.id=my_blue_follower_arm \ --robot.cameras="{ front: {type: opencv, index_or_path: 8, width: 640, height: 480, fps: 30}}" \ --task="Grasp a lego block and put it in the bin." \ --policy.path=HF_USER/FINETUNE_MODEL_NAME
Hangi yolu seçerseniz seçin, bir kontrol noktası ve onu üreten yapılandırma ile sonuçlanırsınız. Veri kümesi revizyonunu, adım sayısını ve tohumu yanında tutun. lerobot varsayılan olarak 1000 tohumunu kullanır; GR00T'nin ince ayar giriş noktası hiçbir tohumu açığa çıkarmaz, bu nedenle bu çalıştırmalar bit-bit tekrarlanabilir değildir. Mekanizmalar eğitim belgelerinde.
Küçük bir VLA'yı bir kola yerleştirmenin iki yolu
Makineye ve arıza modlarına siz sahipsiniz. SmolVLA için bu makul: bir pip eklentisi, bir eğitim komutu, bir dağıtım komutu. TinyVLA için ise dondurulmuş pinler, bozuk bir DeepSpeed yolu ve kendi yazdığınız bir veri dönüştürme ile bir araştırma reprodüksiyonudur.
- 24 GB'lık bir kart edinin, 30 ila 50 bölüm kaydedin, kamera akışlarını kare kare doğrulayın.
- pip install -e ".[smolvla]" komutunu çalıştırın, lerobot/smolvla_base'e karşı lerobot-train yapın, ardından kontrol noktasını kolun takılı olduğu makinede sunun.
- TinyVLA için: ayrı bir conda ortamı, verileri HDF5'e dönüştürün, görevi constants.py'ye kaydedin, zero2.json yolunu düzeltin, train.sh'yi sekiz GPU'dan bire indirin.
- Kart ödendikten sonra saatlik faturalandırma yok.
- Çıkarım, servoların yanında yer alır, hızlı bir kontrol döngüsü elde etmenin tek yolu budur.
- Politika kodunu yamalayabilirsiniz ve TinyVLA yalnızca bu şekilde kullanılabilir.
- Bir 4090, yaklaşık 3 milyar parametreli her politikayı devre dışı bırakır, bu nedenle GR00T N1.7 veya Pi0.5'e karşı yerel bir karşılaştırma yapılamaz.
- Ortam kurulumu asıl iştir. TinyVLA'nın pinleri tek başına bir güne mal olabilir.
- Sıra yok, yeniden deneme yok, kontrol noktası depolama yok. 14000. adımda bir yeniden başlatma, baştan başlamak demektir.
SmolVLA buradaki beş politikadan biridir. Bir formda model ve veri kümesini seçersiniz, arka uç gerekli VRAM'e göre bir GPU kiralar, eğiticisi çalıştırır ve kontrol noktalarını nesne depolamaya yazar. Adım adım: SO-100 Üzerinde SmolVLA, veya tam matris eğitim sayfasında.
| Platformun SmolVLA için gönderdikleri | Değer |
|---|---|
| yığın boyutu | 2 |
| öğrenme oranı | 1e-4 |
| maksimum adım | 20000 |
| gradyan birikimi | 8, ve eğiticisine ulaşmaz |
| formdaki ek ayarlar | seed, logFreq |
| GPU katmanı | RTX 4090 or any 24 GB card |
| veri kümesi formatı | LeRobot v3.0 |
| minimum bölüm sayısı | 30 |
Birincisi, buradaki varsayılan yığın boyutu 2'dir, lerobot dokümantasyon örneğindeki 64 değil, ve gradyan birikimi ayarı gönderilse de SmolVLA için hiçbir etkisi yoktur, bu nedenle etkili yığın gerçekten 2'dir. Varsayılanın yukarı akışla eşleştiğini varsaymak yerine bunu bilerek artırın. İkincisi, TinyVLA burada hiç eğitilemez.
24 GB katmanında bir çalıştırma, saatte 0.30 ila 0.60 USD karşılığında 2 ila 5 saat sürer, yaklaşık 1 ila 3 USD. A100 katmanında yaklaşık 3 milyar parametreli bir politika, saatte 1.20 ila 2.00 USD karşılığında 3 ila 6 saat sürer, yaklaşık 4 ila 12 USD. Bkz. fiyatlandırma, ve aynı işlemler CLI'dan ve MCP sunucusundan.
Küçük bir modelin yanlış seçim olduğu durumlar
Her iki makale de özetlerden daha dikkatli. TinyVLA'nın hata analizi spesifik: 0.4 B varyantı, talimatı yanlış okuyarak üç kez başarısız oldu; yazarlar bunu daha küçük VLM'deki sınırlı dil anlama yeteneğine bağlıyor ve bu mod 1.3 B'de ortadan kalktı. SmolVLA aynı eğriyi diğer uçtan gösteriyor: aynı mimarinin 2.25 B sürümü LIBERO'da 88.75 ve Meta-World'de 68.24 puan alırken, 0.45 B model için bu değerler 87.3 ve 57.3.
- 24 GB'lık bir karta sığar, bu da bir deneyin maliyetini onlarca dolardan birkaç dolara düşürür.
- Kolun yanında çalışacak kadar hızlı, bu nedenle kontrol döngüsünde ağ atlaması yok.
- Bir kişinin kaydedebileceği veriler üzerinde ince ayar yapar, binlerce yerine onlarca bölüm.
- SmolVLA'nın ağırlıkları, veri listesi ve kodu herkese açık, bu nedenle kötü bir sonuç hata ayıklanabilir.
- Daha zayıf talimat takibi: daha az dil parametresi, benzer referans ifadeleri ayırma yeteneği daha az.
- Kaydetmediğiniz kurulumlara daha az uzamsal ve görsel genelleme.
- Veri kümesi kusurlarına karşı daha hassas, geri dönülecek daha az ön eğitim geçmişiyle.
- Çok görevli ve uzun ufuklu çalışmalar, SmolVLA'nın kendi 2.25 B varyantı da dahil olmak üzere hala daha büyük modelleri tercih ediyor.
Yapmaya değer karşılaştırma TinyVLA ile SmolVLA arasında değil. Kendi görevinizde SmolVLA ile ACT, ve SmolVLA makalesi bunun nedenini açıklıyor. Robotik ön eğitimi olmadan tek görevli olarak eğitilen SmolVLA, tek görevli ACT'nin 48.3 puan aldığı üç SO-100 görevinde ortalama 40.0 puan aldı. Onu 78.3'e çıkaran şey, yalnızca mimari değil, topluluk ön eğitimi ve çok görevli eğitimdir. SO-101 lego görevinde, her ikisi de tek görevli olmak üzere, SmolVLA kazanıyor: dağılımda 70'e karşı 90. Ardından bütçe izin verirse SmolVLA ile Pi0.5.
Kötü verileri telafi etmek için daha az ön eğitim vardır, bu nedenle kusurlu bir veri kümesindeki temiz bir kayıp eğrisi, kusuru güvenle yeniden üreten bir politika sağlar. lerobot belgeleri yapı konusunda nettir: 5 küp pozisyonunda 50 bölüm, pozisyon başına 10, işe yaradı; 25 işe yaramadı. Eğer kayıp iyi görünüyorsa ve kol hiçbir işe yaramıyorsa, şuradan başlayın: kayıp düşüyor, politika hiçbir şey yapmıyor, politika sadece tek bir kurulumda çalışıyor veya gerçekten kullanılabilir VLA eğitim verileri toplama.
Beş politika, bir karşılaştırma tablosu
GR00T N1.7, GR00T N1.5, Pi0.5, SmolVLA ve ACT, gerçek parametre sayıları, eylem adımı başına çıkarım gecikmesi, her birinin ihtiyaç duyduğu GPU katmanı ve faydalı bir şey yapmadan önceki minimum bölüm sayısı ile.
Politikaları karşılaştırınÜzerine hareket edebileceğiniz bir karar tablosu
| Durumunuz | Şununla başlayın | Neden |
|---|---|---|
| Tek görev, iyi gösterimler, dil yok | ACT | ~80 M, 20 ms, 24 GB kart, indirilecek temel model yok |
| Birkaç ilgili görev, her biri için bir talimat | SmolVLA | 450 M, lerobot içinde, minimum 30 bölüm, çalıştırma başına 1 ila 3 USD |
| Özellikle TinyVLA sonucunu yeniden üretme | TinyVLA-B or TinyVLA-H | Depo tek yoldur: izole edilmiş ortam, dönüştürülmüş veri |
| Çoklu görev, çeşitli talimatlar, A100 bütçesi | GR00T N1.7 or Pi0.5 | ~3 B, adım başına 152 ms ve 485 ms, çalıştırma başına 4 ila 12 USD |
| Henüz robot yok | Gerçek bir kolu sürün | Kuyruk tabanlı canlı kolun kayıt veya donanıma ihtiyacı yok |
Son sıra için, canlı kol tarayıcıdan hesap olmadan kontrol edebileceğiniz fiziksel bir SO-100 yayınlar ve başlamak için üç yol geri kalanını kapsar. SO-100 burada referans koldur, parçaları yaklaşık 110 ila 150 EUR tutarındadır ve tam kurulum kılavuzu mevcuttur.
1 milyar altı modellerden sonra ne geliyor
Parametre sayısını küçültmek, bir VLA'yı ucuz hale getirmenin bir yoludur ve açıkça kazanan yol değildir. OpenVLA-OFT (arXiv 2502.19645) 7 milyar omurgayı korur ve yalnızca eylemlerin nasıl çözüldüğünü değiştirir, eylem oluşturma veriminde 26 kat artış ve LIBERO'nun yüzde 76,5'ten yüzde 97,1'e yükseldiğini bildirir. BitVLA (arXiv 2506.07530) 1-bit BitNet b1.58 2B4T omurgasının her ağırlığını üçlü yapar, tam hassasiyetli OpenVLA-OFT ile eşleşirken 11.0 kat daha az bellek ve 4.4 kat daha düşük uçtan uca gecikme bildirir. X-VLA-0.9B (arXiv 2510.10274) akış eşleştirmesiyle 1 milyar sınırında yer alır.
Ortak nokta: gecikme, dil modelinde değil, eylem kod çözücüsündedir. Bir politikanın kaç parametresi olduğunu sormadan önce, eylemleri nasıl yaydığını sorun. Arena 85 model ve 332 sonuca sahiptir, her biri kaynağına bağlıdır; daha geniş bir genel bakış VLA girişimizde mevcuttur.
RTX 4090 üzerinde SmolVLA'yı ince ayar yapabilir miyim?▾
Evet. SmolVLA 450 M parametredir ve AY-Robots bunu RTX 4090 / 24 GB katmanında çalıştırır. lerobot örneği --batch_size=64 kullanır, bu kartınız için bir garanti değil, bir örnektir; belgeler küçük başlamayı ve yükleme süreleri kısa kalırken artırmayı tavsiye eder. A100 üzerinde 20000 adım için belgelerin belirttiği yaklaşık 4 saatten daha uzun sürmesini bekleyin.
TinyVLA, lerobot'ta veya AY-Robots'ta mevcut mu?▾
İkisine de hayır. TinyVLA yalnızca araştırma deposunda bulunur, son commit 11 Mart 2025'tir ve formatı LeRobot yerine ACT tarzı HDF5'tir. AY-Robots, GR00T N1.7, GR00T N1.5, Pi0.5, SmolVLA ve ACT'yi eğitir. TinyVLA'yı istiyorsanız kendiniz oluşturmanız gerekir ve önce scripts/train.sh içindeki DeepSpeed yapılandırma yolunu düzeltmeniz gerekecektir.
450 M'lik bir model gerçekten 3 B'lik bir modelle rekabet edebilir mi?▾
Yazarların kendi kıyaslamalarına göre evet: LIBERO'da 87.3'e karşı 86.0, robotik ön eğitimli 3.3 B'lik bir Pi0'a karşı ve aynı makalenin Pi0'ı 3.5 B olarak etiketlediği üç gerçek SO-100 görevinde 78.3'e karşı 61.7. Sınır aynı makalede: robotik ön eğitim olmadan tek görevde, SmolVLA 40.0'a düşer, ACT'nin 48.3'ünün altına.
Küçük bir VLA bir şey yapmadan önce kaç bölüme ihtiyacım var?▾
AY-Robots, SmolVLA minimumunu 30 bölüm, ACT minimumunu ise 50 bölüm olarak belirler. lerobot belgeleri yaklaşık 50'yi önerir ve aynı görev için 25'in yeterli olmadığını bildirir. Yapı, sayı kadar önemlidir: makalenin seti, her biri 10 bölümlük 5 küp pozisyonu kullandı.
Yayınlanan gecikme süreleri neden bu kadar farklılık gösteriyor?▾
Farklı şeyler ölçüyorlar. TinyVLA, bir A6000 üzerinde eylem tahmini başına 14 ms bildirirken; AY-Robots, SmolVLA'yı eylem adımı başına 245 ms ve ACT'yi 20 ms olarak listeler. Bazı rakamlar tek bir ileri geçişi kapsar, bazıları bir geçişi 50 eylemlik bir parçaya böler ve neredeyse hiçbiri kamera yakalamayı veya servolara yazmayı içermez.
Bulut çıkarımı GPU sorununu çözüyor mu?▾
Kısmen. AY-Robots, yerel istemci o uç noktayla konuşurken politikayı sunan bir pod'u otomatik olarak sağlar ve boşta kalma durumunda sessizce faturalandırmak yerine kendini yok eden bir izleyiciye sahiptir. Genel internet gidiş-dönüşünü ortadan kaldıramaz ve kontrol döngüsü zaten eylem adımı başına 20 ila 485 ms'dir. Yavaş alma-yerleştirme için iyi, hızlı reaktif hareket için değil.
Sources
- TinyVLA: Robotik Manipülasyon için Hızlı, Veri Verimli Görsel-Dil-Eylem Modellerine Doğru
- TinyVLA resmi kod deposu (README, requirements.txt, scripts/train.sh)
- TinyVLA proje sayfası
- lesjie/Llava-Pythia-1.3B, TinyVLA-H omurga ağırlıkları
- SmolVLA: Uygun Fiyatlı ve Verimli Robotik için Bir Görsel-Dil-Eylem Modeli
- lerobot belgeleri: SmolVLA ince ayarı
- lerobot: configuration_smolvla.py, SmolVLA varsayılanları
- lerobot/smolvla_base model kartı
- SmolVLA: Verimli Görsel-Dil-Eylem Modeli (Hugging Face blog)
- PyPI'da lerobot (0.6.1, Python 3.12 veya daha yenisini gerektirir)
- OpenVLA: Açık Kaynaklı Bir Görsel-Dil-Eylem Modeli
- Görsel-Dil-Eylem Modellerinde İnce Ayar: Hız ve Başarıyı Optimize Etme (OpenVLA-OFT)
- BitVLA: Robotik Manipülasyon için 1-bit Görsel-Dil-Eylem Modelleri
- X-VLA: Ölçeklenebilir Çapraz-Vücut Görsel-Dil-Eylem Modeli Olarak Yumuşak-İstemli Transformer
- rail-berkeley/octo-small-1.5 model kartı (27 M parametre)
Sources
- TinyVLA: Towards Fast, Data-Efficient Vision-Language-Action Models for Robotic Manipulation
- TinyVLA official code repository (README, requirements.txt, scripts/train.sh)
- TinyVLA project page
- lesjie/Llava-Pythia-1.3B, the TinyVLA-H backbone weights
- SmolVLA: A Vision-Language-Action Model for Affordable and Efficient Robotics
- lerobot documentation: fine-tuning SmolVLA
- lerobot: configuration_smolvla.py, the SmolVLA defaults
- lerobot/smolvla_base model card
- SmolVLA: Efficient Vision-Language-Action Model (Hugging Face blog)
- lerobot on PyPI (0.6.1, requires Python 3.12 or newer)
- OpenVLA: An Open-Source Vision-Language-Action Model
- Fine-Tuning Vision-Language-Action Models: Optimizing Speed and Success (OpenVLA-OFT)
- BitVLA: 1-bit Vision-Language-Action Models for Robotics Manipulation
- X-VLA: Soft-Prompted Transformer as Scalable Cross-Embodiment Vision-Language-Action Model
- rail-berkeley/octo-small-1.5 model card (27 M parameters)
Ready for high-quality robotics data?
AY-Robots connects your robots to skilled operators worldwide.
Get Started