
Treeni Action Chunking Transformerit nullist SO-100-l lerobotiga: ACT konfiguratsioon, chunk_size ja n_action_steps, 100000 sammu ajakava, 20 ms järeldus.
ACT on SO-100 poliitikate seas erand. GR00T N1.7 ja N1.5 alustavad nvidia/GR00T-N1.7-3B ja nvidia/GR00T-N1.5-3B, Pi0.5 alustab lerobot/pi05_base. ACT alustab nullist: baaskontrollpunkti pole, sest see ei ole alusmudel. See on ligikaudu 80 miljoni parameetriga trafo, mida treenite nullist ühe ülesande jaoks, oma robotkäel, oma valgustuse all.
See on ka põhjus, miks see sooritab juhtimisetapi 20 ms-ga, samas kui 3 miljardi parameetriga VLA vajab 152 kuni 485 ms ja maksab 1 kuni 3 USD jooksu kohta 4 kuni 12 asemel. See juhend kirjeldab käsitsi teekonda koos lerobot SO-100 platvormil: salvestamine, act konfiguratsioon, mida chunk_size ja n_action_steps kontrollivad, 100000 sammu ajakava, väljarullimine. Seejärel sama töö AY-Robots platvormil, sealhulgas kohad, kus platvorm ei aita.
Mida peate teadma
- •ACT treenib nullist: pole baasmudelit, pole eelkoolitust, pole keelesisendit. Üks kontrollpunkt, üks ülesanne.
- •Artikkel: umbes 80 miljonit parameetrit, umbes 5 tundi 11 GB RTX 2080 Ti-l, 0,01 s järeldus.
- •lerobot vaikesätted: chunk_size 100, n_action_steps 100, batch 8, lr 1e-5, 100000 steps, seed 1000.
- •AY-Robots platvormil: 20 ms sammu kohta, viiest kiireim. Minimaalselt 50 episoodi, LeRobot v3.0, 24 GB kaart, 1 kuni 3 USD jooksu kohta.
- •See võidab ülesande, mida ta on näinud, ja kaotab hetkel, kui soovite keelelist tingimist.
Kontrollitud 23. augustil 2026 lerobot 0.6.x vastu: pyproject.toml on main reads version = "0.6.2", newest tag v0.6.1, 3 August 2026. Õpetus, mis algab python lerobot/scripts/train.py eelneb konsooli sisenemispunktidele lerobot-train, lerobot-record and lerobot-rollout.
Mis ACT tegelikult on
Action Chunking with Transformers pärineb ALOHA paberist, Learning Fine-Grained Bimanual Manipulation with Low-Cost Hardware, autoritelt Zhao, Kumar, Levine ja Finn, arXiv, 23. aprill 2023. Seade salvestab 50 Hz juures nelja veebikaameraga, mis edastavad 480x640 pilti 30 kaadrit sekundis: kaks haaratsitel, üks üleval, üks ees. Abstrakt väidab kuut oskust 80–90-protsendilise eduga, nende hulgas läbipaistva maitseainetopsi avamine ja aku sisestamine, tuginedes 10-minutilistele demonstratsioonidele.
Põhiosa on salvestussessiooni planeerimisel kasulikum: 50 demonstratsiooni ülesande kohta, välja arvatud Thread Velcro puhul 100, mis tähendab 10 kuni 20 minutit andmeid ja 30 kuni 60 minutit reaalset aega, kui lähtestamised on arvestatud. Edukus ei ole samuti ühtlane: Thread Velcro lõpeb 20 protsendiga, Put On Shoe 92-ga, Cup Open 84-ga, Prep Tape 64-ga.
| Hüperparameeter | ALOHA paber, Tabel III | lerobot peaharus |
|---|---|---|
| õppimiskiirus | 1e-5 | optimizer_lr = 1e-5 |
| partii suurus | 8 | batch_size = 8, in TrainPipelineConfig not ACTConfig |
| enkooderi / dekooderi kihid | 4 / 7 | n_encoder_layers = 4 / n_decoder_layers = 1 |
| tüki suurus k | 100 | chunk_size = 100 |
| z-i latentne dimensioon | puudub; Joon. 11 näitab 32 kuni 512 projektsiooni | latent_dim = 32 |
| ajaline ansambel | puudub; --temporal_agg viitekoodis | temporal_ensemble_coeff = None |
Artikkel loetleb 7 dekoodri kihti, lerobot tarnib 1, tahtlikult. Kommentaar failis configuration_act.py ütleb, et algses implementatsioonis on viga, mis tähendab, et kasutatakse ainult esimest kihti, viidates probleemile 25 tonyzhaozh/act-is: tegevuse pea loeb hs[0], nii et kõik seitse kihti töötavad, kuid ennustuseni jõuab ainult esimene väljund. See probleem on avatud ja vastuseta alates 23. aprillist 2024. lerobot vastab käitumisele, mis andis avaldatud tulemused, mitte trükitud numbrile. Suurendage --policy.n_decoder_layers ja te treenite mudelit, mida artikkel kunagi ei hinnanud.
Tegevuste tükeldamine on kogu idee
Tavaline käitumuslik kloonimine kaardistab ühe vaatluse ühele tegevusele ja vead kuhjuvad: kõrvalekalle viib käe jaotusest välja, tekitades halvema tegevuse, ja kolmekümne sammu pärast ei ole haarats objekti lähedalgi. Tegevuste tükeldamine ennustab k tegevust korraga ja täidab need, vähendades efektiivset horisonti k teguri võrra. See tegeleb ka inimandmetele omase tüütusega: teleoperaatorid peatuvad ja üheastmeline Markovi poliitika ei suuda modelleerida pausi, mis sõltub sellest, mis eelnes.
Artikkel ablatsioonib k-d, mitte ei kinnita seda. Ajalise ansambli väljalülitamisel, nelja seadistuse keskmisena, tõuseb edu 1 protsendilt k = 1 juures 44 protsendini k = 100 juures, seejärel väheneb 200 ja 400 juures, kui poliitika läheneb avatud ahela juhtimisele. See kõver on põhjus, miks vaikimisi väärtus on 100.
- chunk_size: mitu tulevast tegevust dekooder ühe edasisuunamise käigus ennustab. Vaikimisi 100.
- n_action_steps: mitu neist te täidate enne uuesti päringu tegemist. Vaikimisi 100, seega lerobot käivitab kogu tüki avatud ahelas.
- lerobot valideerib
n_action_steps <= chunk_sizeja tõstabValueError, kui te selle tagurpidi seate.
Operatiivselt on oluline chunk_size jagatud kaadrisagedusega. Leroboti SO-100 näidetes kasutatava 30 kaadrit sekundis juures tähendab 100-ne tüki suurus umbes 3,3 sekundit ühelt vaatluselt. Kui ülesanne vajab selles aknas korrektsiooni, siis vähendage n_action_steps, mitte chunk_size: nii säilitate pika ennustuse ja vaatlete uuesti sagedamini.
# 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=cudaSeadistage --policy.temporal_ensemble_coeff ja lerobot nõuab n_action_steps = 1, vastasel juhul tõstes NotImplementedError. Ansambli loomine pärib poliitikalt igal ajasammul ja segab selle ajasammu kattuvad ennustused kaaludega w_i = exp(-m * i), kus vanim saab w_0. Artikkel hindab seda ACT puhul 3,3 protsendile: reaalne, kuid tagasihoidlik, ja see korrutab järelduste arvu tüki pikkusega. Taskukohane 20 ms sammu kohta, mitte 485 ms juures. Vaata inference latency.
Kui ACT edestab alusmudelit
Viis treenitavat poliitikat kõrvuti, koos numbritega, mida AY-Robots mõõdab ja kasutab renditava GPU suuruse määramiseks.
| Poliitika | Perekond | Parameetrid | Samm kohta | GPU tase | Minimaalselt episoode | Andmestik |
|---|---|---|---|---|---|---|
| ACT | Tükeldav transformer, nullist | ~80 M | 20 ms | RTX 4090 / 24 GB | 50 | LeRobot v3.0 |
| SmolVLA | Kompaktne VLA | ~450 M | 245 ms | RTX 4090 / 24 GB | 30 | LeRobot v3.0 |
| GR00T N1.7 | VLA alus, difusioonipea | ~3 B (~40 M trained) | 152 ms | A100 / H100 80 GB | 50 | LeRobot v2.0 or v2.1 |
| GR00T N1.5 | VLA alus, eelkäija | ~3 B | 165 ms | A100 / H100 80 GB | 50 | LeRobot v2.0 or v2.1 |
| Pi0.5 | Voolu sobitamise VLA, vaata voolu sobitamine | ~3 B, PaliGemma backbone | 485 ms | A100 / H100 80 GB | 50 | LeRobot v3.0 |

