Matrica treniranja AY-Robots sa pet redova politika i četiri kolone robotskih ruku, svaka ćelija povezuje na specifičan model i vodič za treniranje ruke
ACTSO-100lerobotučenje imitacijomtreniranje politike

Kako trenirati ACT na SO-100 od nule

AY-Robots ResearchAugust 23, 202616 min čitanja

Trenirajte Action Chunking Transformer od nule na SO-100 sa lerobot: 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 tačke, jer to nije temeljni model. To je transformator sa otprilike 80 miliona parametara koji trenirate od nule za jedan zadatak, na vašoj ruci, pod vašim osvjetljenjem.

To je i razlog zašto izvršava kontrolni korak za 20 ms, dok VLA sa 3 milijarde parametara treba 152 do 485 ms, i košta 1 do 3 USD po pokretanju umjesto 4 do 12. Ovaj vodič opisuje ručni put sa lerobot na SO-100: snimanje, act konfiguracija, šta chunk_size i n_action_steps kontrolišu, raspored od 100000 koraka, izvođenje. Zatim isti posao na AY-Robots, uključujući i gdje platforma ne pomaže.

Šta trebate znati

  • ACT se trenira od nule: nema osnovnog modela, nema pretreniranja, nema jezičkog unosa. Jedna kontrolna tačka, jedan zadatak.
  • Rad: oko 80 M parametara, oko 5 sati na 11 GB RTX 2080 Ti, 0.01 s inferencija.
  • lerobot podrazumijevane postavke: chunk_size 100, n_action_steps 100, batch 8, lr 1e-5, 100000 koraka, seed 1000.
  • Na AY-Robots: 20 ms po koraku, najbrži od pet. Minimum 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čko uslovljavanje.
Koje verzije ovo opisuje

Provjereno 23. augusta 2026. u odnosu na lerobot 0.6.x: pyproject.toml na main čita version = "0.6.2", najnoviji tag v0.6.1, 3. august 2026. Tutorijal koji počinje sa python lerobot/scripts/train.py prethodi ulaznim tačkama konzole lerobot-train, lerobot-record i lerobot-rollout.

Šta je ACT zapravo

Action Chunking with Transformers dolazi iz ALOHA rada, Učenje fine-zrnate bimanualne manipulacije sa niskobudžetnim hardverom, autora Zhao, Kumar, Levine i Finn, arXiv, 23. april 2023. Oprema snima na 50 Hz sa četiri web kamere koje strimuju 480x640 pri 30 fps: dvije na hvataljkama, jedna odozgo, jedna sprijeda. Apstrakt tvrdi šest vještina sa 80 do 90 posto uspjeha, uključujući otvaranje prozirne posude 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 sa 100, što je 10 do 20 minuta podataka i 30 do 60 minuta stvarnog vremena kada se uračunaju resetovanja. Uspjeh također nije ujednačen: Thread Velcro završava sa 20 posto, Put On Shoe sa 92, Cup Open 84, Prep Tape 64.

HiperparametarALOHA rad, Tabela IIIlerobot na main
stopa učenja1e-5optimizer_lr = 1e-5
veličina paketa8batch_size = 8, in TrainPipelineConfig not ACTConfig
slojevi enkodera / dekodera4 / 7n_encoder_layers = 4 / n_decoder_layers = 1
veličina bloka k100chunk_size = 100
latentna dimenzija zodsutno; Sl. 11 prikazuje projekciju 32 na 512latent_dim = 32
vremensko ansambliranjeodsutno; --temporal_agg u referentnom kodutemporal_ensemble_coeff = None
Red dekoderskog sloja nije greška u kucanju

Rad navodi 7 dekoderskih slojeva, 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 issue 25 in tonyzhaozh/act: glava akcije čita hs[0], tako da svih sedam slojeva radi, ali samo prvi izlaz dostiže predviđanje. To pitanje je otvoreno i bez odgovora od 23. aprila 2024. lerobot se podudara sa ponašanjem koje je proizvelo objavljene rezultate, a ne sa odštampanim brojem. Povećajte --policy.n_decoder_layers i trenirać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 nagomilavaju: odstupanje stavlja ruku van distribucije, proizvodeći lošiju akciju, i trideset koraka kasnije hvataljka nije ni blizu objekta. Grupisanje akcija predviđa k akcija odjednom i izvršava ih, smanjujući efektivni horizont za faktor k. Takođe rješava smetnju specifičnu za ljudske podatke: teleoperateri pauziraju, a jednokoračna Markovsko politika ne može modelirati pauzu koja zavisi od onoga što je prethodilo.

