
SmolVLA ir 450 M parametru VLA, kas tiek precizēts uz vienas 24 GB kartes. Reālas lerobot 0.6.1 komandas, faktiskās noklusējuma vērtības, lamatas, kas maksāja dienu, un cik maksā viena izpilde.
SmolVLA vienā ekrānā
- •450 M parametri, aptuveni 100 M no tiem ir plūsmas saskaņošanas darbības eksperts. lerobot apmāca tikai šo ekspertu un saglabā VLM iesaldētu, tāpēc tas ietilpst vienā kartē.
- •LeRobot skaitļošanas ceļvedis norāda, ka smolvla grupa sasniedz aptuveni 10 līdz 16 GB maksimālās VRAM pie 8. partijas ar AdamW. Tāpēc 24 GB.
- •Ieejas punkts ir lerobot-train. 2025. gada jūnija SmolVLA emuāra ieraksts joprojām izdrukā python lerobot/scripts/train.py, ceļu, kas vairs nepastāv. Viss zemāk ir lerobot 0.6.1.
- •Kosinusa grafiks ir iepriekš iestatīts, lai samazinātos par 30000 soļiem. lerobot 0.6.1 to samazina īsākam izpildes laikam un reģistrē, bet nekad nepalielina: standarta 100000 soļu izpilde beidzas pie 2.5e-6 grīdas 70000 soļiem.
- •Trīsdesmit epizodes ir AY-Robots minimums, 24 GB līmenī, kas maksā 1 līdz 3 USD par izpildi, salīdzinot ar 4 līdz 12 USD par 80 GB modeļiem.
Lielākā daļa cilvēku, kas vēlas redzes valodas darbības modeli uz reālas rokas apstājas pie aparatūras robežas. GR00T N1.7 un Pi0.5 ir aptuveni trīs miljardi parametru katrs un prasa A100 80 GB vai H100. Ja jums pieder spēļu dators ar RTX 4090, tas ir ceļa gals. SmolVLA ir izņēmums: 450 M parametri, LeRobot ietvaros, veidots, lai precīzi noregulētu uz vienas patērētāju kartes un darbotos no CPU.
Vispirms manuālais ceļš: instalējiet lerobot, iegūstiet lerobot/smolvla_base kontrolpunktu, palaidiet reālo komandu, lasiet izpildi, kamēr tā notiek. Pēc tam platformas ceļš un tas, kur tas nepalīdz.
Kas ir SmolVLA, skaitļos, ko varat pārbaudīt
SmolVLA ir plūsmas saskaņošana politika, kas pievienota mazam redzes valodu modelim. Pamatā ir SmolVLM2-500M-Video-Instruct; rakstā tiek saglabāti tikai pirmie 16 tā valodu modeļa slāņi, katrs kameras kadrs tiek ierobežots līdz 64 vizuālajiem marķieriem ar pikseļu sajaukšanu, nevis attēlu mozaīku veidošanu, un krusteniskā uzmanība tiek savienota ar pašu uzmanības slāni katrā otrajā blokā. Secinājumu izmaksas bija dizaina ierobežojums, nevis pēcapdoma.
| Īpašība | Vērtība | Avots |
|---|---|---|
| Kopējie parametri | aptuveni 450 M | paper |
| Darbības eksperts | aptuveni 100 M, plūsmas saskaņošana | paper |
| VLM pamats | HuggingFaceTB/SmolVLM2-500M-Video-Instruct | vlm_model_name |
| Izmantotie VLM slāņi | pirmie 16 no valodu modeļa | num_vlm_layers = 16 |
| Vizuālie marķieri kadrā | 64, pikseļu sajaukšana, bez mozaīkas | paper |
| Iepriekšēja apmācība | 481 kopienas datu kopas, 22.9 K epizodes, 10.6 M kadri; 200000 soļi ar globālo partiju 256 uz 4 GPU | paper |
Veiktspējas rādītāji ir iemesls, kāpēc cilvēki pievēršas 450 M modelim. LIBERO tas vidēji sasniedz 87.3 procentus pret 76.5 OpenVLA ar 7 B un 86.0 robotikas iepriekš apmācītam Pi0 ar 3.3 B; Meta-World tas sasniedz 57.3 pret 47.9. Uz reālas SO-100 aparatūras, daudzuzdevumu apmācība dod 75 procentus uz paņemšanu un novietošanu, 90 uz kraušanu, 70 uz šķirošanu, vidēji 78.3, kur ACT apmācīts uzdevumam vidēji sasniedza 48.3. Tās pašas rindas atrodas blakus katram publicētajam VLA SmolVLA arēnas ierakstā un ACT pret SmolVLA salīdzinājumā.
SmolVLA nav labāks par 3 B modeli visās jomās. Paša raksta SO-101 tabula to atklāj: 90 procentu panākumi izplatībā, 50 procenti ārpus tās, uz platformas, uz kuras tas nekad nav ticis iepriekš apmācīts. Tas, ko tas apgalvo un atbalsta, ir tas, ka pret Pi0 tas apmācās aptuveni par 40 procentiem ātrāk, izmantojot 6 reizes mazāk atmiņas.
Kāpēc 24 GB karte ir pareizā izvēle pirmajai palaišanai
LeRobot nodrošina aprēķinu lieluma noteikšanas ceļvedi, kas ir visnoderīgākā lapa repozitorijā šim nolūkam. Tas grupē politikas pēc mugurkaula izmēra un katrai grupai piešķir vienu VRAM apjomu, mērot ar partijas izmēru 8 un AdamW, kas ir lerobot noklusējuma iestatījums. Optimizatora stāvoklis vien pievieno 30 līdz 100 procentus virs vienkāršas tiešās un atpakaļgaitas pārejas, tāpēc šie nav tikai svaru rādītāji.
| Grupa | Policies | Maksimālā VRAM (partija 8, AdamW) | Sākuma GPU |
|---|---|---|---|
| Viegls BC | act, vqbet, tdmpc | about 2 to 6 GB | RTX 3060, L4 |
| Difūzija | diffusion, multi_task_dit | about 8 to 14 GB | RTX 4070+, L4 |
| Mazs VLA | smolvla | about 10 to 16 GB | RTX 4080+, L4, A10G |
| Liels VLA | pi0, pi0_fast, pi05, xvla, wall_x | about 24 to 40 GB | A100 40 GB+ |
| Daudzmodāls | groot, eo1 | about 24 to 40 GB | A100 40 GB+ |
Desmit līdz sešpadsmit gigabaiti ar partijas izmēru 8 ir arguments: 24 GB karte tam der, kā arī datu ielādētājam. AY-Robots izmanto SmolVLA uz RTX 4090 vai jebkuras 24 GB kartes, minimāli 30 epizodes, LeRobot v3.0 dati, 245 ms uz darbības soli. Nomas gadījumā tas ir 2 līdz 5 stundas par 0.30 līdz 0.60 USD stundā, aptuveni 1 līdz 3 USD par precizēšanas palaišanu, salīdzinot ar 4 līdz 12 USD par 80 GB līmeņa GR00T un Pi0.5 nepieciešamību (cenas). Neveiksmīga SmolVLA palaišana ir kafija; neveiksmīga GR00T palaišana – pusdienas.

