De AY-Robots beleidsvergelijkingstabel met parameter tellingen, GPU-niveaus en inferentielatentie voor GR00T N1.7, GR00T N1.5, Pi0.5, SmolVLA en ACT
SmolVLATinyVLAKleine VLAConsumenten GPULeRobot

Kleine VLA Modellen: TinyVLA, SmolVLA en het Sub-1B Geval

AY-Robots ResearchAugust 23, 202619 min leestijd

TinyVLA en SmolVLA plaatsen een werkende VLA onder 1 miljard parameters. Echte cijfers uit beide papers, de lerobot standaardinstellingen, gemeten latentie, en wat een run kost op een 24 GB kaart.

Bijna elk visie-taal-actie model waarover geschreven wordt, gaat uit van een datacentrumkaart. OpenVLA is 7 B parameters. GR00T N1.7 en Pi0.5 zijn ongeveer 3 B en vereisen een A100 80 GB om te fine-tunen. Als de kaart op je bureau een 4090 is, dan is die klasse van modellen buiten bereik.

Twee papers beweren dat je het niet nodig hebt. TinyVLA (arXiv 2409.12514, geaccepteerd door IEEE Robotics and Automation Letters in februari 2025) bouwt een VLA op uit een 400 M tot 1.3 B backbone plus een diffusie-actiehoofd. SmolVLA (arXiv 2506.01844, ingediend op 2 juni 2025) levert 450 M parameters met open gewichten, open data en een script dat draait op één consumentenkaart. Hier is wat beide maten, en waar het argument voor modellen onder 1 B niet langer opgaat.

Wat je moet weten

  • TinyVLA wordt geleverd in drie formaten: 422 M totaal met 101 M trainbaar, 740 M met 138 M, 1.3 B met 143 M. Alleen de eerste twee vallen onder 1 B.
  • De tabel IV meet 14 ms per actievoorspelling voor TinyVLA-1B op één A6000, tegenover 292 ms voor OpenVLA-7B en 140 ms voor een verkleinde OpenVLA-1B.
  • Het hoofd behoudt die snelheid, niet de backbone: verwissel TinyVLA-H's diffusiehoofd voor een ACT-hoofd en de vijf echte-robot taken dalen van een gemiddelde van 94.0 naar enkele cijfers. Een MLP-hoofd scoort overal 0.
  • SmolVLA is 450 M, waarvan ongeveer 100 M de actie-expert is, voorgetraind op 481 community LeRobot datasets en 10.6 M frames. Het rapporteert 87.3 op LIBERO tegenover 86.0 voor een robotica-voorgetrainde Pi0 van 3.3 B, en 78.3 op drie echte SO-100 taken tegenover 61.7 voor Pi0 van 3.5 B.
  • Eén-taak getraind zonder die voorbereiding, daalt SmolVLA naar 40.0 op die taken, onder ACT's 48.3. Klein is niet automatisch gemakkelijk.
  • TinyVLA heeft geen LeRobot-integratie en vereist een CUDA 11.7 wheel stack. SmolVLA zit in lerobot en kost ongeveer 1 tot 3 USD per run op de 24 GB tier hier.

Wat daadwerkelijk telt als een kleine VLA

Het aantal parameters op een modelkaart is niet één getal. Het kan het totale aantal gewichten, gewichten geladen tijdens inferentie, of gewichten die gradiënten ontvangen tijdens fine-tuning. TinyVLA rapporteert beide, en het verschil is groot: TinyVLA-H is 1.3 B totaal maar 143 M trainbaar, omdat de vision tower en het grootste deel van het taalmodel bevroren blijven terwijl LoRA-adapters en de action head bewegen. Het artikel schat het trainbare aandeel op ongeveer 5 procent.

ModelParametersBackboneActiehoofdBron
TinyVLA-S422 M totaal, 101 M trainbaarLlava-Pythia ~400 MDiffusie (droid_diffusion U-Net)arXiv 2409.12514
TinyVLA-B740 M totaal, 138 M trainbaarLlava-Pythia ~700 MDiffusiearXiv 2409.12514
TinyVLA-H1.3 B totaal, 143 M trainbaarLlava-Pythia ~1.3 BDiffusiearXiv 2409.12514
SmolVLA450 M, ~100 M actie-expertSmolVLM2-500M-Video-InstructFlow matching expertarXiv 2506.01844
Octo-Small27 MViT-S schaal, T5-Base tekst-encoderDiffusieocto-small-1.5 card
ACT~80 MResNet, geen taalmodelDirecte chunk-regressieAY-Robots catalog
OpenVLA7 BLlama 2 7 B, DINOv2 en SigLIP encodersAutoregressieve actietokensarXiv 2406.09246

