
SmolVLA je VLA sa 450 M parametara koji se fino podešava na jednoj 24 GB kartici. Stvarne lerobot 0.6.1 komande, stvarne podrazumevane vrednosti, zamke koje koštaju dan i koliko košta jedno pokretanje.
SmolVLA na jednom ekranu
- •450 M parametara, od čega je oko 100 M ekspert za akcije usklađivanja toka. lerobot trenira samo tog eksperta i drži VLM zamrznutim, zbog čega staje na jednu karticu.
- •LeRobotov vodič za računanje procjenjuje smolvla grupu na otprilike 10 do 16 GB vršnog VRAM-a pri batch 8 sa AdamW-om. Stoga 24 GB.
- •Ulazna tačka je lerobot-train. Blog post o SmolVLA iz juna 2025. i dalje ispisuje python lerobot/scripts/train.py, putanju koja više ne postoji. Sve ispod je lerobot 0.6.1.
- •Kosinusni raspored je unaprijed postavljen da opada tokom 30000 koraka. lerobot 0.6.1 to smanjuje za kraće pokretanje i bilježi, ali nikada ne povećava: standardno pokretanje od 100000 koraka završava na podu od 2.5e-6 za 70000 koraka.
- •Trideset epizoda je minimum za AY-Robots, na nivou od 24 GB koji košta 1 do 3 USD po pokretanju u poređenju sa 4 do 12 za modele od 80 GB.
Većina ljudi koji žele model vizije, jezika i akcije na pravoj ruci zaustave se na hardverskoj liniji. GR00T N1.7 i Pi0.5 imaju oko tri milijarde parametara svaki i zahtijevaju A100 80 GB ili H100. Ako posjedujete gaming PC sa RTX 4090, to je kraj puta. SmolVLA je izuzetak: 450 M parametara, unutar LeRobota, napravljen da se fino podešava na jednoj potrošačkoj kartici i služi sa CPU-a.
Prvo ručna ruta: instalirajte lerobot, povucite lerobot/smolvla_base kontrolnu tačku, pokrenite stvarnu komandu, čitajte pokretanje dok se dešava. Zatim ruta platforme i gdje ona ne pomaže.
Šta je SmolVLA, u brojkama koje možete provjeriti
SmolVLA je usklađivanje toka politika pričvršćena na mali vizuelni jezički model. Okosnica je SmolVLM2-500M-Video-Instruct; rad zadržava samo prvih 16 slojeva njegovog jezičkog modela, ograničava svaki kadar kamere na 64 vizuelna tokena sa premeštanjem piksela umesto popločavanja slike, i prepliće unakrsnu pažnju sa slojem samopažnje u svakom drugom bloku. Trošak inferencije bio je ograničenje dizajna, a ne naknadna misao.
| Svojstvo | Vrijednost | Izvor |
|---|---|---|
| Ukupni parametri | oko 450 M | rad |
| Ekspert za akcije | oko 100 M, usklađivanje toka | rad |
| VLM okosnica | HuggingFaceTB/SmolVLM2-500M-Video-Instruct | vlm_model_name |
| Korišteni VLM slojevi | prvih 16 jezičkog modela | num_vlm_layers = 16 |
| Vizuelni tokeni po kadru | 64, premeštanje piksela, bez popločavanja | rad |
| Pretreniranje | 481 skup podataka zajednice, 22.9 K epizoda, 10.6 M kadrova; 200000 koraka pri globalnoj seriji 256 na 4 GPU-a | rad |
Mjerila su razlog zašto se ljudi bave modelom od 450 M. Na LIBERO-u prosječno postiže 87.3 posto naspram 76.5 za OpenVLA od 7 B i 86.0 za Pi0 pretreniran za robotiku od 3.3 B; na Meta-Worldu, 57.3 naspram 47.9. Na stvarnom SO-100 hardveru, višenamjensko treniranje daje 75 posto na 'pick and place', 90 na slaganju, 70 na sortiranju, s prosjekom od 78.3, gdje ACT treniran po zadatku prosječno je postigao 48.3. Isti redovi stoje pored svakog objavljenog VLA-a u SmolVLA unosu u arenu i poređenju ACT-a protiv SmolVLA-a.
SmolVLA nije bolji od modela od 3 B u svemu. Vlastita SO-101 tabela rada to otkriva: 90 posto uspjeha u distribuciji, 50 posto izvan nje, na platformi na kojoj nikada nije bio pretreniran. Ono što tvrdi i podržava je da se u poređenju sa Pi0 trenira oko 40 posto brže na 6 puta manje memorije.
Zašto je kartica od 24 GB pravi izbor za prvi put
LeRobot isporučuje vodič za dimenzionisanje računarskih resursa, što je najkorisnija stranica u repozitorijumu za ovo. Grupiše politike po veličini okosnice i daje jednu VRAM kovertu po grupi, merenu pri veličini paketa 8 sa AdamW, podrazumevanim za lerobot. Samo stanje optimizatora dodaje 30 do 100 procenata u odnosu na goli forward i backward prolaz, tako da ovo nisu cifre samo za težine.
| Grupa | Politike | Maksimalni VRAM (paket 8, AdamW) | Početne GPU |
|---|---|---|---|
| Laki BC | act, vqbet, tdmpc | about 2 to 6 GB | RTX 3060, L4 |
| Difuzija | diffusion, multi_task_dit | about 8 to 14 GB | RTX 4070+, L4 |
| Mali VLA | smolvla | about 10 to 16 GB | RTX 4080+, L4, A10G |
| Veliki VLA | pi0, pi0_fast, pi05, xvla, wall_x | about 24 to 40 GB | A100 40 GB+ |
| Multimodalni | groot, eo1 | about 24 to 40 GB | A100 40 GB+ |
Deset do šesnaest gigabajta pri paketu 8 je argument: kartica od 24 GB to podržava plus dataloader. AY-Robots postavlja SmolVLA na RTX 4090 ili bilo koju karticu od 24 GB, minimum 30 epizode, LeRobot v3.0 podataka, 245 ms po koraku akcije. Iznajmljeno, to je 2 do 5 sati po ceni od 0.30 do 0.60 USD po satu, oko 1 do 3 USD po fino podešavanje pokretanju, naspram 4 do 12 USD na nivou od 80 GB koji GR00T i Pi0.5 zahtevaju (cene). Neuspelo pokretanje SmolVLA je kafa; neuspelo pokretanje GR00T je ručak.

