
TinyVLA ja SmolVLA tuovat toimivan VLA:n alle 1 miljardin parametrin. Todelliset luvut molemmista papereista, lerobotin oletusarvot, mitattu viive ja yhden ajon hinta 24 GB:n kortilla.
Lähes jokainen visio-kieli-toimintamalli josta kirjoitetaan, olettaa datakeskuskortin. OpenVLA:ssa on 7 miljardia parametria. GR00T N1.7 ja Pi0.5 ovat noin 3 miljardia ja vaativat A100 80 GB:n hienosäätöön. Jos työpöydälläsi oleva kortti on 4090, kyseinen malliluokka on ulottumattomissa.
Kaksi artikkelia väittää, ettei sitä tarvita. TinyVLA (arXiv 2409.12514, hyväksytty IEEE Robotics and Automation Letters -julkaisuun helmikuussa 2025) rakentaa VLA:n 400 miljoonasta 1,3 miljardiin parametrin runko-osasta ja diffuusiotoimintapäästä. SmolVLA (arXiv 2506.01844, lähetetty 2. kesäkuuta 2025) sisältää 450 miljoonaa parametria avoimilla painoilla, avoimella datalla ja skriptillä, joka toimii yhdellä kuluttajakortilla. Tässä on, mitä molemmat mittasivat, ja missä alle 1 miljardin argumentti lakkaa pitämästä paikkaansa.
Mitä sinun tulee tietää
- •TinyVLA:sta on kolme kokoa: 422 miljoonaa yhteensä, joista 101 miljoonaa koulutettavissa; 740 miljoonaa, joista 138 miljoonaa; 1,3 miljardia, joista 143 miljoonaa. Vain kaksi ensimmäistä ovat alle 1 miljardin.
- •Sen taulukko IV mittaa 14 ms per toimintaprediktio TinyVLA-1B:lle yhdellä A6000:lla, verrattuna 292 ms:iin OpenVLA-7B:lle ja 140 ms:iin pienennetylle OpenVLA-1B:lle.
- •Pää pitää yllä tätä nopeutta, ei runko-osa: vaihda TinyVLA-H:n diffuusiopää ACT-päähän, ja viiden todellisen robotin tehtävän keskiarvo putoaa 94,0:sta yksinumeroisiin lukuihin. MLP-pää saa 0 pistettä kaikkialla.
- •SmolVLA on 450 miljoonaa, josta noin 100 miljoonaa on toiminta-asiantuntija, esikoulutettu 481 yhteisön LeRobot-aineistolla ja 10,6 miljoonalla kuvalla. Se raportoi 87,3 LIBEROssa verrattuna 86,0:aan robotiikkaan esikoulutetulle Pi0:lle 3,3 miljardilla, ja 78,3 kolmessa todellisessa SO-100-tehtävässä verrattuna 61,7:ään Pi0:lle 3,5 miljardilla.
- •Koulutettuna yksittäiseen tehtävään ilman esikoulutusta, SmolVLA putoaa 40,0:aan näissä tehtävissä, alle ACT:n 48,3:n. Pieni ei ole automaattisesti helppoa.
- •TinyVLA:ssa ei ole LeRobot-integraatiota ja se vaatii CUDA 11.7 -pyöräpinon. SmolVLA on lerobotissa ja maksaa noin 1–3 USD per ajo täällä 24 GB:n tasolla.
Mikä todella lasketaan pieneksi VLA:ksi
Mallikortin parametrien määrä ei ole yksi luku. Se voi tarkoittaa kokonaispainoja, päättelyssä ladattuja painoja tai painoja, jotka vastaanottavat gradientteja aikana. TinyVLA raportoi molemmat, ja ero on suuri: TinyVLA-H on yhteensä 1,3 B, mutta 143 M on koulutettavissa, koska näkötorni ja suurin osa kielimallista pysyvät jäädytettyinä, kun taas LoRA-adapterit ja toimintapää liikkuvat. Tutkimus asettaa koulutettavan osuuden noin 5 prosenttiin.
| Malli | Parametrit | Runkoverkko | Toimintapää | Lähde |
|---|---|---|---|---|
| TinyVLA-S | 422 M yhteensä, 101 M koulutettavissa | Llava-Pythia ~400 M | Diffuusio (droid_diffusion U-Net) | arXiv 2409.12514 |
| TinyVLA-B | 740 M yhteensä, 138 M koulutettavissa | Llava-Pythia ~700 M | Diffuusio | arXiv 2409.12514 |
| TinyVLA-H | 1.3 B yhteensä, 143 M koulutettavissa | Llava-Pythia ~1.3 B | Diffuusio | arXiv 2409.12514 |
| SmolVLA | 450 M, ~100 M toiminta-asiantuntija | SmolVLM2-500M-Video-Instruct | Vuon sovitusasiantuntija | arXiv 2506.01844 |
| Octo-Small | 27 M | ViT-S-skaala, T5-Base-tekstikooderi | Diffuusio | octo-small-1.5 card |
| ACT | ~80 M | ResNet, ei kielimallia | Suora palaregressio | AY-Robots catalog |
| OpenVLA | 7 B | Llama 2 7 B, DINOv2 ja SigLIP-kooderit | Autoregressiiviset toimintatunnukset | arXiv 2406.09246 |
Kahdesta rivistä kannattaa keskustella. noin 80 M on pienempi kuin kaikki muut tässä, mutta siinä ei ole kielimallia, joten se ei ole VLA: se oppii yhden tehtävän eikä sille voi käskeä toista. 27 M on ehdollistettu T5-Base-tekstikooderin kautta, ei LLM-runkoverkon. Hyviä vertailukohtia, kumpikaan ei anna sinulle ohjeiden noudattamista, mitä nimi antaa ymmärtää.
TinyVLA-H, otsikon tulokset sisältävä variantti, on 1,3 B ja ylittää rajan. Parempi kysymys on, mahtuuko malli 24 GB:iin koulutuksen aikana ja saavuttaako se halutun ohjausnopeuden päättelyssä. Viisi käytäntöä, jotka voit kouluttaa täällä, löytyvät käytännöt-sivulta; TinyVLA:lla on areenamerkintä, jos haluat sen luvut muiden rinnalle.
TinyVLA: nopeus tulee päästä, ei rungosta
Ilmeinen tulkinta on, että he tekivät kielimallista pienemmän, joten se nopeutui. Artikkelin ablaatiotutkimus sanoo toisin. OpenVLA:n 7 B rungon vaihtaminen noin 1 B runkoon leikkasi toimintakohtaisen ennustuksen 292 ms:sta 140 ms:iin, mikä on 2-kertainen parannus. TinyVLA-H, vastaavalla parametrimäärällä, toimii 14 ms:ssa samalla kortilla. Toinen 10-kertainen parannus tulee toimintapäästä.
| Malli | Toimintakohtainen ennustus | Mitattu |
|---|---|---|
| OpenVLA-7B | 292 ms | single A6000 |
| OpenVLA-1B, backbone swapped for TinyVLA's | 140 ms | single A6000 |
| TinyVLA-1B (TinyVLA-H) | 14 ms | single A6000 |
OpenVLA lähettää toimintoja diskretoituina tunnuksina kielimallin pään kautta, yksi toimintadimensiota kohti, autoregressiivisesti. TinyVLA liittää diffuusiodekooderin, joka tuottaa koko palan yhdellä kertaa. Taulukko V esittää TinyVLA-H:n arkkitehtuurin ja vaihtaa vain pään, samoissa viidessä todellisen robotin tehtävässä. Se on puhtain todiste kummassakin artikkelissa argumentille virtaussovitus -politiikkojen puolesta, ja syy miksi Pi0 siirtyi pois tunnusten dekoodauksesta.
| TinyVLA-H:n suoritus | Aseta tennispallo | Käännä muki | Pinoa kuutioita | Sulje laatikko | Avaa laatikko |
|---|---|---|---|---|---|
| Diffuusio (droid_diffusion) | 90.0 | 98.3 | 98.3 | 96.7 | 86.7 |
| Toimintojen paloittelun muuntaja | 13.3 | 8.3 | 8.3 | 13.3 | 23.3 |
| Monikerroksinen perseptroni | 0 | 0 | 0 | 0 | 0 |
Luvut 292 / 140 / 14 ms ovat taulukosta IV, kaikki yhdellä A6000:lla. Ne ovat toimintokohtaisia ennusteita ja jättävät pois kameran kaappauksen, esikäsittelyn ja sarjallisen kirjoituksen servoille. Käsittele julkaistua viivettä alarajana, ei koskaan ohjausnopeudena. Omilla luvuillamme on sama rajoitus: katso päätelmän viive.
TinyVLA:n tulokset
| Vertailuarvo | Protokolla | TinyVLA-H | Vertailukohdat |
|---|---|---|---|
| MetaWorld, 50 tehtävää, simulaatio | Monitehtävä, 50 demoa, 3 siementä | 77.6 / 21.5 / 11.4 / 15.8 vaikeuden mukaan, keskiarvo 31.6 | Diffusion Policy keskiarvo 10.5 |
| Todellinen Franka Panda, 5 tehtävää | 100 trajektoria per tehtävä, 20 koetta | 94.0 keskiarvo | OpenVLA 68.3, Diffusion Policy 35.3 |
| Kaksikätinen UR5, 3 tehtävää | Monitehtävä, 10 koetta per tehtävä | 76.7 / 36.7 / 30.0 | OpenVLA 0 / 0 / 0, Diffusion Policy 40.3 / 31.3 / 43.0 |
Bimanuaalirivillä on tylsä selitys, jonka artikkeli antaa itse: OpenVLA on esikoulutettu Open X-Embodiment -datalla, joka koostuu kokonaan yksikätisestä datasta, joten kaksihaarainen toimintatila on jakautuman ulkopuolella ja sen pistemäärä on nolla. Diffuusiopolitiikan peruslinja voittaa TinyVLA-H:n kahdessa näistä kolmesta tehtävästä. Taustatietoa Open X-Embodiment -kirjoituksessa.