Twee rijen zijn het bespreken waard. ACT met ongeveer 80 M is kleiner dan al het andere hier, maar heeft geen taalmodel, dus het is geen VLA: het leert één taak en kan niet worden verteld om een andere te doen. Octo-Small met 27 M wordt geconditioneerd via een T5-Base tekst-encoder, niet een LLM-backbone. Goede baselines, maar geen van beide biedt de instructievolging die het label impliceert.

De 1 B-lijn is arbitrair

TinyVLA-H, de variant met de belangrijkste resultaten, is 1.3 B en zit boven de lijn. De betere vraag is of een model in 24 GB past tijdens training en uw control rate haalt tijdens inferentie. De vijf beleidsregels die u hier kunt trainen, staan op de beleidspagina; TinyVLA heeft een arena-vermelding als u de cijfers naast die van anderen wilt zien.

TinyVLA: de snelheid komt van de head, niet van de backbone

De voor de hand liggende interpretatie is dat ze het taalmodel kleiner hebben gemaakt, waardoor het sneller werd. De ablatie in het artikel zegt iets anders. Het vervangen van OpenVLA's 7 B backbone door een van ongeveer 1 B verminderde de voorspelling per actie van 292 ms naar 140 ms, een winst van 2x. TinyVLA-H, met een vergelijkbaar aantal parameters, draait op 14 ms op dezelfde kaart. De andere 10x komt van de action head.

ModelVoorspelling per actieGemeten op
OpenVLA-7B292 mssingle A6000
OpenVLA-1B, backbone swapped for TinyVLA's140 mssingle A6000
TinyVLA-1B (TinyVLA-H)14 mssingle A6000

OpenVLA zendt acties uit als gediscretiseerde tokens via de taalmodel head, één per actiedimensie, autoregressief. TinyVLA voegt een diffusiedecoder toe die het hele stuk in één keer produceert. Tabel V toont de architectuur van TinyVLA-H en wisselt alleen de head, op dezelfde vijf echte-robot taken. Het is het duidelijkste bewijs in beide artikelen voor het argument dat flow matching beleidsregels maken, en de reden waarom Pi0 afstapte van token-decodering.

Prestaties op TinyVLA-HTennis plaatsenMok omdraaienKubussen stapelenLade sluitenDoos openen
Diffusie (droid_diffusion)90.098.398.396.786.7
Action Chunking Transformer13.38.38.313.323.3
Meerlagige perceptron00000
Wat de TinyVLA-cijfers omvatten

De cijfers van 292 / 140 / 14 ms komen uit Tabel IV, allemaal op één A6000. Ze zijn per actievoorspelling en exclusief cameracaptatie, voorverwerking en de seriële schrijfbewerking naar de servo's. Beschouw gepubliceerde latentie als een ondergrens, nooit als de controlerate. Onze eigen cijfers hebben dezelfde beperking: zie inferentielatentie.

Wat TinyVLA scoorde

BenchmarkProtocolTinyVLA-HBaselines
MetaWorld, 50 taken, simMulti-taak, 50 demo's, 3 seeds77.6 / 21.5 / 11.4 / 15.8 per moeilijkheidsgraad, gemiddeld 31.6Diffusion Policy gemiddeld 10.5
Echte Franka Panda, 5 taken100 trajecten per taak, 20 proeven94.0 gemiddeldOpenVLA 68.3, Diffusion Policy 35.3
Bimanuele UR5, 3 takenMulti-taak, 10 proeven per taak76.7 / 36.7 / 30.0OpenVLA 0 / 0 / 0, Diffusion Policy 40.3 / 31.3 / 43.0

De bimanuële rij heeft een saaie verklaring die de paper zelf geeft: OpenVLA is voorgegetraind op Open X-Embodiment, dat volledig bestaat uit data van één arm, dus een actieruimte met twee armen valt buiten de distributie en scoort nul. De diffusion policy baseline verslaat TinyVLA-H op twee van die drie taken. Achtergrond in de Open X-Embodiment uiteenzetting.