Rad ablatira k umjesto da ga tvrdi. Sa isključenim vremenskim ansamblom, prosječno preko četiri postavke, uspjeh raste sa 1 percent pri k = 1 na 44 percent pri k = 100, zatim se smanjuje na 200 i 400 kako se politika približava kontroli otvorenog kruga. Ta kriva je razlog zašto je podrazumijevana vrijednost 100.

  • chunk_size: koliko budućih akcija dekoder predviđa po prolazu unaprijed. Podrazumijevano 100.
  • n_action_steps: koliko ih izvršavate prije ponovnog upita. Podrazumijevano 100, tako da lerobot pokreće cijeli blok u otvorenoj petlji.
  • lerobot provjerava valjanost n_action_steps <= chunk_size i podiže ValueError ako je obrnuto.

Ono što je operativno važno je chunk_size podijeljen sa brzinom sličica. Pri 30 fps koje koriste lerobotovi SO-100 primjeri, blok od 100 akcija obuhvata oko 3.3 sekunde od jednog opažanja. Ako zadatak zahtijeva korekciju unutar tog prozora, smanjite n_action_steps, a ne chunk_size: zadržavate dugu predikciju i ponovo opažate češće.

bash
# 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=cuda
Skraćivanje izvršenog dijela bloka bez skraćivanja predikcije.
Zamka vremenskog ansambliranja

Postavite --policy.temporal_ensemble_coeff i lerobot zahtijeva n_action_steps = 1, inače podiže NotImplementedError. Ansambliranje postavlja upite politici u svakom vremenskom koraku i spaja preklapajuće predikcije za taj vremenski korak sa težinama w_i = exp(-m * i), pri čemu najstarija dobija w_0. Rad to navodi kao 3.3 posto za ACT: stvarno, ali skromno, i umnožava broj inferencija dužinom 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, sa brojevima koje AY-Robots mjeri i koristi za dimenzioniranje GPU-a koji iznajmljuje.

PolitikaPorodicaParametriPo korakuGPU nivoMin. epizodaSkup podataka
ACTTransformator za segmentiranje, od nule~80 M20 msRTX 4090 / 24 GB50LeRobot v3.0
SmolVLAKompaktni VLA~450 M245 msRTX 4090 / 24 GB30LeRobot v3.0
GR00T N1.7VLA temelj, difuziona glava~3 B (~40 M trained)152 msA100 / H100 80 GB50LeRobot v2.0 or v2.1
GR00T N1.5VLA temelj, prethodnik~3 B165 msA100 / H100 80 GB50LeRobot v2.0 or v2.1
Pi0.5VLA sa usklađivanjem toka, pogledajte usklađivanje toka~3 B, PaliGemma backbone485 msA100 / H100 80 GB50LeRobot v3.0
Stranica politika AY-Robotsa koja prikazuje tabelu poređenja ACT-a, SmolVLA-e, GR00T N1.5, GR00T N1.7 i Pi0.5 sa brojem parametara, GPU zahtjevima, latencijom inferencije i minimalnim brojem epizoda
Tabela /policies: ACT ima najmanji broj parametara i najkraće vrijeme koraka.
Obuka ACT-a od nule
Prednosti
  • 20 ms po koraku akcije, najbrži od pet, na kartici od 24 GB, ne na A100.
  • 1 do 3 USD po pokretanju u poređenju sa 4 do 12 za klasu 3 B.
  • Precizan kod rada sa mnogo kontakta koji je video: 88 i 96 procenata na Slide Ziploc i Slot Battery, gde prethodne metode nikada nisu prošle prvu fazu.