TinyVLA-repo, elokuussa 2026
Artikkeli on hyvä. Koodi on tutkimusjulkaisu. Repositorio on github.com/liyaxuanliyaxuan/TinyVLA; sen README-tiedosto ajoittaa koodin julkaisun 17. helmikuuta 2025 ja viimeisen commitin 11. maaliskuuta 2025. Sopii artikkelin toistamiseen, mutta ongelma, jos haluaisit ylläpidetyn kirjaston.
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 kiinnittää torch==2.0.1, transformers==4.37.1, deepspeed==0.9.5, peft==0.4.0, diffusers==0.11.1, numpy==1.24.4 ja CUDA-pinon 11.x-pyörille: nvidia-cuda-runtime-cu11==11.7.99, nvidia-cudnn-cu11==8.5.0.96, triton==2.0.0. README pyytää Python 3.10:tä; lerobot 0.6.1 vaatii 3.12:n tai uudemman, joten nämä kaksi eivät voi jakaa samaa ympäristöä. Varmista ensin, että torch 2.0.1 -koontiversio on olemassa GPU-sukupolvellesi. Jos ajo kaatuu VRAMin puutteeseen, muistin loppumisen tarkistuslista on nopeampi kuin arvaaminen.
TinyVLA ei myöskään lue LeRobot-aineistoja. Sen formaatti on ACT-tyylinen HDF5: action, language_raw ja havaintoryhmä, jossa on moninäkymäkuvia, joint_positions, qpos ja qvel. Arkisto sisältää data_utils/rlds_to_h5py.py:n RLDS-syötteelle, ja jokainen tehtävä rekisteröidään käsin aloha_scripts/constants.py-tiedostoon sen dataset_dir, episode_len ja camera_names -tietojen kanssa. Jos sinun episodisi tulivat lerobotista tai työpöytäasiakasohjelmasta, omistat muunnoksen.
# 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 oletetaan kahdeksan kortin solmu. Aseta se arvoon 1 ja pudota eräkoko reilusti alle 32:n. Yksittäisen GPU:n varianttia ei toimiteta ylävirtaan, joten komentoa ei voi suorittaa sellaisenaan 4090:llä.
- --deepspeed scripts/zero2.json osoittaa tiedostoon, joka ei ole ylimmän tason scripts-hakemistossa. DeepSpeed-konfiguraatiot toimitetaan osoitteessa llava-pythia/scripts/zero2.json. Korjaa polku ennen ensimmäistä ajoa.
- README edellyttää, että tuloshakemiston nimi sisältää llava_pythia:n sekä lora:n, jos LoRA on käytössä.
- Runkoverkko on erillinen lataus: lesjie/Llava-Pythia-400M, -700M or -1.3B. Ei ole olemassa yhtä peruscheckpointia, johon osoitat käytännön sillä tavalla kuin osoitat lerobot/smolvla_base:een.
SmolVLA: alle 1 miljardin parametrin malli, jonka voit ajaa tänä iltapäivänä
SmolVLA esittää saman argumentin ylläpidetyssä kirjastossa. Se on 450 miljoonan parametrin malli SmolVLM2-500M-Video-Instruct-runkoverkon päällä, ja tehokkuus johtuu asetuksista, jotka voit lukea tiedostosta configuration_smolvla.py, eikä väitteestä olla pieni.
| Setting in configuration_smolvla.py | Oletus | Mitä se tarjoaa |
|---|---|---|
| num_vlm_layers | 16 | Vain ensimmäiset 16 kielimallikerrosta ajetaan |
| expert_width_multiplier | 0.75 | Toimintaekspertin piilokerroksen koko on 75 prosenttia VLM:n koosta |
| self_attn_every_n_layers | 2 | Itsehuomio vuorotellen ristihuomion kanssa |
| chunk_size / n_action_steps | 50 / 50 | Yksi läpivienti tuottaa 50 toimintoa ja kaikki 50 suoritetaan |
| num_steps | 10 | Virtaussovituksen kohinanpoisto kiinnitetty 10 askeleeseen |
| tokenizer_max_length | 48 | Ohje katkaistaan 48 tokeniin |
| freeze_vision_encoder / train_expert_only | True / True | Hienosäätö siirtää ekspertin, ei näkötornia |
| optimizer_lr, warmup, decay | 1e-4, 1000 steps, to 2.5e-6 over 30000 | Ei paperin resepti: sen esikoulutus käytti 100 askeleen lämmitystä yli 200000 askeleen |
Esikoulutus käytti 481 yhteisön LeRobot-aineistoa, 22,9 K jaksoa ja 10,6 M kehystä 4 GPU:lla, 200000 askelta globaalilla eräkoolla 256; julkaisu arvioi koko projektin noin 30 K GPU-tunnin laajuiseksi. Yksi huomioitava luku: Hugging Face -julkaisublogi mainitsee 487 kuratoitua aineistoa, kun julkaisun taulukossa sanotaan 481. Käytämme julkaisun lukua ja merkitsemme erimielisyyden.
| Vertailukohta | SmolVLA 0.45 B | SmolVLA 2.25 B | Pi0 | ACT |
|---|---|---|---|---|
| LIBERO keskiarvo, monitehtävä | 87.3 | 88.75 | 86.0 (3.3 B, robotics-pretrained) | - |
| Meta-World keskiarvo, monitehtävä | 57.3 | 68.24 | 47.9 (3.5 B, robotics-pretrained) | - |
| Todellinen SO-100, 3 tehtävää, monitehtäväkoulutus | 78.3 | - | 61.7 (3.5 B) | - |
| Todellinen SO-100, 3 tehtävää, yksittäistehtävä, ei robotiikan esikoulutusta | 40.0 | - | - | 48.3 |
| SO-101 lego poimi-aseta, yksittäistehtävä, jakauman sisällä | 90 | - | - | 70 |
| SO-101 lego poimi-aseta, yksittäistehtävä, jakauman ulkopuolella | 50 | - | - | 40 |
LIBERO on simulaatio, ja kaikki pätevät tulokset ovat siellä nyt kahdeksankymmenen luokkaa. Todellinen SO-100-rivi, jossa 450 M malli voittaa 3.5 B mallin 16.6 pisteellä, on mielenkiintoinen; sen alla oleva rivi on vastapaino. Jos yhteisön esikoulutus ja monitehtäväkoulutus poistetaan, sama malli putoaa 40.0:aan, ACT:n alapuolelle. Puolustettavissa oleva väite on, että pieni malli ei ole automaattisesti huonompi, ei se, että se olisi parempi.
Yksi sattuma auttaa: SmolVLA-paperin Meta-World-taulukko sisältää TinyVLA:n omat julkaistut luvut vertailukohtana, joten kerrankin molemmat mallit ovat samassa taulukossa, SmolVLA-0.45B 57.3 vastaan TinyVLA-H 31.6. Se raportoi myös SmolVLA:n koulutuksen olevan noin 40 prosenttia nopeampaa kuin Pi0:n 6x vähemmällä muistilla. Kaikki tämä on peräisin SmolVLA:n tekijöiltä; areenamerkintä linkittää jokaisen arvon sen lähteeseen.
Mihin SmolVLA käyttää aikansa
AY-Robots listaa SmolVLA:n 245 ms per toimintavaihe ja ACT 20 ms käytäntöluettelossa. TinyVLA raportoi 14 ms per toimintaennustus. Nämä luvut eivät ole vertailukelpoisia, ja niiden käsitteleminen sellaisina on yleisin virhe tässä aiheessa: jotkut mittaavat yhden eteenpäinsyötön ajan, jotkut jakavat sen syötön osaan, kun toimintojen paloittelu amortisoi sen.
- SmolVLA lähettää 50 toimintoa per eteenpäinsyöttö ja suorittaa kaikki 50. Paperin käyttämällä 30 fps:llä oikeissa roboteissa yksi päättely kattaa noin 1.7 sekuntia liikettä.
- Asynkroninen päättely laskee seuraavan palan samalla kun nykyinen vielä suoritetaan: 9.7 s keskimääräinen tehtävän suoritus synkronisen 13.75 s sijaan, noin 30 prosenttia nopeammin, ja 19 poiminta- ja sijoittelusykliä kiinteässä 60 sekunnin ikkunassa 9:ää vastaan.
- Onnistumisprosentit olivat vertailukelpoisia parempien sijaan, 78.3 synkroninen vastaan 73.3 asynkroninen. Asynkronisuus ostaa läpimenokykyä, ei tarkkuutta.
- Paloittelu piilottaa laskentaviiveen, ei verkon viivettä, ja se tekee käytännöstä vähemmän reaktiivisen, koska se on sitoutunut 50 toimintoon.
AY-Robots voi automaattisesti varata pilvi-GPU-podin, joka palvelee käytäntöäsi samalla kun paikallinen robottiasiakas keskustelee kyseisen päätepisteen kanssa, ja podissa on joutokäynnin valvonta, joten se tuhoaa itsensä sen sijaan, että laskuttaisi hiljaa. Se ei kuitenkaan poista julkisen internetin edestakaista matkaa. Ohjaussilmukka näiden viiden käytännön välillä on 20–485 ms per toimintavaihe ennen mitään verkkoa, joten etäpäätelmä on käyttökelpoinen hitaaseen poiminta- ja sijoitustehtäviin, ei nopeaan reaktiiviseen liikkeeseen.