Het AY-Robots arena-klassement, een sorteerbare tabel van 85 VLA-modellen met 332 benchmarkresultaten, waarbij elke waarde is gekoppeld aan de paper of modelkaart waar het vandaan komt
Cross-model benchmarknummers zijn alleen vergelijkbaar als je kunt zien waar elk vandaan komt.

De TinyVLA repo, per augustus 2026

De paper is goed. De code is een onderzoeksrelease. De repository is github.com/liyaxuanliyaxuan/TinyVLA; de README dateert de coderelease op 17 februari 2025 en de laatste commit is van 11 maart 2025. Prima voor het reproduceren van een paper, een probleem als je een onderhouden bibliotheek wilde.

bash
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 .
De installatievolgorde uit de TinyVLA README, gecontroleerd tegen de repository op 2026-08-23.
De afhankelijkheidsvastleggingen zijn de valkuil die een dag opslokt

requirements.txt legt torch==2.0.1, transformers==4.37.1, deepspeed==0.9.5, peft==0.4.0, diffusers==0.11.1, numpy==1.24.4, en de CUDA-stack vast op de 11.x wheels: nvidia-cuda-runtime-cu11==11.7.99, nvidia-cudnn-cu11==8.5.0.96, triton==2.0.0. De README vraagt om Python 3.10; lerobot 0.6.1 vereist 3.12 of nieuwer, dus de twee kunnen geen omgeving delen. Controleer eerst of er een torch 2.0.1 build bestaat voor uw GPU-generatie. Als een run sterft door VRAM, is de checklist voor onvoldoende geheugen sneller dan gissen.

TinyVLA leest ook geen LeRobot datasets. Het formaat is ACT-stijl HDF5: action, language_raw, en een observatiegroep met multi-view beelden, joint_positions, qpos en qvel. De repository levert data_utils/rlds_to_h5py.py voor RLDS-input, en elke taak wordt handmatig geregistreerd in aloha_scripts/constants.py met zijn dataset_dir, episode_len en camera_names. Als uw afleveringen afkomstig zijn van lerobot of de desktopclient, bent u verantwoordelijk voor de conversie.

bash
# 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
Ingekorte versie van scripts/train.sh. Elke vlag en waarde hierboven bevindt zich in het meegeleverde bestand.
  • --num_gpus=8 gaat uit van een node met acht kaarten. Stel dit in op 1 en verlaag de batchgrootte tot ver onder de 32. Er wordt geen variant voor één GPU upstream geleverd, dus de opdracht kan niet letterlijk worden uitgevoerd op een 4090.
  • --deepspeed scripts/zero2.json verwijst naar een bestand dat zich niet in de hoofdmap scripts bevindt. De DeepSpeed-configuraties worden geleverd in llava-pythia/scripts/zero2.json. Corrigeer het pad vóór uw eerste uitvoering.
  • De README vereist dat de naam van de uitvoermap llava_pythia bevat, plus lora als LoRA is ingeschakeld.
  • De backbone is een aparte download: lesjie/Llava-Pythia-400M, -700M of -1.3B. Er is geen enkel basischeckpoint waar je een beleid op richt, zoals je dat doet bij lerobot/smolvla_base.

SmolVLA: het sub-1 B-model dat u vanmiddag kunt uitvoeren

SmolVLA maakt hetzelfde argument binnen een onderhouden bibliotheek. Het heeft 450 M parameters op een SmolVLM2-500M-Video-Instruct backbone, en de efficiëntie komt voort uit instellingen die u kunt aflezen uit configuration_smolvla.py in plaats van uit een bewering over klein zijn.

Instelling in configuration_smolvla.pyStandaardWat het oplevert
num_vlm_layers16Alleen de eerste 16 lagen van het taalmodel worden uitgevoerd
expert_width_multiplier0.75De verborgen grootte van de actie-expert is 75 procent van die van de VLM
self_attn_every_n_layers2Zelf-aandacht afgewisseld met kruis-aandacht
chunk_size / n_action_steps50 / 50Eén pass genereert 50 acties en alle 50 worden uitgevoerd
num_steps10Flow matching denoising vastgesteld op 10 stappen
tokenizer_max_length48De instructie wordt afgekapt tot 48 tokens
freeze_vision_encoder / train_expert_onlyTrue / TrueFine-tuning verplaatst de expert, niet de vision tower
optimizer_lr, warmup, decay1e-4, 1000 stappen, naar 2.5e-6 over 30000Niet het recept uit het artikel: de pretraining gebruikte een opwarming van 100 stappen over 200000 stappen

