
Trenirajte Action Chunking Transformer od nule na SO-100 s lerobot-om: act konfiguracija, chunk_size i n_action_steps, raspored od 100000 koraka, 20 ms inferencija.
ACT je izuzetak među SO-100 politikama. GR00T N1.7 i N1.5 počinju od nvidia/GR00T-N1.7-3B i nvidia/GR00T-N1.5-3B, Pi0.5 od lerobot/pi05_base. ACT počinje od nule: nema osnovne kontrolne točke, jer to nije temeljni model. To je transformator s otprilike 80 milijuna parametara koji trenirate od nule za jedan zadatak, na vašoj ruci, pod vašim osvjetljenjem.
To je također razlog zašto izvodi kontrolni korak za 20 ms, dok VLA s 3 milijarde parametara treba 152 do 485 ms, i košta 1 do 3 USD po pokretanju umjesto 4 do 12. Ovaj vodič prolazi ručnu rutu s lerobot na SO-100: snimanje, act konfiguracija, što chunk_size i n_action_steps kontroliraju, raspored od 100000 koraka, izvođenje. Zatim isti posao na AY-Robots, uključujući i gdje platforma ne pomaže.
Što trebate znati
- •ACT se trenira od nule: nema osnovnog modela, nema pretreniranja, nema jezičnog unosa. Jedna kontrolna točka, jedan zadatak.
- •Rad: oko 80 M parametara, oko 5 sati na 11 GB RTX 2080 Ti, 0.01 s inferencije.
- •lerobot zadane postavke: chunk_size 100, n_action_steps 100, batch 8, lr 1e-5, 100000 steps, seed 1000.
- •Na AY-Robots: 20 ms po koraku, najbrži od pet. Minimalno 50 epizoda, LeRobot v3.0, kartica od 24 GB, 1 do 3 USD po pokretanju.
- •Pobjeđuje na zadatku koji je vidio, a gubi u trenutku kada želite jezično uvjetovanje.
Provjereno 23. kolovoza 2026. protiv lerobot 0.6.x: pyproject.toml na main čita version = "0.6.2", najnovija oznaka v0.6.1, 3. kolovoza 2026. Vodič koji počinje s python lerobot/scripts/train.py prethodi ulaznim točkama konzole lerobot-train, lerobot-record i lerobot-rollout.
Što je ACT zapravo
Action Chunking with Transformers dolazi iz ALOHA rada, Učenje fine-zrnate bimanualne manipulacije s jeftinim hardverom, autora Zhao, Kumar, Levine i Finn, arXiv, 23. travnja 2023. Oprema snima na 50 Hz s četiri web kamere koje streamaju 480x640 pri 30 fps: dvije na hvataljkama, jedna odozgo, jedna sprijeda. Sažetak tvrdi šest vještina s 80 do 90 posto uspješnosti, među njima otvaranje prozirne posudice za začine i umetanje baterije, iz 10 minuta demonstracija.
Glavni tekst je korisniji pri planiranju sesije snimanja: 50 demonstracija po zadatku, osim Thread Velcro na 100, što je 10 do 20 minuta podataka i 30 do 60 minuta stvarnog vremena nakon što se uračunaju resetiranja. Uspjeh također nije ujednačen: Thread Velcro završava na 20 posto, Put On Shoe na 92, Cup Open 84, Prep Tape 64.
| Hiperparametar | ALOHA rad, Tablica III | lerobot on main |
|---|---|---|
| stopa učenja | 1e-5 | optimizer_lr = 1e-5 |
| veličina paketa | 8 | batch_size = 8, in TrainPipelineConfig not ACTConfig |
| slojevi enkodera / dekodera | 4 / 7 | n_encoder_layers = 4 / n_decoder_layers = 1 |
| veličina bloka k | 100 | chunk_size = 100 |
| latentna dimenzija z | odsutno; Sl. 11 prikazuje projekciju od 32 na 512 | latent_dim = 32 |
| vremensko udruživanje | odsutno; --temporal_agg u referentnom kodu | temporal_ensemble_coeff = None |
Rad navodi 7 slojeva dekodera, lerobot isporučuje 1, namjerno. Komentar u configuration_act.py kaže da originalna implementacija ima grešku što znači da se koristi samo prvi sloj, navodeći problem 25 u tonyzhaozh/act: glava akcije čita hs[0], tako da svih sedam slojeva radi, ali samo prvi izlaz dostiže predviđanje. Taj problem je otvoren i neodgovoren od 23. travnja 2024. lerobot se podudara s ponašanjem koje je proizvelo objavljene rezultate, a ne s ispisanim brojem. Povećajte --policy.n_decoder_layers i trenirat ćete model koji rad nikada nije evaluirao.
Grupisanje akcija je cijela ideja
Obično kloniranje ponašanja preslikava jedno opažanje na jednu akciju, a greške se gomilaju: odstupanje stavlja ruku izvan distribucije, proizvodeći lošiju akciju, a trideset koraka kasnije hvataljka nije nigdje blizu objekta. Grupisanje akcija predviđa k akcija odjednom i izvršava ih, smanjujući efektivni horizont za faktor k. Također rješava smetnju specifičnu za ljudske podatke: teleoperatori pauziraju, a Markovljeva politika ne može modelirati pauzu koja ovisi o onome što je prethodilo.
Rad provodi ablacijsku studiju za k umjesto da ga pretpostavlja. S isključenim vremenskim ansambliranjem, prosječno preko četiri postavke, uspjeh raste s 1 posto pri k = 1 na 44 posto pri k = 100, zatim se smanjuje pri 200 i 400 kako se politika približava kontroli otvorene petlje. Ta krivulja je razlog zašto je zadana vrijednost 100.
- chunk_size: koliko budućih akcija dekoder predviđa po prolazu unaprijed. Zadano 100.
- n_action_steps: koliko ih izvršavate prije ponovnog upita. Zadano 100, tako da lerobot pokreće cijeli blok u otvorenoj petlji.
- lerobot provjerava
n_action_steps <= chunk_sizei podižeValueErrorako je obrnuto.
Ono što je operativno važno je chunk_size podijeljen s brzinom sličica. Pri 30 fps koje koriste lerobotovi SO-100 primjeri, blok od 100 akcija obuhvaća oko 3.3 sekunde od jednog promatranja. Ako zadatak zahtijeva korekciju unutar tog prozora, smanjite n_action_steps, a ne chunk_size: zadržavate dugo predviđanje i češće ponovno promatrate.
# predict 100 actions, re-query after 25 of them (about 0.8 s at 30 fps)
lerobot-train \
--dataset.repo_id=${HF_USER}/so100_cube \
--policy.type=act \
--policy.chunk_size=100 \
--policy.n_action_steps=25 \
--policy.device=cudaPostavite --policy.temporal_ensemble_coeff i lerobot zahtijeva n_action_steps = 1, inače podiže NotImplementedError. Ensembling postavlja upite politici u svakom vremenskom koraku i spaja preklapajuća predviđanja za taj vremenski korak s težinama w_i = exp(-m * i), pri čemu najstarije dobiva w_0. Rad to navodi kao 3.3 posto za ACT: stvarno, ali skromno, i umnožava broj inferencija duljinom bloka. Pristupačno pri 20 ms po koraku, ne pri 485 ms. Pogledajte kašnjenje inferencije.
Kada ACT nadmaši temeljni model
Pet politika koje se mogu trenirati, jedna pored druge, s brojkama koje AY-Robots mjeri i koristi za određivanje veličine GPU-a koji iznajmljuje.
| Politika | Obitelj | Parametri | Po koraku | GPU razina | Min. epizoda | Skup podataka |
|---|---|---|---|---|---|---|
| [object Object] | Chunking transformer, od nule | ~80 M | 20 ms | RTX 4090 / 24 GB | 50 | LeRobot v3.0 |
| [object Object] | Kompaktni VLA | ~450 M | 245 ms | RTX 4090 / 24 GB | 30 | LeRobot v3.0 |
| [object Object] | VLA temelj, difuzijska glava | ~3 B (~40 M trained) | 152 ms | A100 / H100 80 GB | 50 | LeRobot v2.0 or v2.1 |
| [object Object] | VLA temelj, prethodnik | ~3 B | 165 ms | A100 / H100 80 GB | 50 | LeRobot v2.0 or v2.1 |
| [object Object] | VLA s usklađivanjem toka, vidi | ~3 B, PaliGemma backbone | 485 ms | A100 / H100 80 GB | 50 | LeRobot v3.0 |