Kompromisi
  • Bez jezičkog uslovljavanja: niz zadataka se ignoriše, tako da je jedna kontrolna tačka jedan zadatak.
  • Bez semantičkih predznanja: sve što zna potiče iz vaših 50 epizoda.
  • Usko generalizovanje: pomerite kameru i ponovo trenirate.
  • Tiho ne uspeva: gubitak opada, ruka ne radi ništa, logovi ne govore ništa.
  • Prednost u brzini pomaže samo ako se inferencija nalazi pored servoa.

Odaberite ACT kada su zadatak i scena fiksni, a kretanje mora biti brzo i precizno. Odaberite model vizije-jezika-akcije kada jedna kontrolna tačka mora pokriti nekoliko instrukcija. Dve stranice obrađuju odluku direktno: ACT vs SmolVLA i ACT vs GR00T N1.7. Za objavljene benchmarke, unos u ACT arenu povezuje svaki broj sa njegovim izvorom.

Šta vam je potrebno pre nego što počnete

Jedna prateća ruka, jedna vodeća ruka za teleoperaciju, najmanje jedna kamera, GPU od 24 GB. ACT čita samo slike i pozicije zglobova. Dve kamere su idealne: fiksni prednji pogled za to gde se stvari nalaze, kamera na zglobu za ono što će krajnji efektor dodirnuti, kao na ALOHA-i.

RukaServomotoriNaponCijena dijelovaStatus
SO-100Feetech STS32157.4 V~110 to 150 EURPuna podrška, referentna ruka
SO-101Feetech STS32157.4 V~130 to 170 EURPuna podrška
Koch v1.1Dynamixel XL330 / XL4305 V and 12 V rails~250 to 350 EURKompatibilno
LeKiwiFeetech STS3215 (arm)7.4 V arm, 12 V base~400 to 500 EURKompatibilno
7.4 V, ne 12 V

SO-100 i SO-101 koriste Feetech STS3215 servomotore na 7.4 V naponskoj šini. 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 reaguje, ruka trza pa se spusti. Također SO-100 vs SO-101.

Od gole ruke do snimljenog skupa podataka

Proces ispod je za lerobot 0.6.x. Preskočite ga ako imate kalibriranu ruku i skup podataka. U suprotnom, SO-100 vodič za početak rada pokriva sastavljanje, vodič za snimanje pokriva snimanje i dokumentacija skupa podataka format.

  1. 1
    Instalirajte lerobot sa odgovarajućim dodacima

    Za snimanje su potrebni core_scripts, za obuku training, za Feetech servo motore feetech. Python 3.12+.

    bash
    conda 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
  2. 2
    Pronađite USB port svake ruke

    Pokrenite ga sa obe ruke priključene, isključujući jednu kada se to zatraži. Na Linuxu ćete možda morati da otvorite dozvole čvora.

    bash
    lerobot-find-port
    # on Linux, if the port exists but is unreadable:
    sudo chmod 666 /dev/ttyACM0
  3. 3
    Postavite ID-ove motora i brzinu prenosa

    Na SO-100 se ovo dešava pre montaže: za razliku od SO-101, konektori su nedostupni kada se sklopi. Skripta prolazi kroz magistralu motor po motor, počevši od hvataljke, upisujući ID-ove u EEPROM.

    bash
    lerobot-setup-motors \
        --robot.type=so100_follower \
        --robot.port=/dev/ttyACM0
    
    lerobot-setup-motors \
        --teleop.type=so100_leader \
        --teleop.port=/dev/ttyACM1
  4. 4
    Kalibrirajte obe ruke

    Postavite svaki zglob na sredinu njegovog opsega, pritisnite Enter, a zatim svaki provucite kroz ceo opseg. Kalibracija omogućava da se politika obučena na jednoj ruci pokrene na drugoj. Ponovo koristite isti id.

    bash
    lerobot-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
  5. 5
    Teleoperirajte jednom sa uključenim kamerama

    Lerobot pravilo: trebalo bi da ste u mogućnosti da obavite zadatak gledajući samo slike sa kamere. Ako ne možete, ne može ni ACT. Ovo otkriva više loših skupova podataka nego kasnije otklanjanje grešaka.

    bash
    lerobot-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
  6. 6
    Snimite 50 epizoda

    50 je minimum za AY-Robots i ono što je ALOHA koristila po zadatku. lerobot savetuje 10 po lokaciji objekta, fiksne kamere, dosledan hvat. n završava epizodu, r ponovo snima, q zaustavlja i kodira.

    bash
    HF_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