Voor de pretraining werden 481 community LeRobot datasets, 22.9 K afleveringen en 10.6 M frames gebruikt op 4 GPU's, 200000 stappen met een globale batchgrootte van 256; het artikel schat het hele project op ongeveer 30 K GPU-uren. Een getal om op te letten: de Hugging Face lanceerblog vermeldt 487 samengestelde datasets, terwijl de tabel in het artikel 481 vermeldt. We gebruiken het cijfer uit het artikel en signaleren de discrepantie.

De SmolVLA-modelpagina op AY-Robots met het aantal parameters, de 24 GB GPU-klasse, inferentielatentie per actiestap en het minimale aantal afleveringen
De SmolVLA-pagina van het platform: 450 M parameters, 245 ms per actiestap, RTX 4090-klasse, minimaal 30 afleveringen.
BenchmarkSmolVLA 0.45 BSmolVLA 2.25 BPi0ACT
LIBERO gemiddelde, multi-task87.388.7586.0 (3.3 B, robotics-pretrained)-
Meta-World gemiddelde, multi-task57.368.2447.9 (3.5 B, robotics-pretrained)-
Echte SO-100, 3 taken, multi-task training78.3-61.7 (3.5 B)-
Echte SO-100, 3 taken, single-task, geen robotica pretraining40.0--48.3
SO-101 lego pick-place, single-task, in distributie90--70
SO-101 lego pick-place, single-task, buiten distributie50--40
Lees de hele tabel, niet alleen de kopregel

LIBERO is simulatie en alles wat competent is, scoort daar nu in de tachtig. De rij van de echte SO-100, waar een 450 M model een 3.5 B model met 16.6 punten verslaat, is de interessante; de rij eronder is het tegenwicht. Haal de community pretraining en de multi-task training weg en hetzelfde model zakt naar 40.0, onder ACT. De verdedigbare bewering is dat een klein model niet automatisch slechter is, niet dat het beter is.

Eén toeval helpt: de Meta-World tabel van het SmolVLA-artikel bevat de eigen gepubliceerde cijfers van TinyVLA als basislijn, dus voor één keer staan beide modellen in één tabel, SmolVLA-0.45B op 57.3 tegen TinyVLA-H op 31.6. Het meldt ook dat SmolVLA ongeveer 40 procent sneller traint dan Pi0 op 6x minder geheugen. Dit alles komt van de SmolVLA-auteurs; de arena-vermelding linkt elke waarde aan de bron.

Waar SmolVLA zijn tijd aan besteedt

AY-Robots vermeldt SmolVLA op 245 ms per actiestap en ACT op 20 ms in de beleidscatalogus. TinyVLA rapporteert 14 ms per actievoorspelling. Deze cijfers zijn niet vergelijkbaar, en ze behandelen alsof ze dat wel zijn, is de meest voorkomende fout in dit onderwerp: sommigen meten één forward pass, sommigen verdelen die pass over een chunk zodra actie-chunking het amortiseert.

  • SmolVLA zendt 50 acties uit per forward pass en voert alle 50 uit. Bij de 30 fps die het artikel gebruikt op echte robots, dekt één inferentie ongeveer 1.7 seconden beweging.
  • Asynchrone inferentie berekent de volgende chunk terwijl de huidige nog wordt uitgevoerd: 9.7 s gemiddelde taakvoltooiing tegen 13.75 s synchroon, ruwweg 30 procent sneller, en 19 pick-and-place cycli in een vast venster van 60 seconden tegen 9.
  • Succespercentages waren vergelijkbaar in plaats van beter, 78.3 synchroon tegen 73.3 asynchroon. Async koopt doorvoer, geen nauwkeurigheid.
  • Chunking verbergt rekenlatentie, niet netwerklatentie, en het maakt het beleid minder reactief omdat het zich heeft vastgelegd op 50 acties.
Externe inferentie is niet gratis, en geen enkel platform lost de fysica op

AY-Robots kan automatisch een cloud GPU-pod inrichten die uw beleid bedient terwijl de lokale robotclient met dat eindpunt communiceert, en de pod bevat een inactieve watchdog zodat deze zichzelf vernietigt in plaats van stilzwijgend te factureren. Wat het niet doet, is de roundtrip via het openbare internet elimineren. De besturingslus over de vijf beleidsregels hier is 20 tot 485 ms per actiestap vóór enige netwerkverbinding, dus externe inferentie is haalbaar voor langzame pick-and-place, niet voor snelle reactieve beweging.