- 20 ms po koraku akcije, najbrži od pet, na kartici od 24 GB, a ne A100.
- 1 do 3 USD po pokretanju u usporedbi s 4 do 12 za klasu 3 B.
- Precizan u radu s mnogo kontakata koje je vidio: 88 i 96 posto na Slide Ziploc i Slot Battery, gdje prethodne metode nikada nisu prošle prvu fazu.
- Bez jezičnog uvjetovanja: niz zadataka se ignorira, tako da je jedna kontrolna točka jedan zadatak.
- Bez semantičkih predznanja: sve što zna potječe iz vaših 50 epizoda.
- Usko generaliziranje: pomaknite kameru i ponovno trenirate.
- Tiho ne uspijeva: gubitak pada, ruka ne radi ništa, zapisi ne govore ništa.
- Prednost brzine pomaže samo ako se zaključivanje nalazi pored servomotora.
Odaberite ACT kada su zadatak i scena fiksni, a kretanje mora biti brzo i precizno. Odaberite kada jedna kontrolna točka mora pokriti nekoliko uputa. Dvije stranice obrađuju odluku izravno: i . Za objavljene benchmarke, povezuje svaki broj s njegovim izvorom.
Što vam je potrebno prije nego počnete
Jedna prateća ruka, jedna vodeća ruka za , barem jedna kamera, GPU od 24 GB. ACT čita samo slike i položaje zglobova. Dvije kamere su idealne: fiksni prednji pogled za to gdje se stvari nalaze, kamera na zglobu za ono što će dodirnuti, kao na ALOHA-i.
| Ruka | Servomotori | Napon | Cijena dijelova | Status |
|---|---|---|---|---|
| SO-100 | Feetech STS3215 | 7.4 V | ~110 to 150 EUR | Potpuna podrška, referentna ruka |
| SO-101 | Feetech STS3215 | 7.4 V | ~130 to 170 EUR | Potpuna podrška |
| Koch v1.1 | Dynamixel XL330 / XL430 | 5 V i 12 V sabirnice | ~250 to 350 EUR | Kompatibilno |
| LeKiwi | Feetech STS3215 (ruka) | 7.4 V ruka, 12 V baza | ~400 to 500 EUR | Kompatibilno |
SO-100 i SO-101 koriste Feetech STS3215 servomotore na 7.4 V sabirnici. Napajanje od 12 V ih uništava, dovoljno tiho da ljudi prvo krive softver, a Koch 12 V napajanje fizički odgovara SO-100 ploči. Provjerite naljepnicu. Simptomi: servo ne reagira, ruka trza pa se spusti. Također SO-100 vs SO-101.
Od gole ruke do snimljenog skupa podataka
Donji tijek rada je za lerobot 0.6.x. Preskočite ako imate kalibriranu ruku i skup podataka. Inače, SO-100 vodič za početak rada pokriva sastavljanje, vodič za snimanje pokriva snimanje i dokumentacija skupa podataka format.
- 1Instalirajte lerobot s odgovarajućim dodacima
Snimanje zahtijeva
core_scripts, obukatraining, Feetech servo motorifeetech. Python 3.12+.bashconda create -y -n lerobot python=3.12 conda activate lerobot conda install ffmpeg -c conda-forge pip install 'lerobot[core_scripts,training,feetech]' lerobot-info - 2Pronađite USB priključak svake ruke
Pokrenite ga s obje ruke priključene, isključujući jednu kada se to zatraži. Na Linuxu ćete možda morati otvoriti dozvole čvora.
bashlerobot-find-port # on Linux, if the port exists but is unreadable: sudo chmod 666 /dev/ttyACM0 - 3Postavite ID-ove motora i brzinu prijenosa
Na SO-100 ovo se događa prije sastavljanja: za razliku od SO-101, konektori su nedostupni nakon što je sastavljen. Skripta prolazi kroz sabirnicu motor po motor, počevši od hvataljke, zapisujući ID-ove u EEPROM.
bashlerobot-setup-motors \ --robot.type=so100_follower \ --robot.port=/dev/ttyACM0 lerobot-setup-motors \ --teleop.type=so100_leader \ --teleop.port=/dev/ttyACM1 - 4Kalibrirajte obje ruke
Postavite svaki zglob u sredinu njegovog raspona, pritisnite Enter, a zatim svaki prođite kroz cijeli raspon. Kalibracija omogućuje da se politika obučena na jednoj ruci pokrene na drugoj. Ponovno koristite isti
id.bashlerobot-calibrate \ --robot.type=so100_follower \ --robot.port=/dev/ttyACM0 \ --robot.id=my_follower lerobot-calibrate \ --teleop.type=so100_leader \ --teleop.port=/dev/ttyACM1 \ --teleop.id=my_leader - 5Teleoperirajte jednom s uključenim kamerama
Lerobot pravilo: trebali biste moći obaviti zadatak gledajući samo slike s kamere. Ako ne možete, ne može ni ACT. Ovo otkriva više loših skupova podataka nego kasnije otklanjanje pogrešaka.
bashlerobot-teleoperate \ --robot.type=so100_follower \ --robot.port=/dev/ttyACM0 \ --robot.id=my_follower \ --robot.cameras="{ front: {type: opencv, index_or_path: 0, width: 640, height: 480, fps: 30}, wrist: {type: opencv, index_or_path: 1, width: 640, height: 480, fps: 30} }" \ --teleop.type=so100_leader \ --teleop.port=/dev/ttyACM1 \ --teleop.id=my_leader \ --display_data=true - 6Snimite 50 epizoda
50 je minimum za AY-Robots i ono što je ALOHA koristila po zadatku. lerobot savjetuje 10 po lokaciji objekta, fiksne kamere, dosljedan hvat.
nzavršava epizodu,rponovno snima,qzaustavlja i kodira.bashHF_USER=$(NO_COLOR=1 hf auth whoami | awk -F': *' 'NR==1 {print $2}') lerobot-record \ --robot.type=so100_follower \ --robot.port=/dev/ttyACM0 \ --robot.id=my_follower \ --robot.cameras="{ front: {type: opencv, index_or_path: 0, width: 640, height: 480, fps: 30}, wrist: {type: opencv, index_or_path: 1, width: 640, height: 480, fps: 30} }" \ --teleop.type=so100_leader \ --teleop.port=/dev/ttyACM1 \ --teleop.id=my_leader \ --dataset.repo_id=${HF_USER}/so100_cube \ --dataset.num_episodes=50 \ --dataset.single_task="Grab the black cube and put it in the bin" \ --display_data=true