- 20 ms tegevussammu kohta, viiest kiireim, 24 GB kaardil, mitte A100-l.
- 1 kuni 3 USD käituse kohta võrreldes 4 kuni 12-ga 3 B klassi puhul.
- Täpne kontaktirikaste tööde puhul, mida see on näinud: 88 ja 96 protsenti Slide Ziploc ja Slot Battery puhul, kus varasemad meetodid ei läbinud kunagi esimest etappi.
- Keeleline tingimine puudub: ülesande stringi ignoreeritakse, seega üks kontrollpunkt on üks ülesanne.
- Semantilised eelteadmised puuduvad: kõik, mida see teab, pärineb teie 50 episoodist.
- Kitsas üldistusvõime: kaamera liigutamine tähendab uuesti treenimist.
- See ebaõnnestub vaikselt: kadu langeb, käsi ei tee midagi, logid ei ütle midagi.
- Kiiruse eelis aitab ainult siis, kui järeldamine toimub servode kõrval.
Valige ACT, kui ülesanne ja stseen on fikseeritud ning liikumine peab olema kiire ja täpne. Valige , kui üks kontrollpunkt peab katma mitu juhist. Kaks lehekülge käsitlevad otsustust otse: ja . Avaldatud võrdlusuuringute jaoks lingib iga numbri selle allikaga.
Mida vajate enne alustamist
Üks järgiv käsi, üks juhtiv käsi , vähemalt üks kaamera, 24 GB GPU. ACT loeb ainult pilte ja liigeste asendeid. Kaks kaamerat on optimaalne: fikseeritud esivaade asjade asukoha jaoks, randmekaamera selle jaoks, mida hakkab puudutama, nagu ALOHA puhul.
| Käsi | Servod | Pinge | Osade maksumus | Staatus |
|---|---|---|---|---|
| SO-100 | Feetech STS3215 | 7.4 V | ~110 to 150 EUR | Täielik tugi, referentskäsi |
| SO-101 | Feetech STS3215 | 7.4 V | ~130 to 170 EUR | Täielik tugi |
| Koch v1.1 | Dynamixel XL330 / XL430 | 5 V and 12 V rails | ~250 to 350 EUR | Ühilduv |
| LeKiwi | Feetech STS3215 (arm) | 7.4 V arm, 12 V base | ~400 to 500 EUR | Ühilduv |
SO-100 ja SO-101 kasutavad Feetech STS3215 servosid 7.4 V siinil. Nende toitmine 12 V-ga hävitab need, piisavalt vaikselt, et inimesed süüdistavad esmalt tarkvara, ja Kochi 12 V toiteallikas sobib füüsiliselt SO-100 plaadile. Kontrolli silti. Sümptomid: servo ei reageeri, käsi tõmbleb ja vajub seejärel. Samuti SO-100 vs SO-101.
Paljast käest salvestatud andmestikuni
Alljärgnev voog on lerobot 0.6.x. Jäta see vahele, kui sul on kalibreeritud käsi ja andmestik. Vastasel juhul SO-100 alustamise juhend käsitleb kokkupanekut, salvestamise juhend käsitleb jäädvustamist ja andmestiku dokumendid formaati.
- 1Paigalda lerobot õigete lisadega
Salvestamiseks on vaja
core_scripts, treenimisekstraining, Feetech servode jaoksfeetech. 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 - 2Leia iga käe USB-port
Käivita see mõlema käega ühendatuna, eemaldades ühe, kui seda palutakse. Linuxis võib olla vaja avada sõlme õigused.
bashlerobot-find-port # on Linux, if the port exists but is unreadable: sudo chmod 666 /dev/ttyACM0 - 3Määra mootori ID-d ja edastuskiirus
SO-100 puhul toimub see enne kokkupanekut: erinevalt SO-101-st on ühendused pärast ehitamist kättesaamatud. Skript käib bussi läbi mootor haaval haaratsist alates, kirjutades ID-d EEPROM-i.
bashlerobot-setup-motors \ --robot.type=so100_follower \ --robot.port=/dev/ttyACM0 lerobot-setup-motors \ --teleop.type=so100_leader \ --teleop.port=/dev/ttyACM1 - 4Kalibreeri mõlemad käed
Määra iga liigend oma ulatuse keskele, vajuta Enter, seejärel liiguta iga liigendit läbi kogu selle ulatuse. Kalibreerimine võimaldab ühel käel treenitud poliitikal töötada teisel. Kasuta sama
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 - 5Teleopereeri üks kord kaameratega
Leroboti rusikareegel: peaksite suutma ülesannet täita ainult kaamerakujutisi vaadates. Kui te seda ei suuda, ei suuda ka ACT. See tuvastab rohkem halbu andmekogumeid kui hilisem silumine.
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 - 6Salvesta 50 episoodi
50 on AY-Robots miinimum ja see, mida ALOHA kasutas ülesande kohta. lerobot soovitab 10 objekti asukoha kohta, kaamerad fikseeritud, haare järjepidev.
nlõpetab episoodi,rsalvestab uuesti,qpeatab ja kodeerib.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-il puuduvad eelteadmised, millele toetuda, seega muutub iga ebakõla püsivaks. Kolm kõige kulukamat: kaamera nihkus episoodide 20 ja 21 vahel, valgus muutus, sest salvestasite poole komplektist pärastlõunal, haare tehti kahel viisil. Igaüks annab täiusliku välimusega kadumiskõvera ja käe, mis läheb valesse kohta. Vaata kadu langeb, poliitika ei tee midagi, poliitika töötab ainult ühes seadistuses ja kvaliteetsete treeningandmete kogumine.
Enne treenimist esita uuesti vähemalt viis episoodi. LeRoboti andmekogumi formaat salvestab kaameravoogusid, liigeste olekuid ja tegevusi episoodi kohta, episoodi, ja taasesitus suunab need tegevused tagasi käele. Kui taasesitus ülesannet ei täida, siis andmed seda ei sisalda ja treening seda ei loo.
lerobot-replay \
--robot.type=so100_follower \
--robot.port=/dev/ttyACM0 \
--robot.id=my_follower \
--dataset.repo_id=${HF_USER}/so100_cube \
--dataset.episode=0ACT-poliitika treenimine
See on kogu käsk. Kõik ACT-spetsiifiline on juba vaikimisi seadistatud, mistõttu lerobot ACT leht soovitab nendega alustada.
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 laadib ACTConfig'i, mis kohandub vastavalt sellele, kui palju mootoreid ja kaameraid teie andmestik salvestas, nii et te ei pea kunagi deklareerima vaatluse kuju. --wandb.enable=true on valikuline ja tasub end ära: kaokõver on ainus odav signaal 100000-sammulises käituses. Ajakava pärineb lerobot'i treeningkonfiguratsioonist, mitte ACTConfig'ist: 100000 sammu, partii 8, seeme 1000, kontrollpunkt iga 20000 sammu järel, logimine iga 200 sammu järel.
Täielik käitus jätab viis kontrollpunkti kataloogi, 020000 kuni 100000, pluss last sümlingi. Hoidke neid kõiki: parim poliitika ei ole sageli viimane.
| Seade | lerobot vaikeseade | AY-Robots ACT vorm | Kommentaar |
|---|---|---|---|
| partii suurus | 8 | 8 | Vähendage seda esmalt, kui jõuate VRAM-i piiridesse. |
| õppimiskiirus | 1e-5 | 1e-5 | Sama, mis ALOHA artiklis. |
| maksimaalsed sammud | 100000 | 100000 | Umbes seal, kus 50-episoodiline komplekt lakkab paranemast. |
| gradientide akumulatsioon | 1 | 1, ei kehti | Muutke selle asemel partii suurust. |
| seeme | 1000 | avatud | GR00T'i tyro sisenemispunktil pole seemet; ACT käitused on reprodutseeritavad. |
| tüki suurus / n_tegevussammu | 100 / 100 | 100 / 100, muudetav | Ennustuse ja täitmise horisont. Vähendage teist, mitte esimest. |
| kontrollpunkti sagedus | 20000 | pole avatud | saveSteps on siin GR00T-i nupp. |
ACT partii suurusega 8 ja kahe 640x480 kaameraga mahub mugavalt 24 GB-le. See lakkab mahtumast, kui inimesed suurendavad partii suurust kiiruse huvides või söödavad sellele 1920x1080 kaadreid, mida näitab üks lerobot'i salvestusnäide. Kaks ResNet-18 taustvõrku 1080p resolutsiooniga on väga erineva mäluprofiiliga. Vähendage --batch_size väärtuseks 4 enne suurema kaardi rentimist. Vaadake mälupuudus treeningul.
Kestus: umbes 5 tundi 11 GB RTX 2080 Ti peal paberis, paar tundi 100k sammu kohta lerobot'i ACT lehel, 2 kuni 5 tundi AY-Robots 24 GB tasemel. Ärge lõigake seda lühikeseks. Viiterepo README ütleb, et tõmblev või peatuv poliitika vajab tavaliselt lihtsalt rohkem treeningut, sest edu ja sujuvus paranevad pidevalt pärast kaotuse stabiliseerumist: reaalmaailma andmete puhul on vaja vähemalt 5000 epohhi ehk 3 kuni 4 korda pikemat aega pärast stabiliseerumist.
lerobot-train \
--config_path=outputs/train/act_so100_cube/checkpoints/last/pretrained_model/train_config.json \
--resume=trueTreenitud poliitika käivitamine robotkäel
Kasutuselevõtt kasutab lerobot-rollout. Kaamera võtmed peavad vastama salvestatud võtmetele: poliitika, mis on treenitud front ja wrist ei aktsepteeri cam0 ja cam1, ja rename_map ei aita, kuna see vajab eelnevalt treenitud kontrollpunkti. Ülesande stringi võib ära jätta; lerobot'i enda näide märgib selle ACT jaoks vahelejäetavaks.
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=60Hindamine käis varem läbi lerobot-record --policy.path=.... Versioonis 0.6.x on see lerobot-rollout koos --strategy.type valijaga: base, sentry (salvestamine automaatse üleslaadimisega), highlight (ringpuhver salvestatakse klahvivajutusega), dagger (inimene ahelas) ja episodic. Alates 23. augustist 2026 ütleb ACT dokumentatsiooni leht endiselt "kasutades käsku lerobot-record" otse ploki kohal, mis käivitab lerobot-rollout. Järgige käsku, mitte lauset.
Lõppmodelli asemel kontrollpunkti kinnitamiseks lisage --policy.pretrained_revision. See nõuab, et käivitus oleks alanud --save_checkpoint_to_hub=true, mis on vaikimisi välja lülitatud: ilma selleta lerobot lükkab üles ainult lõppmodelli ja mitte midagi muud. Sellega on iga kontrollpunkt märgistatud oma nullidega täidetud sammuga, nii et --policy.pretrained_revision=060000 taastab 60000 sammu oma. Selle võrdlemine 100000-ga reaalsel robotkäel on kõige odavam saadaolev eksperiment.
Kaks teed sama kontrollpunktini
Kõik eelnev on manuaalne tee ja see töötab. Platvormi tee vahetab kontrolli selle vastu, et ei pea omama GPU-d ega Pythoni keskkonda.
- Installi lerobot 0.6.x koos
core_scripts,training,feetech, ffmpegiga. - Leia pordid, määra mootori ID-d, kalibreeri mõlemad käed, salvesta 50 episoodi.
- Esita mõned episoodid uuesti, et kinnitada, et andmed sisaldavad ülesannet.
- Rendi või oma 24 GB GPU, sobitada CUDA ja PyTorch, käivita
lerobot-train --policy.type=act. - Oota paar tundi, seejärel käivita
lerobot-rolloutmasinal käe juures.
# 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=cudaTäielik kontroll: muuda configuration_act.py, lisa kaamera, hargne treener. Uurimistööks, mitte ülesande tarnimiseks, on platvorm segav tegur.
- Salvesta töölauakliendiga või too Hugging Face'i repo ID või kohalik andmestik.
- Ava ACT SO-100 juhend ja vali mudel ning andmestik. Vaikeseaded on leroboti omad; chunkSize, nActionSteps, seed ja logFreq on muudetavad.
- Taustaprogramm rendib VRAM-i järgi suurusega GPU ja kirjutab kontrollpunktid objektisalvestusse.
/api/inference/podteenindab seejärel poliitikat kohalikule robotkliendile. Tühikäigul olev valvekoer hävitab podi, nii et miski ei arveldata vaikselt.- Samad toimingud eksisteerivad CLI-s, MCP serveris ja treeningdokumentatsioonis.
See ei paranda teie andmeid: teisaldatud kaameraga andmestik treenib siin täpselt sama halvasti ja vorm ei suuda seda tuvastada. Samuti ei eemalda see latentsusprobleemi. Juhtimissilmus on 20 kuni 485 ms tegevussammu kohta, millele lisanduvad avaliku interneti edasi-tagasi reisid, ja ACT saab kõige rohkem kahju, sest selle samm on kõige lühem: 60 ms on 12-protsendiline aeglustus Pi0.5 485 ms puhul, kuid neli korda pikem samm ACT 20 ms puhul. Kaugjäreldus sobib aeglaseks valimiseks ja paigutamiseks, mitte kiireks reaktiivseks liikumiseks.