De AY-Robots beleidsvergelijkingstabel met GR00T N1.7, GR00T N1.5, Pi0.5, SmolVLA en ACT met parametertellingen, vereiste GPU-tier, inferentielatentie per actiestap en het minimale aantal benodigde episodes per stuk
SmolVLA met ~450 M en ACT met ~80 M zijn de twee die op een 24 GB kaart passen. De andere drie hebben een A100 of H100 80 GB nodig.

Finetunen van SmolVLA op één consumentenkaart

Het handmatige pad, op lerobot 0.6.1, de huidige PyPI-release per 23 augustus 2026. Alles hieronder komt uit de Hugging Face lerobot SmolVLA documentatie, op dezelfde dag opgehaald; de begeleide versie is vriendelijker.

  1. 1
    Installeer lerobot met de smolvla extra

    De SmolVLA-afhankelijkheden zijn een optionele extra, geen onderdeel van de basisinstallatie. Installeren zonder en je dan afvragen waarom het beleidstype onbekend is, is een veelvoorkomend half uur verspild.

    bash
    git clone https://github.com/huggingface/lerobot.git
    cd lerobot
    pip install -e ".[smolvla]"
  2. 2
    Verkrijg een dataset met voldoende afleveringen

    De documentatie beveelt ongeveer 50 afleveringen aan en stelt dat dezelfde taak met 25 niet voldoende was. AY-Robots stelt het minimum op 30. Neem je eigen op, of begin vanuit de datasetmap.

    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. 3
    Start de fine-tune

    Het commando uit de lerobot-handleiding, ongewijzigd. De documentatie schat 20000 stappen op ongeveer 4 uur op één A100. Op een 24 GB kaart, verwacht langer en meet het.

    bash
    cd 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
  4. 4
    Verlaag de batchgrootte totdat het past

    batch_size=64 is een gedocumenteerd voorbeeld, geen belofte over je kaart. De documentatie adviseert klein te beginnen en te verhogen zolang de laadtijden kort blijven.

    bash
    lerobot-train --help
  5. 5
    Rol het checkpoint uit op de arm

    Dezelfde bibliotheek, één commando. De real-time chunking flags zijn uitcommentarieerd in de documentatie en zijn degenen die je moet gebruiken op hardware met laag vermogen.

    bash
    lerobot-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
Het checkpoint is het opleverbaar

Welk pad je ook kiest, je eindigt met een checkpoint plus de configuratie die het heeft geproduceerd. Bewaar de datasetrevisie, het aantal stappen en de seed ernaast. lerobot gebruikt standaard seed 1000; GR00T's fine-tuning entry point toont helemaal geen seed, dus die runs zijn niet bit-voor-bit reproduceerbaar. Mechanica in de trainingsdocumentatie.

Twee manieren om een kleine VLA op een arm te krijgen

Jij bezit de machine en de storingsmodi. Voor SmolVLA is dat redelijk: één pip extra, één train-commando, één rollout-commando. Voor TinyVLA is het een onderzoeksreproductie met bevroren pins, een kapot DeepSpeed-pad en een dataconversie die je zelf schrijft.

  1. Verkrijg een 24 GB kaart, neem 30 tot 50 afleveringen op, verifieer de camerastreams frame voor frame.
  2. pip install -e ".[smolvla]", lerobot-train tegen lerobot/smolvla_base, en serveer dan het checkpoint op de machine waarop de arm is aangesloten.
  3. Voor TinyVLA: aparte conda env, converteer data naar HDF5, registreer de taak in constants.py, repareer het zero2.json pad, snijd train.sh van acht GPU's naar één.
Voordelen
  • Geen facturering per uur zodra de kaart is betaald.
  • Inference zit naast de servo's, de enige manier om een snelle controlelus te krijgen.
  • Je kunt de beleidscode patchen, en TinyVLA is alleen op deze manier beschikbaar.
Afwegingen
  • Een 4090 sluit elk ~3 B beleid uit, dus geen lokale vergelijking met GR00T N1.7 of Pi0.5.
  • Omgevingsconfiguratie is het echte werk. Alleen al de pins van TinyVLA kunnen een dag kosten.
  • Geen wachtrij, geen herhaling, geen checkpointopslag. Een herstart bij stap 14000 betekent opnieuw beginnen.