- Odgovara hardveru koji možda već posjedujete: otprilike 10 do 16 GB pri batch 8.
- Propušteno izvođenje košta sate i jednocifrene dolare, tako da si možete priuštiti da pogriješite u vezi sa skupom podataka.
- Prethodno treniran na skupovima podataka zajednice dijeljenim pod lerobot oznakom, sa stvarnim SO-100 i SO-101 rezultatima.
- Živi u samom lerobotu: nema repozitorija dobavljača, a smolvla_base nije ograničen.
- 450 M je i dalje 450 M: uspjeh izvan distribucije pada sa 90 na 50 posto u SO-101 tabeli rada.
- Zahtijeva LeRobot v3.0 podatke; snimak v2.1 mora biti konvertovan (dataset rejected v3).
- 245 ms po koraku akcije je kompetentan kontroler za 'pick and place', a ne reaktivni.
- Primjer iz dokumentacije pokreće batch 64 na A100; na 24 GB mijenjate batch za stvarno vrijeme.
Korak 0: skup podataka odlučuje o izvođenju, a ne zastavice
Ništa ispod nije važno ako je snimak loš. Stranica LeRobot SmolVLA je direktna: referentni skup podataka sastojao se od 50 epizoda raspoređenih na 5 pozicija kocke, 10 po poziciji, a isti zadatak sa 25 epizoda je loše izveden. Ponavljanje po varijaciji generalizuje, sirovi broj epizoda ne. Nikada niste snimili nijednu? Počnite na snimite svoj prvi skup podataka sa desktop klijentom, koji piše LeRobot format iz teleoperacije sesije, ili posudite jedan iz direktorija skupova podataka.
- Najmanje 30 epizoda na AY-Robots, oko 50 za referentni recept LeRobot.
- Svaka varijacija koju očekujete pri implementaciji, ponovljena nekoliko puta.
- Jedan niz zadataka, napisan identično u vrijeme snimanja i implementacije. Model je uvjetovan tim tekstom.
- Fiksne kamere. Kamera pomjerena između snimanja i implementacije je najčešći razlog zašto čista kriva gubitka rezultira nepokretnom rukom.
- Zadržana varijacija na kojoj nikada niste trenirali, tako da imate nešto iskreno za testiranje.
SmolVLA, Pi0.5 i ACT žele LeRobot v3.0. GR00T N1.7 i N1.5 žele v2.0 ili v2.1 i njihov učitavač se ruši na v3.0. Snimite jednom, planirajte usporedbu modela kasnije, i pretvorit ćete na ovaj ili onaj način: dataset rejected v3.
# v2.1 -> v3.0: aggregates per-episode files into shards and writes the episode offsets
python -m lerobot.scripts.convert_dataset_v21_to_v30 --repo-id=${HF_USER}/so100_pick_placeViše o ovome u kako prikupiti visokokvalitetne VLA podatke za obuku za robotsku manipulaciju. Kratka verzija: 30 do 50 čistih epizoda jednog zadatka s namjernom varijacijom nadmašuje 200 neurednih epizoda od tri, s razlikom koju nijedan hiperparametar ne može zatvoriti.
Instaliraj lerobot 0.6.1
# LeRobot needs Python 3.12 or newer as of 0.6.x
conda create -y -n lerobot python=3.12
conda activate lerobot
# TorchCodec decodes the dataset videos and wants ffmpeg
conda install ffmpeg -c conda-forge
# Base package is deliberately thin; extras pull the rest
pip install 'lerobot[smolvla,training,core_scripts]'
# Sanity check: prints the lerobot version, the GPU torch sees, and the console scripts you got
lerobot-infoOsnovna lerobot instalacija je tanka i teške zavisnosti drži iza dodataka: smolvla dodaje transformere, num2words i accelerate, training stog podataka i wandb, core_scripts hardverske i vizualizacijske zavisnosti. Na Linuxu, putanja instalacije također određuje vaš CUDA wheel: PyPI podrazumijevana vrijednost je cu130 wheel sa minimalnom verzijom drajvera od 580.65, tako da na starijem drajveru prvo instalirajte torch sa cu128 indeksa, a zatim lerobot.
--policy.path=lerobot/smolvla_base učitava unaprijed obučeni kontrolni punkt od 450 M i fino ga podešava. --policy.type=smolvla gradi novi SmolVLA, a podrazumijevana konfiguracija load_vlm_weights = False znači da čak ni ne povlači težine okosnice SmolVLM2 osim ako ne zatražite. Ako pogriješite, pokretanje će se sretno obučavati, koštati isto i neće naučiti ništa prenosivo.
Pokretanje obuke, komanda po komanda
- 1Autentifikacija na Hub
Osnovna kontrolna tačka dolazi sa Huba, a verovatno i vaš skup podataka.
bashhf auth login - 2Pročitajte opcije jednom
Svako polje konfiguracije pajplajna i politike je zastavica. Prelistajte je pre nego što zaronite u izvorni kod.
bashlerobot-train --help - 3Pokrenite fino podešavanje
Primer iz dokumentacije pokreće batch 64 na jednom A100; sopstvena A100 40 GB referenca iz vodiča za računanje je batch 16, a 8 je ekvivalent za 24 GB. Nema zastavice za scheduler ovde namerno, pogledajte ispod.
bashlerobot-train \ --policy.path=lerobot/smolvla_base \ --dataset.repo_id=${HF_USER}/so100_pick_place \ --batch_size=8 \ --steps=20000 \ --save_freq=2000 \ --log_freq=200 \ --seed=1000 \ --output_dir=outputs/train/smolvla_pick_place \ --job_name=smolvla_pick_place \ --policy.device=cuda \ --wandb.enable=true - 4Pročitajte liniju loga, ne samo gubitak
Svakih --log_freq koraka lerobot ispisuje loss, grdn, lr, updt_s, data_s, smp/s i, na CUDA-i, mem_gb. mem_gb govori da li batch staje, lr da li se raspored smanjuje, a data_s koji se približava updt_s znači da je dataloader usko grlo, a ne GPU.
bash# if data_s creeps toward updt_s lerobot-train ... --num_workers=8 - 5Sakupite kontrolne tačke koje možete uporediti
save_freq podrazumevano iznosi 20000, tako da pokretanje od 20000 koraka ostavlja jednu kontrolnu tačku i ništa za poređenje. Postavite na 2000. Guranje na Hub zahteva --policy.repo_id.
bash--save_freq=2000 \ --policy.repo_id=${HF_USER}/smolvla_pick_place \ --save_checkpoint_to_hub=true - 6Nastavite ako mašina prestane sa radom
Usmjerite --config_path na train_config.json pored kontrolne tačke. lerobot odbija da se pokrene u postojećem output_dir-u osim ako ne nastavljate, tako da ne možete slučajno prepisati pokretanje.
bashlerobot-train \ --config_path=<path to the saved train_config.json> \ --resume=true
Zastavice koje zapravo menjaju ishod
| Zastavica | Šta radi | Na 24 GB |
|---|---|---|
| --batch_size | Uzorci po koraku, približno linearno sa VRAM-om | 4 to 8 |
| --steps | Ukupni koraci optimizatora | 20000 prvi prolaz |
| --policy.scheduler_decay_steps | Dužina kosinusnog opadanja, unapred podešeno 30000 | Deluje samo iznad 30000 |
| --policy.use_amp | Mešovita preciznost; SmolVLA nema polje dtype | true kada je memorija tesna |
| --num_workers | Procesi dataloadera, podrazumevano 4 | Povećavajte dok data_s ne prestane da raste |
| --dataset.eval_split | Udeo epizoda zadržanih po zadatku | 0.1, with --eval_steps |
| --policy.freeze_vision_encoder | Održava vizuelni toranj zamrznutim | true on 24 GB |
| --policy.train_expert_only | Samo ~100 M ekspert dobija gradijente | true prvo |
SmolVLA unaprijed postavlja kosinusni raspored: `scheduler_warmup_steps = 1000`, `scheduler_decay_steps = 30000`, `scheduler_decay_lr = 2.5e-6`. Stariji savjeti kažu da se pokretanje od 20000 koraka stoga zaustavlja usred opadanja. U verziji 0.6.1 to nije slučaj: `CosineDecayWithWarmupSchedulerConfig.build()` dobija `--steps`, i ispod `num_decay_steps` skalira oba, zagrijavanje 1000 na 666 i opadanje 30000 na 20000, ispisujući Auto-scaling LR scheduler dok to radi. Nikada ne skalira naviše: opadanje je ograničeno sa `min(current_step, decay_steps)`, tako da standardni `--steps=100000` ostaje na dnu od koraka 30000 do kraja, 70 posto pokretanja. Samo ta duga strana i dalje zahtijeva `--policy.scheduler_decay_steps`. Kolona `lr` je mjesto gdje provjeravate.
Podrazumijevane vrijednosti koje nasljeđujete ako ništa ne dirate
Konfiguracija politike u LeRobotu nosi vlastiti optimizator i unaprijed postavljeni raspored, i osim ako ne postavite use_policy_training_preset=false te unaprijed postavljene vrijednosti će prevladati. Pola pitanja koja ljudi postavljaju o obuci SmolVLA-a odgovorena su podrazumijevanom vrijednošću za koju nisu znali da postoji.
| Postavka | Podrazumijevano u LeRobotu 0.6.1 | Definisano u |
|---|---|---|
| veličina_bloka / n_koraka_akcije | 50 / 50 | SmolVLAConfig |
| broj_koraka (uklanjanje šuma podudaranjem toka) | 10 | SmolVLAConfig |
| stopa_učenja_optimizatora | 1e-4 | SmolVLAConfig |
| koraci_zagrijavanja_raspoređivača | 1000 | SmolVLAConfig |
| koraci_opadanja_raspoređivača | 30000 | SmolVLAConfig |
| stopa_učenja_opadanja_raspoređivača | 2.5e-6 | SmolVLAConfig |
| zamrzni_vizualni_enkoder | true | SmolVLAConfig |
| treniraj_samo_eksperta | true | SmolVLAConfig |
| veličina_paketa / koraci | 8 / 100000 | TrainPipelineConfig |
| sjeme / učestalost_spremanja / broj_radnika | 1000 / 20000 / 4 | TrainPipelineConfig |
Dvije linije koje iznenađuju ljude su freeze_vision_encoder i train_expert_only, obje istinite. Izvan kutije trenirate otprilike 100 M parametara, a ne 450 M, zbog čega stane na 24 GB. LeRobot-ovo vlastito referentno pokretanje na H100 klasteru s četiri GPU-a prebacuje obje na false; na jednoj 24 GB kartici to pretvara radno pokretanje u .
Savjet vodiča kada ste ograničeni memorijom je da smanjite veličinu paketa (batch size) i koristite akumulaciju gradijenta (gradient accumulation) kako biste povratili efektivni paket. Nema akumulacije gradijenta u lerobot 0.6.1: TrainPipelineConfig nema takvo polje i string se ne pojavljuje nigdje u objavljenom paketu. AY-Robots obrazac prikazuje vrijednost akumulacije gradijenta od 8 za SmolVLA i ne primjenjuje je. Vaše poluge na 24 GB su --batch_size, dvije zadane postavke zamrzavanja i --policy.use_amp.
Koliko dugo traje pokretanje i koliko je koraka dovoljno
LeRobot objavljuje stvarne vremenske sidra za pet epoha preko skupa podataka od otprilike 50 epizoda, oko 45000 sličica pri 30 fps. Brojke reda veličine, kažu dokumenti, ali one su razlika između očekivanja sata i dana.
| Postavka | Politika | Serija | Stvarno vrijeme |
|---|---|---|---|
| Jedan L4 / A10G (24 GB) | smolvla | 4 | oko 3 do 6 h |
| Jedan A100 40 GB | smolvla | 16 | oko 1 do 2 h |
| 4 x H100 80 GB sa ubrzanjem | smolvla | 32 | oko 1 do 2 h |
| Jedan RTX 4090 / RTX 3090 (24 GB) | act | 8 | oko 30 do 60 min |
Pravilo je 5 do 10 epoha preko skupa podataka, a ne fiksni broj koraka: steps_per_epoch = ceil(total_frames / (num_gpus x batch_size)). Na referentnom skupu podataka na koji dokumentacija upućuje, lerobot/svla_so100_pickplace, metapodaci izvještavaju o 50 epizoda i 19631 kadru: serija 8 daje oko 2454 koraka po epohi, tako da je 20000 koraka otprilike 8 epoha. Prepolovite seriju i isti budžet kupuje pola epoha, pa ponovite ovo kad god mijenjate --batch_size.
Pokretanje fino podešene politike nazad na ruci
lerobot-rollout \
--strategy.type=base \
--robot.type=so100_follower \
--robot.port=/dev/ttyACM0 \
--robot.id=my_follower_arm \
--robot.cameras="{ front: {type: opencv, index_or_path: 0, width: 640, height: 480, fps: 30}}" \
--task="Grasp the cube and put it in the box." \
--policy.path=${HF_USER}/smolvla_pick_place245 ms po koraku akcije je lako pogrešno protumačiti: politika emituje chunk_size = 50 akcija po prolazu unapred i izvršava n_action_steps = 50 od njih, tako da je učestalost plaćanja tog troška određena tim parametrima, a ne učestalošću kojom servoi dobijaju komandu. To je ono što grupisanje akcija donosi, i zašto model od 245 ms može da pokreće ruku od 30 Hz. Ono što preostaje je latencija inferencije na kraju grupe.
| Merenje (SmolVLA, stvarni SO-100) | Sinhrono | Asinhrono |
|---|---|---|
| Vreme završetka, uzmi i postavi, 10 pokušaja | 13.75 s | 9.70 s |
| Ciklusi uzmi i postavi u fiksnom vremenskom prozoru | 9 | 19 |
| Stopa uspešnosti prosečno za tri zadatka | 78.3 % | 73.3 % |
Taj treći red je ono što većina izveštaja preskače. Asinhrona inferencija je oko 30 posto brža i otprilike udvostručuje propusnost u fiksnom prozoru, a rad naziva stope uspešnosti uporedivim, što u proseku i jesu. Ispod toga, sortiranje je palo sa 70 na 50 posto dok je uzmi i postavi dobilo 5. lerobot 0.6.1 nosi drugu polugu u istom binarnom fajlu: --inference.type=rtc prebacuje izvođenje na grupisanje u realnom vremenu, što sopstveni blok upotrebe skripte preporučuje za spore VLA-ove, Pi0, Pi0.5 i SmolVLA.
Kontrolna petlja je 20 do 485 ms po koraku akcije u zavisnosti od modela, a povratna putovanja preko javnog interneta pretvaraju funkcionalnu politiku u oklevajuću. Daljinska inferencija je izvodljiva za sporo uzmi i postavi, ali ne i za brzo reaktivno kretanje: ako zadatak zahteva brze korekcije, GPU pripada istoj LAN mreži kao i ruka.
Dva puta do iste kontrolne tačke
Vi posedujete mašinu, okruženje i otklanjanje grešaka. Jedina zavisnost od oblaka je preuzimanje osnovne kontrolne tačke sa Huba. Pravi put ako želite da modifikujete politiku, ako podaci ne mogu napustiti vašu mrežu, ili ako je kartica neaktivna.
- Vi kontrolišete CUDA točak, drajver, ffmpeg build i dataloader.
- Možete zakrpiti configuration_smolvla.py i ponovo trenirati istog popodneva.
- Plaćate strujom i vremenom, ne po pokretanju, i sami otklanjate greške u TorchCodec-u.
pip install 'lerobot[smolvla,training,core_scripts]'
hf auth login
lerobot-train \
--policy.path=lerobot/smolvla_base \
--dataset.repo_id=${HF_USER}/so100_pick_place \
--batch_size=8 --steps=20000 \
--save_freq=2000 --seed=1000 \
--output_dir=outputs/train/smolvla_pick_place \
--job_name=smolvla_pick_place \
--policy.device=cuda --wandb.enable=trueIsto pokretanje iza forme: birate model i skup podataka, backend iznajmljuje GPU prema potrebnom VRAM-u, pokreće trener i piše kontrolne tačke u skladište objekata. Skup podataka može doći iz Hugging Face repo id-a, javnog direktorijuma, ili vaše mašine. Počnite na SmolVLA na SO-100, ili matrici na stranici za obuku.
| Polje | Podrazumevano što platforma šalje za SmolVLA | Napomena |
|---|---|---|
| veličina paketa | 2 | Konzervativno za nivo od 24 GB |
| stopa učenja | 1e-4 | Lerobot predpodešavanje |
| maksimalni koraci | 20000 | Referentno pokretanje u LeRobot dokumentaciji |
| akumulacija gradijenta | 8 | Prikazano u formi, nije primenjeno |
| dodatna podešavanja | seed, logFreq | Seed čini pokretanje ponovljivim |
- 2 do 5 sati na nivou od 24 GB, oko 1 do 3 USD po pokretanju.
- Iste operacije sa terminala na /cli i od AI agenata na /mcp.
- Inference podovi nose idle watchdog, tako da se zaboravljeni pod uništava umesto da tiho naplaćuje.
- Još uvek nemate ruku? /live strimuje fizički SO-100 koji možete voziti bez prijave.
Posao zaglavljen u redu je simptom spot tržišta, a ne greška: posao obuke zaglavljen u redu. Korak po korak: obučite svoju prvu politiku i dokumentacija za obuku.
Kada je SmolVLA pogrešan izbor
Test da li je SmolVLA bio pravi prvi pokušaj nije u tome da li je radio, već da li vam je neuspjeh nešto rekao. Dostignite 60 ili 70 posto i veći model je razuman sljedeći trošak: podaci nose signal. Dostignite 10 posto i model od 3 B će najvjerovatnije također dostići 10 posto, što ste upravo naučili za tri dolara umjesto dvanaest.