ACT nema prethodnih znanja na koja bi se mogao osloniti, tako da svaka nedosljednost postaje trajna. Tri najskuplje: kamera pomaknuta između epizode 20 i 21, svjetlo koje se promijenilo jer ste pola seta snimili poslijepodne, hvat izveden na dva načina. Svaki daje savršeno izgledajuću krivulju gubitka i ruku koja ide na pogrešno mjesto. Pogledajte gubitak pada, politika ne radi ništa, politika radi samo u jednom postavu i prikupljanje visokokvalitetnih podataka za obuku.
Prije obuke, ponovite barem pet epizoda. Format skupa podataka LeRobot pohranjuje tokove kamere, stanja zglobova i akcije po epizodi, a ponavljanje vraća te akcije na ruku. Ako ponavljanje ne izvrši zadatak, podaci ga ne sadrže i obuka ga neće izmisliti.
lerobot-replay \
--robot.type=so100_follower \
--robot.port=/dev/ttyACM0 \
--robot.id=my_follower \
--dataset.repo_id=${HF_USER}/so100_cube \
--dataset.episode=0Obučavanje ACT politike
Ovo je cijela naredba. Sve specifično za ACT je već zadano, zbog čega lerobot ACT stranica preporučuje da se počne s njima.
lerobot-train \
--dataset.repo_id=${HF_USER}/so100_cube \
--policy.type=act \
--output_dir=outputs/train/act_so100_cube \
--job_name=act_so100_cube \
--policy.device=cuda \
--wandb.enable=true \
--policy.repo_id=${HF_USER}/act_so100_cube--policy.type=act učitava ACTConfig, koji se prilagođava broju motora i kamera koje je vaš skup podataka snimio, tako da nikada ne deklarirate oblik promatranja. --wandb.enable=true je opcionalno i isplati se: krivulja gubitka je jedini jeftin signal u pokretanju od 100000 koraka. Raspored dolazi iz lerobotove konfiguracije treninga, a ne iz ACTConfiga: 100000 koraka, serija 8, sjeme 1000, kontrolna točka svakih 20000 koraka, bilježenje svakih 200.
Potpuno pokretanje ostavlja pet direktorija kontrolnih točaka, od 020000 do 100000, plus last simboličku vezu. Zadržite ih sve: najbolja politika često nije posljednja.
| Postavka | lerobot zadano | AY-Robots ACT obrazac | Komentar |
|---|---|---|---|
| veličina serije | 8 | 8 | Prvo ga smanjite ako naiđete na ograničenja VRAM-a. |
| stopa učenja | 1e-5 | 1e-5 | Isto kao u ALOHA radu. |
| maksimalni koraci | 100000 | 100000 | Otprilike gdje se skup od 50 epizoda prestaje poboljšavati. |
| akumulacija gradijenta | 1 | 1, ne primjenjuje se | Umjesto toga promijenite veličinu serije. |
| sjeme | 1000 | izloženo | GR00T-ova tyro ulazna točka nema sjeme; ACT pokretanja su ona koja se mogu reproducirati. |
| chunk_size / n_action_steps | 100 / 100 | 100 / 100, može se uređivati | Horizont predviđanja i izvršenja. Smanjite drugi, ne prvi. |
| učestalost kontrolnih točaka | 20000 | nije izloženo | saveSteps je ovdje GR00T postavka. |
ACT s veličinom serije 8 i dvije kamere 640x480 udobno stane na 24 GB. Prestaje stati kada ljudi povećaju veličinu serije radi brzine, ili mu daju okvire 1920x1080 koje prikazuje jedan primjer lerobot snimanja. Dva ResNet-18 backbona na 1080p imaju vrlo različit memorijski profil. Smanjite --batch_size na 4 prije nego što unajmite veću karticu. Pogledajte nedostatak memorije tijekom treninga.
Trajanje: oko 5 sati na 11 GB RTX 2080 Ti u radu, nekoliko sati za 100k koraka prema lerobotovoj ACT stranici, 2 do 5 sati na AY-Robots 24 GB razini. Nemojte skraćivati. README referentnog repozitorija kaže da trzava ili zastajkujuća politika obično samo treba više treninga, jer se uspjeh i glatkoća nastavljaju poboljšavati nakon što se gubitak stabilizira: za stvarne podatke potrebno je najmanje 5000 epoha, ili 3 do 4 puta dulje nakon stabilizacije.
lerobot-train \
--config_path=outputs/train/act_so100_cube/checkpoints/last/pretrained_model/train_config.json \
--resume=truePokretanje trenirane politike na ruci
Implementacija koristi lerobot-rollout. Ključevi kamere moraju odgovarati snimljenima: politika trenirana na front i wrist neće prihvatiti cam0 i cam1, a rename_map ne pomaže, budući da je potrebna prethodno trenirana kontrolna točka. Niz zadataka može se izostaviti; lerobotov vlastiti primjer označava ga kao preskočivog za ACT.
lerobot-rollout \
--strategy.type=base \
--policy.path=${HF_USER}/act_so100_cube \
--robot.type=so100_follower \
--robot.port=/dev/ttyACM0 \
--robot.id=my_follower \
--robot.cameras="{ front: {type: opencv, index_or_path: 0, width: 640, height: 480, fps: 30}, wrist: {type: opencv, index_or_path: 1, width: 640, height: 480, fps: 30} }" \
--display_data=true \
--duration=60Evaluacija se ranije izvodila putem lerobot-record --policy.path=.... U verziji 0.6.x to je lerobot-rollout s --strategy.type selektorom: base, sentry (snimanje s automatskim prijenosom), highlight (prstenasti međuspremnik spremljen pritiskom tipke), dagger (čovjek u petlji) i episodic. Od 23. kolovoza 2026. stranica s dokumentacijom ACT-a još uvijek navodi "korištenje naredbe lerobot-record" izravno iznad bloka koji pokreće lerobot-rollout. Slijedite naredbu, a ne rečenicu.
Za fiksiranje kontrolne točke umjesto konačnog modela, dodajte --policy.pretrained_revision. Za to je potrebno da je pokretanje započelo s --save_checkpoint_to_hub=true, isključeno po zadanim postavkama: bez toga lerobot gura samo konačni model i ništa drugo. S njim je svaka kontrolna točka označena svojim korakom s vodećim nulama, tako da --policy.pretrained_revision=060000 dohvaća onu s 60000 koraka. Usporedba s 100000 na stvarnoj ruci je najjeftiniji dostupan eksperiment.
Dva puta do iste kontrolne točke
Sve navedeno je ručni put i funkcionira. Put putem platforme mijenja kontrolu za neposjedovanje GPU-a ili Python okruženja.
- Instalirajte lerobot 0.6.x s
core_scripts,training,feetech, ffmpeg. - Pronađite portove, postavite ID-ove motora, kalibrirajte obje ruke, snimite 50 epizoda.
- Ponovite nekoliko epizoda kako biste potvrdili da podaci sadrže zadatak.
- Unajmite ili posjedujte 24 GB GPU, uskladite CUDA i PyTorch, pokrenite
lerobot-train --policy.type=act. - Pričekajte nekoliko sati, zatim pokrenite
lerobot-rolloutna stroju kod ruke.
# the two commands that matter, end to end
lerobot-record --robot.type=so100_follower --robot.port=/dev/ttyACM0 \
--teleop.type=so100_leader --teleop.port=/dev/ttyACM1 \
--dataset.repo_id=${HF_USER}/so100_cube --dataset.num_episodes=50 \
--dataset.single_task="Grab the black cube"
lerobot-train --dataset.repo_id=${HF_USER}/so100_cube --policy.type=act \
--output_dir=outputs/train/act_so100_cube --policy.device=cudaPotpuna kontrola: uredite configuration_act.py, dodajte kameru, forkirajte trener. Za istraživanje, a ne za isporuku zadatka, platforma je smetnja.
- Snimajte s desktop klijentom, ili donesite Hugging Face repo ID ili lokalni skup podataka.
- Otvorite vodič za ACT na SO-100 i odaberite model i skup podataka. Zadane vrijednosti su lerobotove; chunkSize, nActionSteps, seed i logFreq su promjenjivi.
- Pozadinski sustav unajmljuje GPU veličine VRAM-a i zapisuje kontrolne točke u objektno skladište.
/api/inference/podzatim poslužuje politiku lokalnom robotskom klijentu. Nadzornik u mirovanju uništava pod, tako da se ništa ne naplaćuje tiho.- Iste operacije postoje u CLI-ju, MCP poslužitelju i dokumentaciji za obuku.
Ne popravlja vaše podatke: skup podataka s pomaknutom kamerom trenira jednako loše ovdje, a obrazac to ne može detektirati. Niti ne uklanja problem latencije. Kontrolna petlja je 20 do 485 ms po koraku akcije, s javnim internetskim povratnim putovanjima povrh toga, a ACT je najviše pogođen jer je njegov korak najkraći: 60 ms je usporavanje od 12 posto na 485 ms Pi0.5, ali četiri puta dulji korak na 20 ms ACT-a. Daljinsko zaključivanje odgovara sporom podizanju i postavljanju, a ne brzom reaktivnom kretanju.