Wanneer een klein model de verkeerde keuze is

Beide papers zijn hier voorzichtiger dan de samenvattingen. TinyVLA's faalanalyse is specifiek: de 0.4 B variant faalde drie keer door de instructie verkeerd te lezen, wat de auteurs toeschrijven aan beperkt taalbegrip in de kleinere VLM, en die modus verdween bij 1.3 B. SmolVLA toont dezelfde curve vanaf de andere kant: de 2.25 B versie van de identieke architectuur scoort 88.75 op LIBERO en 68.24 op Meta-World tegenover 87.3 en 57.3 voor het 0.45 B model.

Een sub-1 B VLA kiezen
Waar het wint
  • Past op een 24 GB kaart, wat een experiment van tientallen dollars naar een paar dollar brengt.
  • Snel genoeg om naast de arm te draaien, dus geen netwerkhop in de controlelus.
  • Finetunet op de data die één persoon kan opnemen, tientallen afleveringen in plaats van duizenden.
  • SmolVLA's gewichten, datalijst en code zijn openbaar, dus een slecht resultaat is debugbaar.
Waar het verliest
  • Zwakker in het opvolgen van instructies: minder taalparameters, minder vermogen om vergelijkbare verwijzende uitdrukkingen te onderscheiden.
  • Minder ruimtelijke en visuele generalisatie naar opstellingen die je niet hebt opgenomen.
  • Gevoeliger voor datasetdefecten, met minder voorgaande pretraining om op terug te vallen.
  • Multi-task en lange-termijn werk blijft grotere modellen bevoordelen, inclusief SmolVLA's eigen 2.25 B variant.

De vergelijking die de moeite waard is, is niet TinyVLA tegen SmolVLA. Het is SmolVLA tegen ACT op je eigen taak, en de SmolVLA paper is het argument waarom. Getraind als single-task zonder robotica pretraining, behaalde SmolVLA gemiddeld 40.0 over drie SO-100 taken waar single-task ACT 48.3 behaalde. Wat het naar 78.3 tilt, is community pretraining plus multi-task training, niet de architectuur alleen. Op de SO-101 lego taak, beide single-task, wint SmolVLA wel: 90 tegen 70 in distributie. Dan SmolVLA tegen Pi0.5 als het budget het toelaat.

Bij dit formaat bepaalt de dataset de uitkomst

Er is minder voorbereiding nodig om slechte data te compenseren, dus een schone verliescurve op een defecte dataset geeft je een beleid dat het defect met vertrouwen reproduceert. De lerobot documentatie is duidelijk over de structuur: 50 afleveringen verdeeld over 5 kubusposities, 10 per positie, werkte; 25 niet. Als het verlies er goed uitziet en de arm niets nuttigs doet, begin dan bij verlies daalt, beleid doet niets, beleid werkt alleen in één opstelling of bruikbare VLA-trainingsdata verzamelen.

Vijf beleidslijnen, één vergelijkingstabel

GR00T N1.7, GR00T N1.5, Pi0.5, SmolVLA en ACT met echte parameter tellingen, inferentie latentie per actiestap, de benodigde GPU-tier en het minimale aantal afleveringen voordat het iets nuttigs doet.

Vergelijk de beleidslijnen

Een beslissingstabel waarop u kunt handelen

Uw situatieBegin metWaarom
Eén taak, goede demonstraties, geen taalACT~80 M, 20 ms, 24 GB kaart, geen basismodel om te downloaden
Een paar gerelateerde taken, elk met één instructieSmolVLA450 M, in lerobot, minimaal 30 afleveringen, 1 tot 3 USD per run
Specifiek het TinyVLA-resultaat reproducerenTinyVLA-B or TinyVLA-HDe repository is de enige route: geïsoleerde omgeving, geconverteerde data
Multi-task, gevarieerde instructies, A100 budgetGR00T N1.7 or Pi0.5~3 B, 152 ms en 485 ms per stap, 4 tot 12 USD per run
Nog geen robotDrive a real armDe op wachtrijen gebaseerde live arm vereist geen aanmelding en geen hardware