- Der aparatūrai, kas jums jau var piederēt: aptuveni 10 līdz 16 GB ar partiju 8.
- Izniekota palaišana maksā stundas un viencipara dolārus, tāpēc jūs varat atļauties kļūdīties par datu kopu.
- Iepriekš apmācīts uz kopienas datu kopām, kas koplietotas ar lerobot tagu, ar reāliem SO-100 un SO-101 rezultātiem.
- Tas atrodas pašā lerobot: nav piegādātāja repozitorija, un smolvla_base nav ierobežots.
- 450 M joprojām ir 450 M: ārpus izplatīšanas panākumi samazinās no 90 līdz 50 procentiem dokumenta SO-101 tabulā.
- Tas prasa LeRobot v3.0 datus; v2.1 ieraksts ir jākonvertē (datu kopa noraidīta v3).
- 245 ms par darbības soli ir kompetents paņemšanas un novietošanas kontrolieris, nevis reaktīvs.
- Dokumentācijas piemērs palaiž partiju 64 uz A100; uz 24 GB jūs maināt partiju pret reālo laiku.
0. solis: datu kopa nosaka izpildi, nevis karodziņi
Nekas zemāk nav svarīgs, ja ieraksts ir slikts. LeRobot SmolVLA lapa ir tieša: atsauces datu kopa bija 50 epizodes piecās kuba pozīcijās, 10 katrā pozīcijā, un tas pats uzdevums ar 25 epizodēm tika veikts slikti. Atkārtojums katrai variācijai vispārina, nevis neapstrādāts epizožu skaits. Nekad neesat ierakstījis? Sāciet ar ierakstiet savu pirmo datu kopu ar darbvirsmas klientu, kas raksta LeRobot formātu no teleoperācijas sesijas, vai aizņemieties to no datu kopu direktorija.
- Vismaz 30 epizodes par AY-Robots, apmēram 50 LeRobot atsauces receptei.
- Katra variācija, ko sagaidāt izvietošanas laikā, atkārtota vairākas reizes.
- Viena uzdevuma virkne, identiski uzrakstīta ierakstīšanas un izvietošanas laikā. Modelis ir kondicionēts uz šo tekstu.
- Fiksētas kameras. Kamera, kas pārvietota starp ierakstīšanu un izvietošanu, ir visbiežākais iemesls, kāpēc tīra zaudējumu līkne dod nekustīgu roku.
- Aizturēta variācija, ko nekad neesat apmācījis, lai jums būtu kaut kas godīgs, pret ko testēt.
SmolVLA, Pi0.5 un ACT vēlas LeRobot v3.0. GR00T N1.7 un N1.5 vēlas v2.0 vai v2.1, un to ielādētājs avarē ar v3.0. Ierakstiet vienreiz, plānojiet salīdzināt modeļus vēlāk, un jūs konvertēsiet vienā vai otrā veidā: datu kopa noraidīja 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_placeVairāk par to kā savākt augstas kvalitātes VLA apmācības datus robotu manipulācijai. Īsā versija: 30 līdz 50 tīras vienas uzdevuma epizodes ar apzinātu variāciju pārspēj 200 paviršas trīs uzdevumu epizodes ar starpību, ko neviens hiperparametr neaizver.
Instalēt 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-infoPamata lerobot instalācija ir minimāla un smagas atkarības slēpj aiz papildpakotnēm (extras): smolvla pievieno transformatorus, num2words un accelerate, training datu kopu steku un wandb, core_scripts aparatūras un vizualizācijas atkarības. Operētājsistēmā Linux instalācijas ceļš nosaka arī jūsu CUDA wheel: PyPI noklusējuma ir cu130 wheel ar draivera minimālo versiju 580.65, tāpēc ar vecāku draiveri vispirms instalējiet torch no cu128 indeksa, pēc tam lerobot.
--policy.path=lerobot/smolvla_base ielādē iepriekš apmācīto 450 M kontrolpunktu un precizē to. --policy.type=smolvla veido jaunu SmolVLA, un konfigurācijas noklusējuma load_vlm_weights = False nozīmē, ka tas pat neielādē SmolVLM2 pamata svarus, ja vien jūs to nepieprasāt. Ja kļūdāties, izpilde notiek veiksmīgi, izmaksā tikpat, bet neapgūst neko pārnesamu.
Apmācības palaišana, komanda pa komandai
- 1Autentificēties pret Hub
Bāzes kontrolpunkts nāk no Hub, un jūsu datu kopa, visticamāk, arī.
bashhf auth login - 2Vienreiz izlasiet opcijas
Katrs cauruļvada un politikas konfigurācijas lauks ir karodziņš. Pārskatiet to pirms iedziļināšanās avotā.
bashlerobot-train --help - 3Sākt precizēšanu
Dokumentācijas piemērs palaiž 64 partijas uz viena A100; skaitļošanas ceļveža paša A100 40 GB enkurs ir 16 partijas, un 8 ir 24 GB ekvivalents. Šeit apzināti nav plānotāja karodziņa, skatiet zemāk.
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 - 4Lasiet žurnāla rindu, ne tikai zudumu
Ik pēc --log_freq soļiem lerobot izdrukā loss, grdn, lr, updt_s, data_s, smp/s un, uz CUDA, mem_gb. mem_gb norāda, vai partija ietilpst, lr norāda, vai grafiks samazinās, un data_s tuvināšanās updt_s nozīmē, ka datu ielādētājs ir vājā vieta, nevis GPU.
bash# if data_s creeps toward updt_s lerobot-train ... --num_workers=8 - 5Vākt kontrolpunktus, ko varat salīdzināt
save_freq noklusējuma vērtība ir 20000, tāpēc 20000 soļu palaišana atstāj vienu kontrolpunktu un neko, ar ko to salīdzināt. Iestatiet 2000. Lai publicētu uz Hub, nepieciešams --policy.repo_id.
bash--save_freq=2000 \ --policy.repo_id=${HF_USER}/smolvla_pick_place \ --save_checkpoint_to_hub=true - 6Atsākt, ja iekārta apstājas
Norādiet --config_path uz train_config.json blakus kontrolpunktam. lerobot atsakās sākt darbu esošā output_dir, ja vien jūs neatjaunojat, tāpēc jūs nevarat nejauši pārrakstīt palaišanu.
bashlerobot-train \ --config_path=<path to the saved train_config.json> \ --resume=true
Karodziņi, kas patiešām maina rezultātu
| Karodziņš | Ko tas dara | Uz 24 GB |
|---|---|---|
| --batch_size | Paraugi vienā solī, aptuveni lineāri VRAM | 4 to 8 |
| --steps | Kopējais optimizatora soļu skaits | 20000 first pass |
| --policy.scheduler_decay_steps | Kosinusa samazināšanās garums, iepriekš iestatīts 30000 | Iedarbojas tikai virs 30000 |
| --policy.use_amp | Jauktā precizitāte; SmolVLA nav dtype lauka | true when memory is tight |
| --num_workers | Datu ielādētāja procesi, noklusējums 4 | Palieliniet, līdz data_s pārstāj pieaugt |
| --dataset.eval_split | Epizožu daļa, kas tiek paturēta katram uzdevumam | 0.1, with --eval_steps |
| --policy.freeze_vision_encoder | Saglabā redzes torni iesaldētu | true on 24 GB |
| --policy.train_expert_only | Tikai ~100 M ekspertam tiek piešķirti gradienti | true first |
SmolVLA iepriekš iestata kosinusa grafiku: `scheduler_warmup_steps = 1000`, `scheduler_decay_steps = 30000`, `scheduler_decay_lr = 2.5e-6`. Vecāki padomi liecina, ka 20000 soļu izpilde tādējādi apstājas samazināšanās vidū. Versijā 0.6.1 tas nenotiek: `CosineDecayWithWarmupSchedulerConfig.build()` tiek nodots `--steps`, un zem `num_decay_steps` tas pārskalē abus, iesildīšanos no 1000 uz 666 un samazināšanos no 30000 uz 20000, izdrukājot Auto-scaling LR scheduler. Tas nekad nepārskalē uz augšu: samazināšanās tiek ierobežota ar `min(current_step, decay_steps)`, tāpēc standarta `--steps=100000` atrodas uz grīdas no 30000. soļa līdz beigām, 70 procentus no izpildes laika. Tikai šai garajai pusei joprojām ir nepieciešams `--policy.scheduler_decay_steps`. `lr` kolonna ir vieta, kur pārbaudīt.
Noklusējuma iestatījumi, ko mantojat, ja neko nemaināt
A politikas konfigurācija lerobot ietver savu optimizētāju un plānotāja iepriekšējo iestatījumu, un, ja vien nenorādāt use_policy_training_preset=false, šie iepriekšējie iestatījumi uzvar. Puse no jautājumiem, ko cilvēki uzdod par SmolVLA apmācību, tiek atbildēti ar noklusējuma iestatījumu, par kura esamību viņi nezināja.
| Iestatījums | Noklusējums lerobot 0.6.1 | Definēts |
|---|---|---|
| chunk_size / n_action_steps | 50 / 50 | SmolVLAConfig |
| num_steps (flow matching denoise) | 10 | SmolVLAConfig |
| optimizer_lr | 1e-4 | SmolVLAConfig |
| scheduler_warmup_steps | 1000 | SmolVLAConfig |
| scheduler_decay_steps | 30000 | SmolVLAConfig |
| scheduler_decay_lr | 2.5e-6 | SmolVLAConfig |
| freeze_vision_encoder | true | SmolVLAConfig |
| train_expert_only | true | SmolVLAConfig |
| batch_size / steps | 8 / 100000 | TrainPipelineConfig |
| seed / save_freq / num_workers | 1000 / 20000 / 4 | TrainPipelineConfig |
Divas rindiņas, kas pārsteidz cilvēkus, ir freeze_vision_encoder un train_expert_only, abas patiesas. Pēc noklusējuma jūs apmācāt aptuveni 100 M parametrus, nevis 450 M, tāpēc tas ietilpst 24 GB. LeRobot paša atsauces izpilde četru GPU H100 klasterī abas iestata uz nepatiesu; uz vienas 24 GB kartes tas pārvērš strādājošu izpildi par atmiņas pārpildes avāriju.
Ceļveža padoms, ja esat ierobežots ar atmiņu, ir samazināt pakešu izmēru un izmantot gradientu akumulāciju, lai atjaunotu efektīvo paketi. Lerobot 0.6.1 nav gradientu akumulācijas: TrainPipelineConfig nav šāda lauka, un virkne neparādās nekur izlaistajā paketē. AY-Robots forma rāda gradientu akumulācijas vērtību 8 priekš SmolVLA un to arī nepiemēro. Jūsu sviras uz 24 GB ir --batch_size, divi iesaldēšanas noklusējumi un --policy.use_amp.
Cik ilgi ilgst izpilde un cik daudz soļu ir pietiekami
LeRobot publicē reālā laika atskaites punktus piecām epohām aptuveni 50 epizožu datu kopā, apmēram 45000 kadru pie 30 fps. Aptuvenie skaitļi, kā norādīts dokumentācijā, bet tie ir atšķirība starp stundas un dienas gaidīšanu.
| Iestatīšana | Politika | Pakešs | Reālais laiks |
|---|---|---|---|
| Single L4 / A10G (24 GB) | smolvla | 4 | apmēram 3 līdz 6 h |
| Single A100 40 GB | smolvla | 16 | apmēram 1 līdz 2 h |
| 4 x H100 80 GB with accelerate | smolvla | 32 | apmēram 1 līdz 2 h |
| Single RTX 4090 / RTX 3090 (24 GB) | act | 8 | apmēram 30 līdz 60 min |
Noteikums ir 5 līdz 10 epohas pāri datu kopai, nevis fiksēts soļu skaits: steps_per_epoch = ceil(total_frames / (num_gpus x batch_size)). Atsauces datu kopā, uz kuru norāda dokumentācija, lerobot/svla_so100_pickplace, metadati ziņo par 50 epizodēm un 19631 kadru: pakešs 8 dod apmēram 2454 soļus uz epohu, tāpēc 20000 soļu ir aptuveni 8 epohas. Samaziniet pakeši uz pusi, un tas pats budžets nopirks pusi epohu, tāpēc atkārtojiet to ikreiz, kad maināt --batch_size.
Pielāgotās politikas palaišana atpakaļ uz rokas
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 par darbības soli ir viegli pārprast: politika izstaro chunk_size = 50 darbības uz priekšu un izpilda n_action_steps = 50 no tām, tāpēc tas, cik bieži jūs maksājat šīs izmaksas, ir atkarīgs no šiem iestatījumiem, nevis no tā, cik bieži servomotori saņem komandu. To darbību sadalīšana gabalos nodrošina, un tāpēc 245 ms modelis var vadīt 30 Hz roku. Atlikušais ir secinājumu latentums gabala beigās.
| Mērījums (SmolVLA, reāls SO-100) | Sinhronais | Asinhronais |
|---|---|---|
| Pabeigšanas laiks, paņemšana un novietošana, 10 mēģinājumi | 13.75 s | 9.70 s |
| Paņemšanas un novietošanas cikli fiksētā laika logā | 9 | 19 |
| Veiksmes rādītājs vidēji trīs uzdevumos | 78.3 % | 73.3 % |
Šo trešo rindu lielākā daļa aprakstu izlaiž. Asinhronā secināšana ir par aptuveni 30 procentiem ātrāka un aptuveni divkāršo caurlaidspēju fiksētā logā, un rakstā veiksmes rādītāji tiek saukti par salīdzināmiem, kas vidēji tā arī ir. Zem tā šķirošana samazinājās no 70 līdz 50 procentiem, savukārt paņemšana un novietošana ieguva 5. lerobot 0.6.1 satur otru sviru tajā pašā binārajā failā: --inference.type=rtc pārslēdz izpildi uz reāllaika sadalīšanu gabalos, ko skripta lietošanas bloks iesaka lēnajiem VLA, Pi0, Pi0.5 un SmolVLA.
Vadības cilpa ir no 20 līdz 485 ms par darbības soli atkarībā no modeļa, un publiskā interneta apļveida braucieni papildus pārvērš strādājošu politiku par svārstīgu. Attālā secināšana ir piemērota lēnai paņemšanai un novietošanai, nevis ātrai reaktīvai kustībai: ja uzdevumam nepieciešamas ātras korekcijas, GPU jāatrodas tajā pašā lokālajā tīklā (LAN) kā rokai.
Nav saistīts ar apmācības sesiju, taču tas izbeidz vairāk SO-100 projektu nekā jebkurš hiperparametr. Feetech STS3215 servomotori SO-100 un SO-101 darbojas ar 7.4 V; 12 V tos sabojā. LeKiwi apvieno 7.4 V roku ar 12 V bāzi, un tā nepareizais strāvas savienotājs atrod nepareizo ligzdu.
Divi ceļi uz vienu kontrolpunktu
Jums pieder mašīna, vide un atkļūdošana. Vienīgā mākoņa atkarība ir bāzes kontrolpunkta lejupielāde no Hub. Pareizais ceļš, ja vēlaties modificēt politiku, ja dati nevar atstāt jūsu tīklu vai ja karte ir dīkstāvē.
- Jūs kontrolējat CUDA, draiveri, ffmpeg būvējumu un datu ielādētāju.
- Jūs varat labot configuration_smolvla.py un pārkvalificēt tajā pašā pēcpusdienā.
- Jūs maksājat par elektrību un laiku, nevis par katru palaišanu, un pats atkļūdojat TorchCodec.
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=trueTā pati palaišana aiz veidlapas: jūs izvēlaties modeli un datu kopu, aizmugursistēma iznomā GPU atbilstoši nepieciešamajai VRAM, palaiž apmācītāju un ieraksta kontrolpunktus objektu krātuvē. Datu kopa var nākt no Hugging Face repozitorija ID, publiskā kataloga, vai no jūsu mašīnas. Sāciet ar SmolVLA uz SO-100, vai matricu apmācības lapā.
| Lauks | Noklusējums, ko platforma sūta SmolVLA | Piezīme |
|---|---|---|
| batch size | 2 | Piesardzīgi 24 GB līmenim |
| learning rate | 1e-4 | Lerobot noklusējuma iestatījums |
| max steps | 20000 | Atsauces palaišana LeRobot dokumentācijā |
| gradient accumulation | 8 | Parādīts veidlapā, nav piemērots |
| extra knobs | seed, logFreq | Seed padara palaišanu atkārtojamu |
- 2 līdz 5 stundas 24 GB līmenī, aptuveni 1 līdz 3 USD par palaišanu.
- Tās pašas darbības no termināļa /cli un no AI aģentiem /mcp.
- Secinājumu podi satur dīkstāves sargsuni, tāpēc aizmirsts pods iznīcina sevi, nevis klusi rēķina.
- Vēl nav rokas? /live straumē fizisku SO-100, ko varat vadīt bez reģistrēšanās.
Darbs, kas iestrēdzis rindā, ir spot tirgus simptoms, nevis kļūda: apmācības darbs iestrēdzis rindā. Soli pa solim: apmāciet savu pirmo politiku un apmācības dokumentācija.
Kad SmolVLA ir nepareizā izvēle
Tests, vai SmolVLA bija pareizais pirmais mēģinājums, nav tas, vai tas darbojās, bet gan tas, vai kļūme jums kaut ko pastāstīja. Sasniegt 60 vai 70 procentus, un lielāks modelis ir saprātīgs nākamais ieguldījums: dati satur signālu. Sasniegt 10 procentus, un 3 B modelis, visticamāk, arī sasniegs 10 procentus, ko jūs tikko uzzinājāt par trim dolāriem, nevis divpadsmit.