Stranica tutorijala za snimanje AY-Robots koja objašnjava kako snimiti skup podataka u LeRobot formatu iz sesije teleoperacije
Tutorijal za snimanje. Desktop klijent piše isti raspored kao lerobot-record.
Zamka koja pojede dan: nedosledan skup podataka

ACT nema prethodnih znanja na koja bi se oslonio, tako da svaka nedoslednost postaje trajna. Tri najskuplje: kamera pomerena između epizode 20 i 21, svetlo koje se promenilo jer ste pola seta snimili popodne, hvat urađen na dva načina. Svaki daje savršeno izgledajuću krivu gubitka i ruku koja ide na pogrešno mesto. Pogledajte gubitak opada, politika ne radi ništa, politika radi samo u jednom podešavanju i prikupljanje visokokvalitetnih podataka za obuku.

Pre obuke, ponovite najmanje pet epizoda. skladišti tokove kamere, stanja zglobova i akcije po , 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.

bash
lerobot-replay \
    --robot.type=so100_follower \
    --robot.port=/dev/ttyACM0 \
    --robot.id=my_follower \
    --dataset.repo_id=${HF_USER}/so100_cube \
    --dataset.episode=0
Ponovno reproduciranje epizode 0. Ako ovo ne uspije, zaustavite se i ponovno snimite.

Obuka 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.

bash
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
Naredba za obuku iz lerobot 0.6.x dokumentacije, na SO-100 skupu podataka.

--policy.type=act učitava ACTConfig, koji se prilagođava broju motora i kamera koje je vaš skup podataka snimio, tako da nikada ne morate deklarisati oblik opservacije. --wandb.enable=true je opcionalno i isplativo: kriva gubitka je jedini jeftin signal u pokretanju od 100000 koraka. Raspored dolazi iz lerobot-ove konfiguracije za obuku, a ne iz ACTConfig-a: 100000 koraka, batch 8, seed 1000, kontrolna tačka svakih 20000 koraka, logovanje svakih 200.

Potpuno pokretanje ostavlja pet direktorijuma kontrolnih tačaka, od 020000 do 100000, plus posljednji simboličku vezu. Sačuvajte ih sve: najbolja politika često nije posljednja.

Postavkalerobot podrazumevanoAY-Robots ACT formaKomentar
veličina batcha88Smanjite je prvo ako naiđete na ograničenja VRAM-a.
stopa učenja1e-51e-5Isto kao u ALOHA radu.
maksimalni koraci100000100000Otprilike gdje se skup od 50 epizoda prestaje poboljšavati.
akumulacija gradijenta11, ne primjenjuje seUmjesto toga promijenite veličinu batcha.
seed1000izloženoGR00T-ova tyro ulazna tačka nema seed; ACT pokretanja su ona koja se mogu reprodukovati.
chunk_size / n_action_steps100 / 100100 / 100, može se uređivatiHorizont predviđanja i izvršenja. Smanjite drugi, ne prvi.
učestalost kontrolnih tačaka20000nije izloženosaveSteps je ovdje GR00T-ova postavka.
Nedostatak memorije je problem veličine batcha, a ne problem kartice

ACT sa veličinom batcha 8 i dvije 640x480 kamere udobno staje na 24 GB. Prestaje da staje kada ljudi povećaju veličinu batcha radi brzine, ili mu daju 1920x1080 okvire koje prikazuje jedan lerobot primjer snimanja. Dva ResNet-18 backbona na 1080p imaju vrlo različit memorijski profil. Smanjite --batch_size na 4 prije nego što iznajmite veću karticu. Pogledajte nedostatak memorije tokom obuke.

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 nivou. Ne prekidajte rano. README referentnog repozitorijuma kaže da trzava ili politika koja pauzira obično samo treba više treninga, jer se uspjeh i glatkoća nastavljaju poboljšavati nakon što se gubitak stabilizuje: za podatke iz stvarnog svijeta potrebno je najmanje 5000 epoha, ili 3 do 4 puta duže nakon platoa.