Voor de laatste rij, de live arm streamt een fysieke SO-100 die je vanuit de browser kunt besturen zonder account, en de drie manieren om te beginnen behandelt de rest. De SO-100 is hier de referentiearm, ruwweg 110 tot 150 EUR aan onderdelen, met een volledige installatiegids.

Wat komt er na de sub-1 B modellen

Het verkleinen van het aantal parameters is één manier om een VLA goedkoop te maken en niet per se de winnende. OpenVLA-OFT (arXiv 2502.19645) behoudt de 7 B backbone en verandert alleen hoe acties worden gedecodeerd, wat een 26x toename in actiegeneratiedoorvoer en een stijging van LIBERO van 76.5 naar 97.1 procent rapporteert. BitVLA (arXiv 2506.07530) maakt elk gewicht van een 1-bit BitNet b1.58 2B4T backbone ternair, wat 11.0x minder geheugen en 4.4x lagere end-to-end latentie rapporteert, terwijl het overeenkomt met full-precision OpenVLA-OFT. X-VLA-0.9B (arXiv 2510.10274) bevindt zich op de 1 B lijn met flow matching.

De rode draad: de actiedecoder, niet het taalmodel, is waar de latentie zit. Vraag hoe een beleid acties uitzendt voordat je vraagt hoeveel parameters het heeft. De arena heeft 85 modellen en 332 resultaten, elk gekoppeld aan de bron; er is een breder overzicht in onze VLA introductie.

Kan ik SmolVLA fine-tunen op een RTX 4090?

Ja. SmolVLA heeft 450 M parameters en AY-Robots draait het op de RTX 4090 / 24 GB tier. Het lerobot voorbeeld gebruikt --batch_size=64, wat een voorbeeld is en geen garantie voor uw kaart; de documentatie adviseert om klein te beginnen en te verhogen zolang de laadtijden kort blijven. Verwacht langer dan de ongeveer 4 uur die de documentatie noemt voor 20000 stappen op een A100.

Is TinyVLA beschikbaar in lerobot of op AY-Robots?

Nee, op beide vragen. TinyVLA bestaat alleen in zijn onderzoeksrepository, laatste commit 11 maart 2025, en het formaat is ACT-stijl HDF5 in plaats van LeRobot. AY-Robots traint GR00T N1.7, GR00T N1.5, Pi0.5, SmolVLA en ACT. Als u TinyVLA wilt, bouwt u het zelf, en u zult eerst het DeepSpeed config path in scripts/train.sh moeten repareren.

Is een 450 M model echt concurrerend met een 3 B model?

Volgens de eigen benchmarks van de auteurs, ja: 87.3 tegen 86.0 op LIBERO versus een robotica-voorgetrainde Pi0 van 3.3 B, en 78.3 tegen 61.7 op drie echte SO-100 taken waar hetzelfde artikel Pi0 labelt op 3.5 B. De beperking staat in hetzelfde artikel: single-task zonder robotica-voortraining, daalt SmolVLA naar 40.0, onder ACT's 48.3.

Hoeveel afleveringen heb ik nodig voordat een kleine VLA iets doet?

AY-Robots stelt het SmolVLA-minimum in op 30 afleveringen en het ACT-minimum op 50. De lerobot documentatie beveelt ongeveer 50 aan en meldt dat 25 niet genoeg was voor dezelfde taak. Structuur is net zo belangrijk als aantal: de set van het artikel gebruikte 5 kubusposities met elk 10 afleveringen.

Waarom verschillen gepubliceerde latentiecijfers zo sterk?

Ze meten verschillende dingen. TinyVLA rapporteert 14 ms per actievoorspelling op een A6000; AY-Robots vermeldt SmolVLA op 245 ms en ACT op 20 ms per actiestap. Sommige cijfers omvatten één forward pass, sommige verdelen een pass over een chunk van 50 acties, en bijna geen enkele omvat cameracaptatie of het schrijven naar de servo's.

Lost cloud inference het GPU-probleem op?

Gedeeltelijk. AY-Robots voorziet automatisch een pod die het beleid dient terwijl de lokale client met dat eindpunt communiceert, met een idle watchdog zodat het zichzelf vernietigt in plaats van stilzwijgend te factureren. Het kan de round trip via het openbare internet niet elimineren, en de controlelus is al 20 tot 485 ms per actiestap. Prima voor langzame pick-and-place, niet voor snelle reactieve beweging.

Ready for high-quality robotics data?

AY-Robots connects your robots to skilled operators worldwide.

Get Started