Vērts izlasīt pirms papildu izdevumiem: Pi0.5 pret SmolVLA par lielāku jaudu ar to pašu ideju, un GR00T N1.7 pret SmolVLA NVIDIA maršrutam, abi 80 GB līmenī par 4 līdz 12 USD par vienu palaidienu. Otrs veids, ACT ir lētāka bāzes līnija: 80 M parametri, 20 ms par darbības soli, bez valodu kondicionēšanas. Visi pieci atrodas politiku lapā; arēnā ir 85 modeļi un 332 etalonu rezultāti.

Pārbaudes saraksts pirms mērogošanas
- Vai
lrsasniedza savu 2.5e-6 apakšējo robežu? Zem 30000 soļiem lerobot pārmēro samazinājumu un paziņo par to startējot; virs tā, iestatiet--policy.scheduler_decay_stepspats. - Vairāk nekā viens kontrolpunkts un epizodes, kas atdalītas ar
--dataset.eval_split, lai novērtējuma zudums kaut ko nozīmētu. - Vai politika vispār kustas? Krītošam zudumam ar nekustīgu roku ir specifiski cēloņi: zudums krīt, politika neko nedara.
- Vai tā iztur ainas maiņu? Ja nē: politika darbojas tikai vienā iestatījumā.
- Vai pierakstījāt sēklu? lerobot noklusējuma vērtība ir 1000, tāpēc divi neskarti izpildījumi paliek salīdzināmi.
- Tikai tad: vairāk epizožu, vairāk variāciju vai lielāks modelis. Šādā secībā.
Par to, kāpēc šie modeļi pastāv un ko tie dara ar valodas ievadi, ir pamatinformācija; vada montāžu caur līdz pirmajam izpildījumam. Lai palaistu pabeigtu kontrolpunktu, ; ja roka nekad neparādās, .
Apmāciet SmolVLA uz savas rokas
Izvēlieties modeli un roku, un ceļvedis sniegs jums precīzas noklusējuma vērtības, datu kopas formātu un izpildes izmaksas. SmolVLA atrodas 24 GB līmenī ar izmaksām no 1 līdz 3 USD par izpildi.
Atvērt apmācību ceļvežusVai es tiešām varu precīzi pielāgot SmolVLA uz RTX 4090?▾
Jā. LeRobot skaitļošanas ceļvedis norāda, ka SmolVLA maksimālā VRAM patēriņš ir aptuveni 10 līdz 16 GB pie partijas lieluma 8 ar AdamW, un uzskaita 24 GB patērētāju kartes kā piemērotas tam. Partijas lielums 64 dokumentācijas piemērā ir savienots ar vienu A100. Atmiņa mērogojas aptuveni lineāri ar partijas lielumu, tāpēc izmantojiet 4 vai 8 un sekojiet līdzi mem_gb.
Cik daudz epizožu man patiešām ir nepieciešams?▾
AY-Robots nosaka minimumu 30. LeRobot dokumentācija iesaka aptuveni 50 un ziņo, ka 25 tās pašas uzdevuma epizodes darbojās slikti. Struktūra ir svarīgāka par skaitu: atsauces komplekts bija 5 kuba pozīcijas ar 10 epizodēm katrā, un šī atkārtošanās ir tā, kas vispārina.
Dokumentācija saka partijas lielums 64, platforma sūta partijas lielumu 2. Kurš ir pareizs?▾
Abi, dažādai aparatūrai. Dokumentācijas piemērs izmanto partijas lielumu 64 un norāda aptuveni 4 stundas 20000 soļiem uz viena A100; skaitļošanas ceļveža A100 40 GB atskaites punkts ir partijas lielums 16. Partijas lielums 2 ir tas, ko AY-Robots sūta 24 GB līmenī. Lokāli 4 līdz 8 ir vidusceļš, un ar to mainās epohu aprēķini.
SmolVLA vai ACT pirmajai palaišanai uz SO-100?▾
ACT, ja uzdevums ir viena atkārtota kustība un vēlaties ātrāko ciklu: 20 ms uz darbības soli, 80 M parametri, bez valodas kondicionēšanas. SmolVLA, ja vēlaties valodas kondicionēšanu, vairākas uzdevumu virknes vienā kontrolpunktā un iepriekš apmācītu bāzi. Abi atrodas 24 GB līmenī, tāpēc izvēle ir uzdevums, nevis budžets.
Vai man ir jāiestata --policy.scheduler_decay_steps?▾
Tikai tad, ja --steps ir virs 30000. SmolVLA iepriekš iestata kosinusa samazinājumu pie 30000 soļiem, un lerobot 0.6.1 pats to samazina īsākai palaišanai, reģistrējot "Auto-scaling LR scheduler", kad tas notiek. Tas nekad nemērogojas uz augšu, tāpēc noklusējuma --steps=100000 atstāj pēdējos 70000 soļus uz 2.5e-6 grīdas.
Sources
- SmolVLA: Vīzijas-Valodas-Darbības modelis pieejamai un efektīvai robotikai
- SmolVLA: Efektīvs Vīzijas-Valodas-Darbības modelis (Hugging Face emuārs)
- lerobot/smolvla_base modeļa karte
- LeRobot dokumentācija: SmolVLA
- LeRobot dokumentācija: Skaitļošanas aparatūras ceļvedis LeRobot apmācībai
- LeRobot dokumentācija: Instalācija
- LeRobot dokumentācija: LeRobotDataset v3.0 un v2.1 pārveidotājs
- LeRobot dokumentācija: Asinhronā secināšana
- lerobot v0.6.1: configuration_smolvla.py
- lerobot v0.6.1: TrainPipelineConfig
- lerobot v0.6.1: CosineDecayWithWarmupSchedulerConfig
- lerobot v0.6.1: lerobot_rollout.py (stratēģijas un RTC secināšana)
- lerobot v0.6.1: pyproject.toml (papildinājumi un konsoles ieejas punkti)
- lerobot vietnē PyPI
- lerobot/svla_so100_pickplace datu kopa (50 epizodes, 19631 kadri, 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