bash
lerobot-train \
  --config_path=outputs/train/act_so100_cube/checkpoints/last/pretrained_model/train_config.json \
  --resume=true
Nastavljanje prekinutog pokretanja sa posljednje kontrolne tačke.

Pokretanje obučene politike na ruci

Implementacija koristi lerobot-rollout. Ključevi kamere moraju odgovarati snimljenim: politika obučena na front i wrist neće prihvatiti cam0 i cam1, i rename_map ne pomaže, jer je potrebna prethodno obučena kontrolna tačka. Niz zadataka se može izostaviti; lerobotov vlastiti primjer ga označava kao opcionalnog za ACT.

bash
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=60
Autonomno pokretanje bez snimanja. Koristite --strategy.type=sentry za snimanje epizoda evaluacije.
Ova komanda je nedavno preimenovana, pa se stari tutorijali ne slažu.

Evaluacija se ranije pokretala putem lerobot-record --policy.path=.... U verziji 0.6.x to je lerobot-rollout sa selektorom --strategy.type: base, sentry (snimanje sa automatskim učitavanjem), highlight (prstenasti bafer sačuvan pritiskom na taster), dagger (čovjek u petlji) i episodic. Od 23. avgusta 2026. godine, stranica dokumentacije ACT-a i dalje navodi "korištenje komande lerobot-record" direktno iznad bloka koji pokreće lerobot-rollout. Slijedite komandu, a ne rečenicu.

Da biste zakačili kontrolnu tačku umjesto konačnog modela, dodajte --policy.pretrained_revision. Za to je potrebno da je pokretanje započeto sa --save_checkpoint_to_hub=true, podrazumijevano isključeno: bez toga lerobot gura samo konačni model i ništa drugo. Sa njim, svaka kontrolna tačka je označena svojim korakom popunjenim nulama, tako da --policy.pretrained_revision=060000 vraća onu sa 60000 koraka. Poređenje sa 100000 na stvarnoj ruci je najjeftiniji dostupan eksperiment.

Dva puta do iste kontrolne tačke

Sve navedeno je ručni put i funkcioniše. Put platforme menja kontrolu za to što ne posedujete GPU ili Python okruženje.

  1. Instalirajte lerobot 0.6.x sa core_scripts, training, feetech, ffmpeg.
  2. Pronađite portove, postavite ID-ove motora, kalibrišite obe ruke, snimite 50 epizoda.
  3. Ponovo reprodukujte nekoliko epizoda da potvrdite da podaci sadrže zadatak.
  4. Iznajmite ili posedujte 24 GB GPU, uskladite CUDA i PyTorch, pokrenite lerobot-train --policy.type=act.
  5. Sačekajte nekoliko sati, zatim pokrenite lerobot-rollout na mašini kod ruke.
bash
# 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=cuda
Šta vam ovaj put pruža

Potpuna kontrola: uredite configuration_act.py, dodajte kameru, forkovajte trener. Za istraživanje, a ne za isporuku zadatka, platforma je distrakcija.

AY-Robots matrica za obuku sa pet redova politika i četiri kolone robotskih ruku, gde svaka ćelija vodi do specifičnog vodiča za obuku za tu kombinaciju modela i ruke
Matrica na /train. Red ACT naspram kolone SO-100 je vodič ovog članka.

Šta zapravo ide pogrešno

Gotovo nijedan problem nije u komandi za obuku. Problemi su u stvarima oko nje, poređani po tome koliko često se javljaju prvi put.

SimptomUobičajeni uzrokStranica
lerobot-find-port ne prikazuje ništaDrajver, kabl ili dozvole čvoraruka nije detektovana
Kamera nedostaje u trenutku snimanjaIndeks promenjen pri ponovnom pokretanju, ili dve kamere na jednom USB kontrolerukamera nije detektovana
Obuka odbija skup podatakaACT zahteva v3.0, GR00T treba v2.1skup podataka odbijen kao v3
CUDA nema dovoljno memorijeVeličina paketa povećana, ili 1080p frejmovi umesto 480pnema dovoljno memorije tokom obuke
Gubitak izgleda odlično, ruka ne radi ništaPodacima nedostaje zadatak, ili se kamera pomerilagubitak opada, politika ne radi ništa
Cimanje pokreta ili pauza usred epizodeNedovoljno obučeno, zastoj na granici bloka, ili poziv za inferenciju sa istekom vremenapolitika se zamrzava usred pokreta