Mis tegelikult valesti läheb
Peaaegu kogu vaev ei ole treeningkäskluses. See on seda ümbritsevates asjades, järjestatuna selle järgi, kui tihti need esimesel korral hammustavad.
| Sümptom | Tavaline põhjus | Leht |
|---|---|---|
| lerobot-find-port ei näita midagi | Draiveri, kaabli või sõlme õigused | käsi ei tuvastatud |
| Kaamera puudub salvestamise ajal | Indeks muutus taaskäivitamisel või kaks kaamerat ühel USB-kontrolleril | kaamerat ei tuvastatud |
| Treening lükkab andmestiku tagasi | ACT soovib v3.0, GR00T vajab v2.1 | andmestik lükati tagasi kui v3 |
| CUDA mälu otsas | Paketi suurus suurendatud või 1080p kaadrid 480p asemel | mälu otsas treeningul |
| Kadu näeb hea välja, käsi ei tee midagi | Andmetes puudub ülesanne või kaamera liikus | kadu langeb, poliitika ei tee midagi |
| Nõkslev liikumine või paus episoodi keskel | Alatreeritud, tüki piiri seiskumine või ajastatud järelduskutse | poliitika hangub liikumise keskel |
Kaks rida väärivad rõhutamist. ACT treenib LeRobot v3.0-l, samas kui GR00T laadur jookseb sellel kokku ja vajab v2.1, seega ACT-d treeniv andmestik võib GR00T käivituse ebaõnnestuda. Ja viimasel real on kaks parandust: ACT autorid vastavad nõkslevale liikumisele rohkema treeninguga, samas kui n_action_steps väärtusega 100 maandub tõeline seiskumine tüki piiril, nähtav paus iga 3.3 sekundi järel 30 kaadrit sekundis. Veel kaks asja, mida teada: üksik surnud liigend on tavaliselt servo ID, mida kunagi ei kirjutatud, ja haarats, mis läheneb, kuid ei sulgu kunagi tähendab liiga väikest haaratsi ulatust demonstratsioonides. Täielik register: vearežiimide lehed.
Mida käivitus maksab
| Tase | Mudelid | Tööaeg | Hind tunnis | Kulu ühe käivituse kohta |
|---|---|---|---|---|
| RTX 4090 / 24 GB | ACT, SmolVLA | 2 to 5 hours | 0.30 to 0.60 USD | about 1 to 3 USD |
| A100 80 GB / H100 | GR00T N1.7, GR00T N1.5, Pi0.5 | 3 to 6 hours | 1.20 to 2.00 USD | about 4 to 12 USD |
See on argument ACT-ga alustamise kasuks, isegi kui hiljem soovitakse VLA-d. Ebaõnnestunud ACT käivitus maksab kohvi hinna ja annab tundide jooksul teada, kas teie andmestik sisaldab ülesannet. Ebaõnnestunud GR00T käivitus maksab sama õppetunni eest neli korda rohkem. Liikumine edasi GR00T N1.7 või SmolVLA hiljem on vormi muutus, mitte uuesti ehitamine. Taust: nägemis-keele-tegevuse mudelid, täielik SO-100 juhend, treena oma esimene poliitika ja imitatsioonõpe. Käsi puudub? Reaalajas leht edastab reaalajas SO-100, mida saab juhtida ilma registreerimata.
Treena ACT-d oma SO-100-l
Juhend selle täpse kombinatsiooni kohta: vaikesätted, GPU tase ja käivituse maksumus. Vali andmestik, taustasüsteem rendib kaardi ja kirjutab kontrollpunktid.
Ava treeningjuhendKas on olemas eelnevalt treenitud ACT mudel, mida saaksin selle asemel peenhäälestada?▾
Ei. ACT-l ei ole baasmudelit; see eksisteerib alles pärast selle treenimist. See ei ole tööriistade puudujääk, see ongi ACT olemus: artikkel treenib poliitika nullist iga ülesande jaoks. Tarnija kontrollpunkti jaoks kasuta GR00T N1.7 või Pi0.5.
Mitu episoodi mul tegelikult vaja on?▾
50: mida ALOHA salvestas ülesande kohta (100 Thread Velcro jaoks, mis on selle raskeim) ja AY-Robots miinimum. lerobot soovitab umbes 10 objekti asukoha kohta, kaamerad fikseeritud, haare järjepidev. Viiskümmend puhast episoodi on parem kui sada, kus kaamera liikus.
Kas peaksin muutma chunk_size väärtust 100-st?▾
Tavaliselt mitte. Ablatsioon tõuseb 1 protsendilt k = 1 juures 44 protsendini k = 100 juures ja seejärel väheneb, nii et 100 on tipu lähedal. Kui käsi tegutseb liiga kaua, vähenda hoopis n_action_steps: 30 fps juures teeb 25 uuesti päringut iga 0.8 sekundi järel.
Kui kaua treeningkäivitus aega võtab ja kas ma saan selle varem peatada?▾
Kaks kuni viis tundi 24 GB kaardil 100000 sammu jaoks. Kontrollpunktid salvestatakse iga 20000 sammu järel ja --resume=true jätkab käivitust, nii et varajane peatamine on ohutu. Lihtsalt mitte esimesel tasasel lõigul: sujuvus paraneb pärast seda, kui kadu stabiliseerub.
Kadu vähenes, kuid käsi ikka ebaõnnestub. Mis nüüd?▾
Peaaegu alati on süüdi andmestik. Esita salvestatud episoodid käe juures uuesti: kui taasesitus ülesannet ei täida, siis andmed seda ei sisalda. Seejärel kontrolli, kas midagi liikus, eriti kaamera. ACT-l puuduvad eelteadmised, seega episoodi 21 väike tõuge on püsiv.
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