SmolVLA:n hienosäätö yhdellä kuluttajakortilla
Manuaalinen polku, lerobot 0.6.1:ssä, nykyinen PyPI-julkaisu 23. elokuuta 2026. Kaikki alla oleva on peräisin Hugging Face lerobot SmolVLA -dokumentaatiosta, haettu samana päivänä; opastettu versio on lempeämpi.
- 1Asenna lerobot smolvla-lisäosan kanssa
SmolVLA:n riippuvuudet ovat valinnainen lisäosa, eivät osa perusasennusta. Asentaminen ilman niitä ja sitten ihmettely, miksi käytännön tyyppi on tuntematon, on yleinen puolen tunnin ajanhukka.
bashgit clone https://github.com/huggingface/lerobot.git cd lerobot pip install -e ".[smolvla]" - 2Hanki aineisto riittävillä jaksoilla
Dokumentaatio suosittelee noin 50 jaksoa ja toteaa, että sama tehtävä 25 jaksolla ei ollut riittävä. AY-Robots asettaa minimin 30:een. Tallenna omasi tai aloita aineistohakemistosta.
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 - 3Aloita hienosäätö
Komento lerobot-oppaasta, muokkaamattomana. Dokumentaation mukaan 20000 askelta kestää noin 4 tuntia yhdellä A100:lla. 24 GB:n kortilla odota pidempää kestoa ja mittaa se.
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 - 4Pienennä eräkokoa, kunnes se sopii
batch_size=64 on dokumentoitu esimerkki, ei lupaus korttisi suorituskyvystä. Dokumentaatio neuvoo aloittamaan pienestä ja kasvattamaan arvoa niin kauan kuin latausajat pysyvät lyhyinä.
bashlerobot-train --help - 5Ota tarkistuspiste käyttöön varressa
Sama kirjasto, yksi komento. Reaaliaikaiset palastelun liput on kommentoitu pois dokumentaatiosta ja niitä kannattaa käyttää vähätehoisella laitteistolla.
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
Minkä tahansa polun valitsetkin, päädyt tarkistuspisteeseen sekä sen tuottaneeseen konfiguraatioon. Säilytä aineiston versio, askelmäärä ja siemenluku sen rinnalla. lerobot käyttää oletuksena siemenlukua 1000; GR00T:n hienosäädön aloituspiste ei paljasta siemenlukua lainkaan, joten nämä ajot eivät ole bitti-tarkasti toistettavissa. Mekaniikka koulutusdokumentaatiossa.
Kaksi tapaa saada pieni VLA varteen
Omistat koneen ja vikatilat. SmolVLA:n osalta tämä on kohtuullista: yksi pip-lisäosa, yksi koulutuskomento, yksi käyttöönotto-komento. TinyVLA:n osalta se on tutkimuksen toistaminen jäädytetyillä pinneillä, rikkinäisellä DeepSpeed-polulla ja itse kirjoittamallasi tiedonmuunnoksella.
- Hanki 24 GB:n kortti, tallenna 30–50 jaksoa, tarkista kameravirrat ruutu ruudulta.
- pip install -e ".[smolvla]", lerobot-train lerobot/smolvla_basea vastaan, sitten tarjoile tarkistuspiste koneella, johon varsi on kytketty.
- TinyVLA:lle: erillinen conda-ympäristö, muunna data HDF5:ksi, rekisteröi tehtävä constants.py-tiedostoon, korjaa zero2.json-polku, leikkaa train.sh kahdeksasta GPU:sta yhteen.
- Ei tuntiperusteista laskutusta, kun kortti on maksettu.
- Päättely tapahtuu servojen vieressä, ainoa tapa saada nopea ohjaussilmukka.
- Voit korjata käytännön koodia, ja TinyVLA on saatavilla vain tällä tavalla.
- 4090 sulkee pois kaikki ~3 B käytännöt, joten paikallista vertailua GR00T N1.7:ää tai Pi0.5:tä vastaan ei voi tehdä.
- Ympäristön asennus on todellinen työ. Pelkästään TinyVLA:n pinnit voivat viedä päivän.
- Ei jonoa, ei uudelleenyritystä, ei tarkistuspisteen tallennusta. Uudelleenkäynnistys askeleella 14000 tarkoittaa aloittamista alusta.
SmolVLA on yksi viidestä käytännöstä täällä. Valitset mallin ja aineiston lomakkeella, taustaohjelma vuokraa GPU:n tarvittavan VRAM:n mukaan, ajaa kouluttajan ja kirjoittaa tarkistuspisteet objektitallennustilaan. Vaihe vaiheelta: SmolVLA SO-100:lla, tai koko matriisi koulutussivulla.
| Mitä alusta lähettää SmolVLA:lle | Arvo |
|---|---|
| batch size | 2 |
| learning rate | 1e-4 |
| max steps | 20000 |
| gradient accumulation | 8, and it does not reach the trainer |
| extra knobs in the form | seed, logFreq |
| GPU tier | RTX 4090 or any 24 GB card |
| dataset format | LeRobot v3.0 |
| minimum episodes | 30 |
Ensinnäkin, oletuseräkoko täällä on 2, ei 64 kuten lerobot-dokumentaation esimerkissä, ja gradientin akkumulaatioasetus lähetetään, mutta sillä ei ole vaikutusta SmolVLA:han, joten tehollinen eräkoko on todellakin 2. Nosta sitä harkitusti sen sijaan, että olettaisit oletusarvon vastaavan ylävirtaa. Toiseksi, TinyVLA:ta ei voi kouluttaa täällä lainkaan.
Ajo 24 GB:n tasolla kestää 2–5 tuntia hintaan 0.30–0.60 USD tunnissa, eli noin 1–3 USD. A100-tasolla ~3 B käytäntö kestää 3–6 tuntia hintaan 1.20–2.00 USD tunnissa, eli noin 4–12 USD. Katso hinnoittelu, ja samat toiminnot komentoriviltä ja MCP-palvelimelta.
Kun pieni malli on väärä valinta
Molemmat artikkelit ovat tässä varovaisempia kuin tiivistelmät. TinyVLA:n vika-analyysi on tarkka: 0,4 B variantti epäonnistui kolme kertaa tulkitsemalla ohjeen väärin, minkä kirjoittajat selittävät pienemmän VLM:n rajallisella kielen ymmärtämisellä, ja tämä tila katosi 1,3 B:ssä. SmolVLA näyttää saman käyrän toisesta päästä: identtisen arkkitehtuurin 2,25 B versio saa 88,75 pistettä LIBEROssa ja 68,24 Meta-Worldissa verrattuna 0,45 B mallin 87,3 ja 57,3 pisteeseen.
- Mahtuu 24 GB kortille, mikä pudottaa kokeen kustannukset kymmenistä dollareista pariin.
- Riittävän nopea ajettavaksi varren vieressä, joten ohjaussilmukassa ei ole verkkohyppyä.
- Hienosäätyy tiedoilla, jotka yksi henkilö voi tallentaa, kymmeniä jaksoja tuhansien sijaan.
- SmolVLA:n painot, datalista ja koodi ovat julkisia, joten huono tulos on debugattavissa.
- Heikompi ohjeiden noudattaminen: vähemmän kieliparametreja, heikompi kyky erottaa samankaltaisia viittauslausekkeita.
- Vähemmän spatiaalista ja visuaalista yleistämistä asetelmiin, joita et tallentanut.
- Herkempi aineiston virheille, vähemmän esikoulutusta, johon tukeutua.
- Monitehtävä- ja pitkän aikavälin työ suosii edelleen suurempia malleja, mukaan lukien SmolVLA:n oma 2,25 B variantti.
Vertailu, joka kannattaa tehdä, ei ole TinyVLA vastaan SmolVLA. Se on SmolVLA vastaan ACT omassa tehtävässäsi, ja SmolVLA-artikkeli on perustelu sille, miksi. Yksittäistehtävänä ilman robotiikan esikoulutusta koulutettu SmolVLA sai keskimäärin 40,0 pistettä kolmessa SO-100-tehtävässä, joissa yksittäistehtävä-ACT sai 48,3. Se, mikä nostaa sen 78,3:een, on yhteisön esikoulutus ja monitehtäväkoulutus, ei pelkkä arkkitehtuuri. SO-101 lego -tehtävässä, molemmat yksittäistehtävinä, SmolVLA voittaa: 90 vastaan 70 jakaumassa. Sitten SmolVLA vastaan Pi0.5 jos budjetti sallii.
Esikoulutusta on vähemmän kattamaan huonoa dataa, joten puhdas häviökäyrä viallisella aineistolla antaa sinulle toimintamallin, joka toistaa vian luotettavasti. lerobot-dokumentaatio on suorapuheinen rakenteesta: 50 jaksoa viidessä kuution asennossa, 10 per asento, toimi; 25 ei toiminut. Jos häviö näyttää hyvältä ja käsivarsi ei tee mitään hyödyllistä, aloita kohdasta häviö laskee, toimintamalli ei tee mitään, toimintamalli toimii vain yhdessä asetelmassa tai käyttökelpoisen VLA-harjoitusdatan kerääminen robottimanipulaatioon.
Viisi toimintamallia, yksi vertailutaulukko
GR00T N1.7, GR00T N1.5, Pi0.5, SmolVLA ja ACT todellisilla parametrimäärillä, päättelyviive toimintavaihetta kohti, kunkin tarvitsema GPU-taso ja vähimmäisjaksojen määrä ennen kuin se tekee mitään hyödyllistä.
Vertaa toimintamallejaPäätöstaulukko, jonka pohjalta voit toimia
| Tilanteesi | Aloita tästä | Miksi |
|---|---|---|
| Yksi tehtävä, hyvät demonstraatiot, ei kieltä | ACT | ~80 M, 20 ms, 24 GB kortti, ei perusmallia ladattavaksi |
| Muutama toisiinsa liittyvä tehtävä, yksi ohje kutakin varten | SmolVLA | 450 M, in lerobot, 30 episode minimum, 1 to 3 USD per run |
| TinyVLA-tuloksen toistaminen erityisesti | TinyVLA-B or TinyVLA-H | The repo is the only route: isolated env, converted data |
| Monitehtävä, vaihtelevat ohjeet, A100-budjetti | GR00T N1.7 tai Pi0.5 | ~3 B, 152 ms and 485 ms per step, 4 to 12 USD per run |
| Ei robottia vielä | Ohjaa oikeaa kättä | Jonopohjainen live-käsivarsi ei vaadi rekisteröitymistä eikä laitteistoa |
Viimeisen rivin osalta, reaaliaikainen robottikäsi striimaa fyysisen SO-100:n, jota voit ohjata selaimesta ilman tiliä, ja kolme tapaa aloittaa kattaa loput. SO-100 on tässä referenssikäsi, osien hinta noin 110–150 EUR, ja siihen kuuluu täydellinen asennusopas.
Mitä tulee alle 1 B -mallien jälkeen
Parametrimäärän pienentäminen on yksi tapa tehdä VLA:sta edullinen, eikä se ole ilmeisesti voittava tapa. OpenVLA-OFT (arXiv 2502.19645) säilyttää 7 B -runkoverkon ja muuttaa vain sitä, miten toiminnot dekoodataan, raportoiden 26-kertaisen kasvun toimintojen generoinnin suorituskyvyssä ja LIBERO:n nousun 76,5:stä 97,1 prosenttiin. BitVLA (arXiv 2506.07530) tekee jokaisesta 1-bittisen BitNet b1.58 2B4T -runkoverkon painosta ternaarisen, raportoiden 11,0-kertaisesti vähemmän muistia ja 4,4-kertaisesti pienemmän päästä päähän -viiveen samalla kun se vastaa täsmällisyyden OpenVLA-OFT:ää. X-VLA-0.9B (arXiv 2510.10274) sijoittuu 1 B -linjalle virtaussovituksen kanssa.
Yhteinen nimittäjä: toimintojen dekooderi, ei kielimalli, on se, missä viive piilee. Kysy, miten toimintaperiaate lähettää toimintoja, ennen kuin kysyt, kuinka monta parametria sillä on. Areena sisältää 85 mallia ja 332 tulosta, joista jokainen on linkitetty lähteeseensä; laajempi yleiskatsaus löytyy VLA-esittelyssämme.
Voinko hienosäätää SmolVLA:ta RTX 4090:llä?▾
Kyllä. SmolVLA on 450 M parametria, ja AY-Robots ajaa sitä RTX 4090 / 24 GB -tasolla. lerobot-esimerkki käyttää --batch_size=64, mikä on esimerkki eikä takuu kortillesi; dokumentaatio neuvoo aloittamaan pienestä ja kasvattamaan, kunhan latausajat pysyvät lyhyinä. Odota pidempää kuin dokumentaation mainitsemat noin 4 tuntia 20000 askeleelle A100:lla.
Onko TinyVLA saatavilla lerobotissa vai AY-Robotsissa?▾
Ei kumpaankaan. TinyVLA on vain sen tutkimusrepositoriossa, viimeisin commit 11 March 2025, ja sen formaatti on ACT-tyylinen HDF5 eikä LeRobot. AY-Robots kouluttaa GR00T N1.7:ää, GR00T N1.5:tä, Pi0.5:tä, SmolVLA:ta ja ACT:tä. Jos haluat TinyVLA:n, rakennat sen itse, ja sinun on ensin korjattava DeepSpeed-konfiguraatiopolku tiedostossa scripts/train.sh.
Onko 450 M malli todella kilpailukykyinen 3 B mallin kanssa?▾
Tekijöiden omien vertailuarvojen mukaan kyllä: 87.3 vastaan 86.0 LIBEROssa verrattuna robotiikkaan esikoulutettuun Pi0:aan 3.3 B:ssä, ja 78.3 vastaan 61.7 kolmessa todellisessa SO-100-tehtävässä, joissa sama paperi nimeää Pi0:n 3.5 B:ksi. Rajoitus on samassa paperissa: yksittäinen tehtävä ilman robotiikan esikoulutusta, SmolVLA putoaa 40.0:aan, alle ACT:n 48.3:n.
Kuinka monta jaksoa tarvitsen, ennen kuin pieni VLA tekee mitään?▾
AY-Robots asettaa SmolVLA:n minimiksi 30 jaksoa ja ACT:n minimiksi 50. lerobot-dokumentaatio suosittelee noin 50:tä ja raportoi, että 25 ei riittänyt samaan tehtävään. Rakenne on yhtä tärkeä kuin määrä: paperin käyttämässä joukossa oli 5 kuution sijaintia, joissa kussakin oli 10 jaksoa.
Miksi julkaistut viivearvot eroavat niin paljon?▾
Ne mittaavat eri asioita. TinyVLA raportoi 14 ms per toiminnon ennustus A6000:lla; AY-Robots listaa SmolVLA:n 245 ms:iin ja ACT:n 20 ms:iin per toimintoaskel. Jotkut luvut kattavat yhden eteenpäinsyötön, jotkut jakavat syötön 50 toiminnon osaan, ja lähes yksikään ei sisällä kameran kaappausta tai kirjoitusta servoihin.
Ratkaiseeko pilvipäättely GPU-ongelman?▾
Osittain. AY-Robots varaa automaattisesti podin, joka palvelee toimintaperiaatetta, kun paikallinen asiakas keskustelee kyseisen päätepisteen kanssa, ja siinä on joutokäynnin valvonta, joten se tuhoaa itsensä sen sijaan, että laskuttaisi hiljaa. Se ei voi poistaa julkisen internetin edestakaista matkaa, ja ohjaussilmukka on jo 20–485 ms per toimintoaskel. Sopii hitaaseen poiminta- ja sijoitustehtävään, ei nopeaan reaktiiviseen liikkeeseen.
Sources
- TinyVLA: Kohti nopeita, datatehokkaita näkö-, kieli- ja toimintamalleja robottimanipulaatioon
- TinyVLA:n virallinen koodirepositorio (README, requirements.txt, scripts/train.sh)
- TinyVLA-projektisivu
- lesjie/Llava-Pythia-1.3B, TinyVLA-H:n taustamallin painot
- SmolVLA: Näkö-, kieli- ja toimintamalli edulliseen ja tehokkaaseen robotiikkaan
- lerobot-dokumentaatio: SmolVLA:n hienosäätö
- lerobot: configuration_smolvla.py, SmolVLA:n oletusarvot
- lerobot/smolvla_base-mallikortti
- SmolVLA: Tehokas näkö-, kieli- ja toimintamalli (Hugging Face -blogi)
- lerobot PyPI:ssä (0.6.1, vaatii Python 3.12:n tai uudemman)
- OpenVLA: Avoin lähdekoodi näkö-, kieli- ja toimintamalli
- Näkö-, kieli- ja toimintamallien hienosäätö: Nopeuden ja menestyksen optimointi (OpenVLA-OFT)
- BitVLA: 1-bittiset näkö-, kieli- ja toimintamallit robottimanipulaatioon
- X-VLA: Pehmeästi kehotettu Transformer skaalautuvana eri ruumiillistumien näkö-, kieli- ja toimintamallina
- rail-berkeley/octo-small-1.5-mallikortti (27 M parametria)
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