Vrijedi pročitati prije nego što potrošite više: Pi0.5 protiv SmolVLA za veći kapacitet na istoj ideji, i GR00T N1.7 protiv SmolVLA za NVIDIA put, oba 80 GB nivoa po cijeni od 4 do 12 USD po pokretanju. Drugi način, ACT je jeftinija osnova: 80 M parametara, 20 ms po koraku akcije, bez jezičkog uslovljavanja. Svih pet se nalazi na stranici sa politikama; areni ima 85 modela i 332 rezultata benchmarka.

Kontrolna lista prije nego što bilo šta skalirate
- Da li je
lrdostigao svoj minimum od 2.5e-6? Ispod 30000 koraka lerobot ponovo skalira opadanje i to navodi pri pokretanju; iznad toga, sami postavite--policy.scheduler_decay_steps. - Više od jedne kontrolne tačke i epizode izdvojene sa
--dataset.eval_splittako da gubitak evaluacije nešto znači. - Da li se politika uopšte pomera? Padajući gubitak sa nepokretnom rukom ima specifične uzroke: gubitak pada, politika ne radi ništa.
- Da li preživljava promenu scene? Ako ne: politika radi samo u jednom podešavanju.
- Jeste li zapisali seed? lerobot podrazumevano koristi 1000, tako da dva netaknuta pokretanja ostaju uporediva.
- Tek tada: više epizoda, više varijacija ili veći model. Tim redosledom.
Zašto ovi modeli postoje i šta rade sa jezičkim unosom, je pozadina; vodi montažu kroz do prvog pokretanja. Za završenu kontrolnu tačku, ; ako se ruka nikada ne pojavi, .
Obučite SmolVLA na svojoj ruci
Odaberite model i ruku, a vodič vam daje tačne podrazumevane vrednosti, format skupa podataka i troškove pokretanja. SmolVLA se nalazi na nivou od 24 GB po ceni od 1 do 3 USD po pokretanju.
Otvorite vodiče za obukuMogu li zaista fino podesiti SmolVLA na RTX 4090?▾
Da. LeRobotov vodič za računanje procjenjuje SmolVLA na otprilike 10 do 16 GB vršnog VRAM-a pri batch 8 s AdamW-om i navodi da su potrošačke kartice od 24 GB udobne za to. Batch 64 u primjeru dokumentacije je uparen s jednim A100. Memorija se skalira otprilike linearno s batch-om, pa koristite 4 ili 8 i pratite mem_gb.
Koliko mi je epizoda zapravo potrebno?▾
AY-Robots postavlja minimum na 30. LeRobot dokumentacija preporučuje oko 50 i izvještava da je 25 epizoda istog zadatka loše funkcionisalo. Struktura je važnija od broja: referentni skup je bio 5 pozicija kocke sa po 10 epizoda, i to ponavljanje je ono što se generalizuje.
Dokumentacija kaže batch 64, platforma šalje batch 2. Šta je ispravno?▾
Oba, za različit hardver. Primjer iz dokumentacije koristi batch 64 i navodi oko 4 sata za 20000 koraka na jednom A100; sidro A100 40 GB u vodiču za računanje je batch 16. Batch 2 je ono što AY-Robots šalje na nivou od 24 GB. Lokalno je 4 do 8 sredina, a aritmetika epoha se mijenja s tim.
SmolVLA ili ACT za prvo pokretanje na SO-100?▾
ACT ako je zadatak jedno ponavljajuće kretanje i želite najbržu petlju: 20 ms po koraku akcije, 80 M parametara, bez jezičkog uslovljavanja. SmolVLA ako želite jezičko uslovljavanje, nekoliko nizova zadataka u jednoj kontrolnoj tački i unaprijed obučenu bazu. Oba se nalaze na nivou od 24 GB, tako da je izbor zadatak, a ne budžet.
Moram li postaviti --policy.scheduler_decay_steps?▾
Samo kada je --steps iznad 30000. SmolVLA unaprijed postavlja kosinusni pad na 30000 koraka, a lerobot 0.6.1 ga sam smanjuje za kraće pokretanje, bilježeći "Auto-scaling LR scheduler" kada to učini. Nikada se ne skalira naviše, tako da standardni --steps=100000 ostavlja posljednjih 70000 koraka na podu od 2.5e-6.
Sources
- SmolVLA: Model vizije, jezika i akcije za pristupačnu i efikasnu robotiku
- SmolVLA: Efikasan model vizije, jezika i akcije (Hugging Face blog)
- lerobot/smolvla_base kartica modela
- LeRobot dokumentacija: SmolVLA
- LeRobot dokumentacija: Vodič za računarski hardver za LeRobot obuku
- LeRobot dokumentacija: Instalacija
- LeRobot dokumentacija: LeRobotDataset v3.0 i konverter v2.1
- LeRobot dokumentacija: Asinhrono zaključivanje
- lerobot v0.6.1: configuration_smolvla.py
- lerobot v0.6.1: TrainPipelineConfig
- lerobot v0.6.1: CosineDecayWithWarmupSchedulerConfig
- lerobot v0.6.1: lerobot_rollout.py (strategije i RTC zaključivanje)
- lerobot v0.6.1: pyproject.toml (dodaci i ulazne tačke konzole)
- lerobot na PyPI
- lerobot/svla_so100_pickplace skup podataka (50 epizoda, 19631 frejm, v3.0)
Sources
- SmolVLA: A Vision-Language-Action Model for Affordable and Efficient Robotics
- SmolVLA: Efficient Vision-Language-Action Model (Hugging Face blog)
- lerobot/smolvla_base model card
- LeRobot docs: SmolVLA
- LeRobot docs: Compute HW Guide for LeRobot Training
- LeRobot docs: Installation
- LeRobot docs: LeRobotDataset v3.0 and the v2.1 converter
- LeRobot docs: Asynchronous Inference
- lerobot v0.6.1: configuration_smolvla.py
- lerobot v0.6.1: TrainPipelineConfig
- lerobot v0.6.1: CosineDecayWithWarmupSchedulerConfig
- lerobot v0.6.1: lerobot_rollout.py (strategies and RTC inference)
- lerobot v0.6.1: pyproject.toml (extras and console entry points)
- lerobot on PyPI
- lerobot/svla_so100_pickplace dataset (50 episodes, 19631 frames, v3.0)
Ready for high-quality robotics data?
AY-Robots connects your robots to skilled operators worldwide.
Get Started