Dva reda zaslužuju poseban naglasak. ACT se obučava na LeRobot v3.0 dok se GR00T-ov učitavač ruši na njemu i zahteva v2.1, tako da skup podataka koji obučava ACT može da dovede do neuspeha GR00T pokretanja. A poslednji red ima dva rešenja: autori ACT-a odgovaraju na cimanje pokreta sa više obuke, dok sa n_action_steps, pri 100, pravi zastoj se dešava na granici bloka, vidljiva pauza svakih 3.3 sekunde pri 30 fps. Još dve stvari koje treba znati: jedan mrtav zglob je obično ID serva koji nikada nije upisan, i hvataljka koja se približava ali se nikada ne zatvara znači premali opseg hvataljke u demonstracijama. Pun indeks: stranice sa režimima kvara.

Koliko košta pokretanje

NivoModeliVrijeme izvođenjaCijena po satuTrošak po izvođenju
RTX 4090 / 24 GBACT, SmolVLA2 do 5 sati0.30 to 0.60 USDoko 1 do 3 USD
A100 80 GB / H100GR00T N1.7, GR00T N1.5, Pi0.53 do 6 sati1.20 to 2.00 USDoko 4 do 12 USD

Ovo je argument za početak sa ACT-om čak i ako kasnije želite VLA. Neuspješno ACT izvođenje košta kao kafa i u roku od nekoliko sati vam govori da li vaš skup podataka sadrži zadatak. Neuspješno GR00T izvođenje košta četiri puta više za istu lekciju. Prelazak na GR00T N1.7 ili SmolVLA poslije je promjena forme, a ne ponovna izgradnja. Pozadina: modeli vida, jezika i akcije, kompletan SO-100 vodič, obučite svoju prvu politiku i učenje imitacijom. Nema ruke? Stranica uživo prenosi pravi SO-100 za upravljanje bez prijave.

Obučite ACT na vašem SO-100

Vodič za ovu tačnu kombinaciju: podrazumijevane postavke, GPU nivo i koliko košta izvođenje. Odaberite skup podataka, pozadinski sistem iznajmljuje karticu i piše kontrolne tačke.

Otvorite vodič za obuku
Postoji li preobučeni ACT model koji mogu umjesto toga fino podesiti?

Ne. ACT nema osnovni model; on postoji tek nakon što ga obučite. To nije nedostatak u alatima, to je ono što ACT jeste: rad obučava politiku od nule za svaki zadatak. Za kontrolnu tačku dobavljača, koristite GR00T N1.7 ili Pi0.5.

Koliko mi je epizoda zaista 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 je bolje od stotinu gdje se kamera pomjerila.

Trebam li promijeniti chunk_size sa 100?

Obično ne. Ablacija se penje sa 1 posto pri k = 1 na 44 posto pri k = 100 i nakon toga opada, tako da 100 sjedi blizu vrha. Ako ruka predugo ostaje u akciji, umjesto toga smanjite n_action_steps: pri 30 fps, 25 ponovnih upita svakih 0.8 sekundi.

Koliko dugo traje obuka i mogu li je ranije zaustaviti?

Dva do pet sati na kartici od 24 GB za 100000 koraka. Kontrolne tačke se spremaju svakih 20000 koraka i --resume=true nastavlja izvođenje, tako da je rano zaustavljanje sigurno. Samo ne na prvom ravnom dijelu: glatkoća se poboljšava nakon što se gubitak stabilizuje.

Gubitak se smanjio, a ruka i dalje ne uspijeva. Šta sada?

Gotovo uvijek skup podataka. Ponovo pokrenite snimljene epizode na ruci: ako ponovno pokretanje ne izvrši zadatak, podaci ga ne sadrže. Zatim provjerite da li se nešto pomjerilo, posebno kamera. ACT nema prethodna znanja, tako da je pomak u epizodi 21 trajan.

Ready for high-quality robotics data?

AY-Robots connects your robots to skilled operators worldwide.

Get Started