Što zapravo pođe po zlu
Gotovo nijedan problem nije u naredbi za treniranje. Problemi su u stvarima oko nje, poredani po učestalosti pojavljivanja pri prvom pokušaju.
| Simptom | Uobičajeni uzrok | Stranica |
|---|---|---|
| lerobot-find-port ne prikazuje ništa | Drajver, kabel ili dozvole čvora | ruka nije detektirana |
| Kamera nedostaje pri snimanju | Indeks promijenjen nakon ponovnog pokretanja, ili dvije kamere na jednom USB kontroleru | kamera nije detektirana |
| Treniranje odbija skup podataka | ACT zahtijeva v3.0, GR00T treba v2.1 | skup podataka odbijen kao v3 |
| CUDA nema dovoljno memorije | Veličina paketa povećana, ili 1080p okviri umjesto 480p | nema dovoljno memorije pri treniranju |
| Gubitak izgleda odlično, ruka ne radi ništa | Podaci ne sadrže zadatak, ili se kamera pomaknula | gubitak pada, politika ne radi ništa |
| Trzavo kretanje ili pauza usred epizode | Nedovoljno trenirano, zastoj na granici bloka, ili poziv inferencije s isteklim vremenom | politika se zamrzava usred kretanja |
Dvije stavke zaslužuju naglasak. ACT se trenira na LeRobot v3.0 dok se GR00T-ov učitavač ruši na njemu i treba v2.1, tako da skup podataka koji trenira ACT može uzrokovati neuspjeh GR00T pokretanja. A posljednja stavka ima dva rješenja: autori ACT-a rješavaju trzavo kretanje s više treniranja, dok s n_action_steps na 100 pravi zastoj se događa na granici bloka, vidljiva pauza svakih 3.3 sekunde pri 30 fps. Još dvije stvari koje treba znati: jedan mrtvi zglob je obično ID serva koji nikada nije zapisan, i hvataljka koja se približava, ali se nikada ne zatvara znači premali raspon hvataljke u demonstracijama. Potpuni indeks: stranice s načinima kvara.
Koliko košta jedno pokretanje
| Razina | Modeli | Vrijeme izvođenja | Cijena po satu | Trošak po izvođenju |
|---|---|---|---|---|
| RTX 4090 / 24 GB | ACT, SmolVLA | 2 do 5 sati | 0.30 do 0.60 USD | oko 1 do 3 USD |
| A100 80 GB / H100 | GR00T N1.7, GR00T N1.5, Pi0.5 | 3 do 6 sati | 1.20 do 2.00 USD | oko 4 do 12 USD |
Ovo je argument za početak s ACT-om čak i ako kasnije želite VLA. Neuspješno pokretanje ACT-a košta kao kava i unutar nekoliko sati vam govori sadrži li vaš skup podataka zadatak. Neuspješno pokretanje GR00T-a košta četiri puta više za istu lekciju. Prelazak na GR00T N1.7 ili SmolVLA nakon toga je promjena forme, a ne ponovna izgradnja. Pozadina: modeli vizije, jezika i akcije, potpuni SO-100 vodič, trenirajte svoju prvu politiku i učenje imitacijom. Nemate ruku? Stranica uživo prikazuje pravi SO-100 za upravljanje bez prijave.
Trenirajte ACT na svom SO-100
Vodič za ovu točnu kombinaciju: zadane postavke, GPU razina i koliko košta pokretanje. Odaberite skup podataka, pozadinski sustav iznajmljuje karticu i zapisuje kontrolne točke.
Otvorite vodič za treniranjePostoji li predtrenirani ACT model koji mogu umjesto toga fino podesiti?▾
Ne. ACT nema osnovni model; on postoji tek nakon što ga trenirate. To nije nedostatak u alatima, to je ono što ACT jest: rad trenira politiku od nule za svaki zadatak. Za kontrolnu točku dobavljača, koristite GR00T N1.7 ili Pi0.5.
Koliko mi je epizoda stvarno potrebno?▾
50: ono što je ALOHA snimila po zadatku (100 za Thread Velcro, najteži) i minimum AY-Robots. lerobot savjetuje oko 10 po lokaciji objekta, fiksne kamere, dosljedan hvat. Pedeset čistih epizoda bolje je od stotinu gdje se kamera pomicala.
Trebam li promijeniti chunk_size s 100?▾
Obično ne. Ablacija raste s 1 posto pri k = 1 na 44 posto pri k = 100 i nakon toga se smanjuje, tako da 100 sjedi blizu vrha. Ako se ruka predugo obvezuje, umjesto toga smanjite n_action_steps: pri 30 fps, 25 ponovnih upita svakih 0.8 sekundi.
Koliko dugo traje treniranje i mogu li ga zaustaviti ranije?▾
Dva do pet sati na kartici od 24 GB za 100000 koraka. Kontrolne točke se spremaju svakih 20000 koraka i --resume=true nastavlja pokretanje, tako da je rano zaustavljanje sigurno. Samo ne na prvom ravnom dijelu: glatkoća se poboljšava nakon što se gubitak stabilizira.
Gubitak se smanjio, a ruka i dalje ne uspijeva. Što sada?▾
Gotovo uvijek skup podataka. Ponovno reproducirajte snimljene epizode na ruci: ako reprodukcija ne izvršava zadatak, podaci ga ne sadrže. Zatim provjerite je li se nešto pomaknulo, posebno kamera. ACT nema prethodnih znanja, tako da je pomak u epizodi 21 trajan.
Sources
- Zhao, Kumar, Levine, Finn: Learning Fine-Grained Bimanual Manipulation with Low-Cost Hardware (ACT), arXiv 2304.13705
- ALOHA / ACT project page
- tonyzhaozh/act, the reference implementation and its training-length advice
- tonyzhaozh/act issue 25: the action head reads only the first decoder layer
- huggingface/lerobot
- lerobot ACTConfig: chunk_size, n_action_steps, n_decoder_layers and the rest of the defaults
- lerobot TrainPipelineConfig: steps, batch_size, seed, save_freq, log_freq, save_checkpoint_to_hub
- lerobot train_utils: zero-padded checkpoint dirs, the last symlink and checkpoint push tagging
- lerobot v0.6.1 release, 3 August 2026
- LeRobot docs: ACT
- LeRobot docs: imitation learning on real robots (record, replay, train, rollout)
- LeRobot docs: SO-100 setup, motor ids and calibration
- LeRobot docs: installation and the optional extras
- Hugging Face blog: LeRobot Community Datasets, the ImageNet of Robotics, When and How?
- TheRobotStudio/SO-ARM100: Standard Open Arm 100
Ready for high-quality robotics data?
AY-Robots connects your robots to skilled operators worldwide.
Get Started