AY-Robotsin kokeilusivu: kolme tapaa aloittaa ilman omaa robottia, mukaan lukien GPU:n vuokraaminen toimintaperiaatteen päättelyyn
GR00T N1.7EtäpäättelyPilvi-GPULeRobotSO-100Viive

Aja GR00T-päättelyä ilman paikallista GPU:ta

AY-Robots ResearchAugust 23, 202619 minuutin luku

Robottikoneessasi ei ole GPU:ta. Sijoita GR00T-poliisipalvelin vuokratulle pilvi-GPU:lle, suoratoista toimintalohkoja käteen ja selvitä tarkalleen, mitä verkko sinulle maksaa.

Raspberry Pi riittää ohjaamaan -robottia sarjaväylän kautta ja noutamaan kuvia kahdesta USB-kamerasta. Se ei riitä pyörittämään kolmen miljardin parametrin : NVIDIAn README:n mukaan GR00T N1.7 -päätelmän suorittamiseen tarvitaan yksi GPU, jossa on vähintään 16 Gt VRAM-muistia. Nähdäksesi, mitä hienosäädetty -tarkistuspisteesi tekee robotin käsivarrella ostamatta korttia, aseta toimintaperiaate vuokratulle pilvi-GPU:lle, pidä robottisilmukka koneessa USB-porttien kanssa ja lähetä havainnot ja toimintapalat verkon yli.

Se toimii, se ei ole ilmaista, eikä hinta jakaudu tasaisesti eri tehtäviin. Alla: NVIDIAn oma toimintaperiaatepalvelin, lerobotin asynkroninen pino, laskutoimitus, joka kertoo etukäteen, onko ylävirran yhteys riittävän nopea, ja alustareitti. Kaikki tarkistettu Isaac-GR00T:n päähaaraa (N1.7 GA) ja lerobot 0.6.1:tä vastaan 23. elokuuta 2026.

Mitä sinun tulee tietää

  • GR00T N1.7, GR00T N1.5 ja Pi0.5 ovat noin 3 miljardin parametrin malleja. Yksikään niistä ei mahdu robottiohjaimeen ilman erillistä GPU:ta.
  • Isaac-GR00T ja lerobot toimittavat molemmat asiakas-palvelin-jaon. Sinun ei tarvitse kirjoittaa siirtoa.
  • Havainnot hallitsevat verkon kustannuksia, eivät toiminnot: kaksi pakkaamatonta 640x480 RGB-kuvaa ovat 1 843 200 tavua, noin 14,7 Mbit per kutsu, eikä kumpikaan pino pakkaa niitä.
  • AY-Robots listaa 20–485 ms per toimintavaihe mallista riippuen. Internetin edestakaiset matkat tulevat tämän päälle.
  • Etäpäätelmä sopii hitaisiin poiminta- ja sijoitustehtäviin, ei nopeaan reaktiiviseen liikkeeseen. Pidempi suoritushorisontti ostaa aikaa ja maksaa havaintojen tuoreudesta.
  • Kumpikaan palvelin ei ole turvallinen julkisessa IP-osoitteessa sellaisenaan, ja lerobotin palvelimessa on paikkaamaton RCE. Tunneloi se.

Miksi toimintaperiaate ei mahdu robottikoneeseen

Kaksi viidestä AY-Robotsin kouluttamasta toimintamallista toimii työaseman kortilla, kolme ei. Alla oleva -sarake on toimintavaihetta kohti, ja se on luku, joka kilpailee verkon edestakaisen matkan kanssa.

ToimintamalliParametritPäätelmä toimintavaihetta kohtiGPU-taso koulutukseenMinimijaksotAineiston muoto
GR00T N1.7~3 B, ~40 M trained during fine-tuning152 msA100 80 GB or H100 80 GB50LeRobot v2.0 or v2.1
GR00T N1.5~3 B165 msA100 80 GB or H100 80 GB50LeRobot v2.0 or v2.1
Pi0.5~3 B, PaliGemma backbone485 msA100 80 GB or H100 80 GB50LeRobot v3.0
SmolVLA~450 M245 msRTX 4090 or any 24 GB card30LeRobot v3.0
ACT~80 M20 msRTX 4090 or any 24 GB card50LeRobot v3.0
AY-Robotsin toimintamallisivu, joka vertailee viittä koulutettavaa toimintamallia parametrien, GPU-tason, päätelmän viiveen ja minimijaksojen perusteella.
Samana viisi riviä /policies-sivulla. Viivesarake päättää, selviääkö toimintamalli verkkohypystä.

Lue tämä päätöksenä, ei nippelitietona. 20 ms per vaihe toimii robottikoneella, eikä sinun tarvitse enää miettiä sitä. 485 ms:ssa on kulunut kolmasosa sekunnista ennen kuin paketti lähtee rakennuksestasi. ja lisäävät tarkkuuspuolen.

ACT-mallilla ei ole perusmallia

GR00T N1.7, GR00T N1.5 ja Pi0.5 alkavat toimittajan tarkistuspisteestä (nvidia/GR00T-N1.7-3B, nvidia/GR00T-N1.5-3B, lerobot/pi05_base). ACT-mallia ei ole olemassa, ennen kuin koulutat sen omaan tehtävääsi, joten mitään ei ole etänä tarjottavaksi ennen kuin koulutustyö on suoritettu. Katso ACT on SO-100.

Kaksi jo olemassa olevaa asiakas-palvelin-pinoa

Isaac-GR00T toimittaa ZeroMQ-pyyntö-vastaus-palvelimen; lerobot toimittaa gRPC-palvelimen, joka on rakennettu asynkronisen päättelyn ympärille. Molemmat hyväksyvät GR00T-tarkistuspisteen. lerobotin tuettujen käytäntöjen luettelo tiedostossa async_inference/constants.py on act, smolvla, diffusion, tdmpc, vqbet, pi0, pi05 ja groot; sen robottiluettelo on so100_follower, so101_follower, bi_so_follower ja omx_follower.

Isaac-GR00T PolicyServerlerobot async inference
Aloituspistegr00t/eval/run_gr00t_server.pypython -m lerobot.async_inference.policy_server
SiirtoZeroMQ REQ/REPgRPC, add_insecure_port / insecure_channel
Serialisointimsgpack + msgpack_numpy, allow_pickle=False enforcedpickle.dumps / pickle.loads, marked # nosec
Oletusportti55558080
Oletussidonta0.0.0.0, all interfaceslocalhost
Todennusluokan tukema api_token, jota ei välitetä komentoriviltäei mitään
Asiakkaan aikakatkaisu15000 ms (PolicyClient timeout_ms)2 s observation queue timeout
Suoritusmallisynkroninen: estä, sitten suorita palanenasynkroninen: suorita samalla kun seuraava palanen laskee

Serialisointirivillä on enemmän merkitystä kuin miltä se näyttää. GR00T:n MsgSerializer kieltäytyy object-dtype ndarray-hyötykuormista molempiin suuntiin, koska msgpack_numpy antaisi ne muuten picklelle. lerobot sen sijaan serialisoi picklellä: policy_server.py kutsuu pickle.loads pyyntötietoihin, robot_client.py serialisoi lähettämänsä havainnon. Puolustettavissa luotetussa lähiverkossa, puolustamaton kun portti on saavutettavissa internetistä.

Reitti A: NVIDIAn oma GR00T-käytäntöpalvelin

Tämä on polku, jonka NVIDIA dokumentoi SO-100- ja SO-101-laitteistoille, ja se, jota käytetään, jos tarkistuspisteesi tuli ulos examples/finetune.sh kanssa --embodiment-tag NEW_EMBODIMENT. Vaiheet lisäävät sen, mitä ylävirran README jättää pois: portin saaminen robotille altistamatta sitä kaikille muille.

  1. 1
    Asenna GR00T vuokrattuun GPU-laatikkoon

    Alimoduulit ovat pakollisia, ja git-lfs:n on oltava olemassa ennen kloonausta, tai parquet-tiedostot kansiossa demo_data saapuvat osoittimina. flash-attn ja TensorRT tulevat oletusasennuksen mukana. Ansa tuoreessa pod-kuvassa: torchcodec 0.8.0 on ainoa tuettu videotaustajärjestelmä ja lataa vain FFmpeg 4–7. Ubuntu 25.10 ja 26.04 toimittavat FFmpeg 8:n, joten GR00T epäonnistuu virheellä Could not load libtorchcodec. Asenna FFmpeg alle 8 ja aseta sen kirjastot polkuun LD_LIBRARY_PATH.

    bash
    sudo apt install git-lfs && git lfs install
    curl -LsSf https://astral.sh/uv/install.sh | sh
    sudo apt-get update && sudo apt-get install -y ffmpeg
    
    git clone --recurse-submodules https://github.com/NVIDIA/Isaac-GR00T
    cd Isaac-GR00T
    uv sync --python 3.12
    uv run python -c "import gr00t; print('GR00T installed successfully')"
  2. 2
    Todennus suljettua taustajärjestelmää vastaan

    Jokainen GR00T N1.7 -tarkistuspiste, mukaan lukien oma hienosäätösi, lataa suljetun nvidia/Cosmos-Reason2-2B ensimmäisellä käyttökerralla. Pyydä pääsy mallisivulta ja kirjaudu sisään podiin, tai lataus epäonnistuu virheellä GatedRepoError.

    bash
    uv run huggingface-cli login
    # or:  export HF_TOKEN=<your_token>
  3. 3
    Käynnistä käytäntöpalvelin

    Osoita --model-path tarkistuspistekansioosi; tällä polulla palvelin jättää huomiotta --modality-config-path, joka luetaan vain toistopolulla. Jätä pois --model-path ja välitä --dataset-path sekä --execution-horizon sen sijaan ReplayPolicy-käytännölle, joka toistaa tallennettuja toimintoja, mikä on halvin tapa todistaa johdotuksen toimivuus.

    bash
    uv run python gr00t/eval/run_gr00t_server.py \
      --model-path /workspace/so100_finetune/checkpoint-10000 \
      --embodiment-tag NEW_EMBODIMENT \
      --device cuda:0 \
      --host 127.0.0.1 --port 5555
  4. 4
    Tunneloi portti 5555 robottikoneeseen

    Sido takaisinkytkentään, kuten yllä, ja siirrä portti SSH:n tai WireGuard-tyyppisen verkon yli. Tämä tarjoaa salauksen ja todennuksen, joita ZeroMQ-pistoke ei tarjoa, noin millisekunnin ajan.

    bash
    # on the robot machine
    ssh -N -L 5555:127.0.0.1:5555 root@<pod-host> -p <pod-ssh-port>
    
    # sanity check that something answers
    nc -vz 127.0.0.1 5555
  5. 5
    Suorita robottiasiakas servojen vieressä

    Asiakas tarvitsee oman uv-ympäristönsä: se haluaa lerobotin robottiohjaimet, ei koulutuspinon. eval_so100.py tuo so100_follower, so101_follower ja koch_follower, joten välitä --robot.type joka vastaa kättäsi (ylävirran README käyttää so101_follower). Kameran avainten on vastattava koulutusta: sovitin lukee tarkalleen front ja wrist, ja niiden vaihtaminen näyttää käytännölle väärän näkymän.

    bash
    cd gr00t/eval/real_robot/SO100
    uv sync
    uv pip install --no-deps -e ../../../../
    
    uv run --no-sync python eval_so100.py \
      --robot.type=so100_follower \
      --robot.port=/dev/ttyACM0 \
      --robot.id=orange_follower \
      --robot.cameras="{ front: {type: opencv, index_or_path: 6, width: 640, height: 480, fps: 30}, wrist: {type: opencv, index_or_path: 2, width: 640, height: 480, fps: 30}}" \
      --policy_host=127.0.0.1 \
      --policy_port=5555 \
      --lang_instruction="pick up the red block and put it in the bin"
Kaksi oletusarvoa, jotka aiheuttavat ongelmia

run_gr00t_server.py käyttää oletuksena --host 0.0.0.0, siten sitoutuen jokaiseen rajapintaan: julkisella IP-osoitteella varustetussa podissa tämä on avoin päättelypäätepiste. Ja PolicyServer-luokka hyväksyy api_token-tunnuksen ja validoi sen pyyntöä kohti, mutta run_gr00t_server.py ei koskaan välitä sellaista, joten CLI-palvelin on todentamaton riippumatta siitä, mitä konfiguroit. Sido osoitteeseen 127.0.0.1 ja tunneloi. ZMQError: Address already in use tarkoittaa, että portti 5555 on varattu; välitä --port.

Reitti B: lerobot asynkroninen päättely

lerobot ratkaisee toisenlaisen ongelman. Sen sijaan, että robotti estettäisiin mallin miettiessä, asiakas jatkaa jo olemassa olevan jonon läpikäyntiä samalla kun palvelin laskee seuraavan osan. Tämä on toimintojen paloittelu viety pidemmälle, SmolVLA:n kanssa esitelty asynkroninen pino. Se toimii myös GR00T-tarkistuspisteen kanssa.

bash
# GPU machine
pip install -e ".[async]"
python -m lerobot.async_inference.policy_server \
     --host=127.0.0.1 \
     --port=8080

# robot machine, after tunnelling 8080
python -m lerobot.async_inference.robot_client \
    --server_address=127.0.0.1:8080 \
    --robot.type=so100_follower \
    --robot.port=/dev/ttyACM0 \
    --robot.id=follower_so100 \
    --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}}" \
    --task="pick up the red block and put it in the bin" \
    --policy_type=groot \
    --pretrained_name_or_path=<user>/my_groot_finetune \
    --policy_device=cuda \
    --actions_per_chunk=50 \
    --chunk_size_threshold=0.5 \
    --debug_visualize_queue_size=True
Käytäntöpalvelin GPU:lla, robottiasiakas koneella, jossa on USB-portit

Palvelin käynnistyy tyhjänä: se ei tiedä, mitä käytäntöä se palvelee, ennen kuin asiakkaan ensimmäinen kättely kertoo sen, mikä on kätevää vuokratussa podissa. Kaksi säädintä, jotka päättävät, liikkuuko varsi tasaisesti, ovat actions_per_chunk ja chunk_size_threshold (lerobot-dokumentaatio kutsuu jälkimmäistä g:ksi SmolVLA-paperin mukaan), ja dokumentoidut arvot ja toimitetut arvot eivät vastaa toisiaan.

ParametriArvo lerobot 0.6.1 -koodissaMitä se tekeeHuomautus
actions_per_chunkno default, requiredToimintoja palautettu kutsua kohdenDokumentaatiotaulukko listaa 50; dataclass-kentällä ei ole oletusarvoa, joten CLI vaatii arvon
chunk_size_threshold0.5Jonon täyttösuhde, jossa tai jonka alapuolella asiakas lähettää uuden havainnonDokumentaatiotaulukko sanoo 0.7; koodi ja dokumentaation oma esimerkki sanovat 0.5
fps30Asiakkaan ohjausnopeus, asettaa environment_dt = 1/fpsLaske sitä, jos jono tyhjenee jatkuvasti
inference_latency1/30 s (33.3 ms)Kohdepäättelyviive palvelimellaKohde, ei mittaus
obs_queue_timeout2 sKuinka kauan palvelin odottaa havaintojonossaHidas ylälinkki näkyy täällä ensin
aggregate_fn_nameweighted_averageMiten päällekkäiset palojen alueet yhdistetään0.3 vanha + 0.7 uusi; latest_only, average ja conservative toimitetaan myös. Rekisteri on AGGREGATE_FUNCTIONS tiedostossa configs.py, ei robot_client.py, kuten dokumentaatio väittää
Lerobot-käytäntöpalvelimessa on paikkaamaton RCE

CVE-2026-25874 on todentamaton etäkoodin suoritus lerobotin asynkronisessa päättelyputkessa: pickle.loads() todentamattoman gRPC-kanavan kautta ilman TLS:ää vastaanotetulle datalle, saavutettavissa SendPolicyInstructions-, SendObservations- ja GetActions-kutsujen kautta. CWE-502, CVSS 3.1 peruspisteet 9.8 NVD:ltä, 4.0 peruspisteet 9.3 määräävältä CNA:lta. Tietue listaa LeRobotin versioon 0.5.1 asti haavoittuvaksi ja nimeää sekä käytäntöpalvelimen että robottiasiakkaan, joten kätesi vieressä oleva kone on vaikutusalueella. Päivitys ei ole korjaus: tietue viittaa ylävirran ongelmaan 3047 ja korjaukseen, PR 3048, joka vaihtaa picklen safetensors-muotoon ja JSONiin, ja 23. elokuuta 2026 molemmat ovat edelleen avoinna. policy_server.py main-haarassa kutsuu edelleen pickle.loads-funktiota pyyntödataan, kun taas serve() sitoutuu add_insecure_port-funktiolla. Sido loopbackiin äläkä koskaan porttiohjaa 8080:aa.

Laskutoimitus, joka päättää, onko linkkisi riittävän nopea

Ihmiset ohittavat tämän ja käyttävät sitten päivän . Se vie kaksi minuuttia ja on lähes aina ratkaiseva.

NVIDIAn kommentoitu havaintosanakirja tiedostossa eval_so100.py kertoo, mitä verkossa kulkee: kaksi (480, 640, 3) muotoista uint8-taulukkoa, kuusi nivel-liukulukua, kielimerkkijono. Tämä on 921 600 tavua per kehys, 1 843 200 tavua kahdelle kameralle, noin 14,7 Mbit, eikä kumpikaan pino pakkaa sitä JPEG-muotoon. Takaisin tuleva palanen on muutaman kymmenen askeleen mittainen 6 liukuluvun sarja. Lähetysnopeutesi ratkaisee kaiken, ei latausnopeutesi.

LähetyskaistanleveysAika yhden havainnon lähettämiseen (14,7 Mbit)Tuomio 30 FPS käsivarrelle
10 Mbit/s, tyypillinen kotilatausnopeus~1.47 sKäyttökelvoton. Käsivarsi pysähtyy jokaisen palasen välillä.
25 Mbit/s~0.59 sVain hidas poiminta ja sijoitus, pitkällä suoritushorisontilla.
50 Mbit/s~0.29 sKäyttökelpoinen harkittuihin tehtäviin.
100 Mbit/s~0.15 sHyvä poimintaan ja sijoitukseen, näkyy nopeassa liikkeessä.
1 Gbit/s kuitu tai datakeskus~0.015 sMalli muuttuu pullonkaulaksi sen sijaan.

Budjetti, johon sinun on mahduttava

GR00T SO-100 -asiakasohjelma on synkroninen: se kutsuu policy.get_action(obs), suorittaa ensimmäiset action_horizon askelta palasta 30 FPS:llä, ja kutsuu sitten uudelleen. Palakoko ja horisontti ovat eri lukuja: NVIDIAn käyttöönotto-opas suosittelee toimintapalan kooksi 16, vähintään 32 yhdistettynä reaaliaikaiseen palasteluun, kun taas eval_so100.py toimittaa suoritushorisontin 8. Kahdeksan askelta 30 FPS:llä on 267 ms liikettä per kutsu, ja kaiken muun on mahduttava siihen.

text
observation upload   14.7 Mbit / 100 Mbit/s   = 147 ms
network round trip                            =  30 ms
model inference (AY-Robots figure, N1.7)      = 152 ms
action chunk return + deserialize             =  ~2 ms
                                                -------
total per call                                  331 ms

budget at action_horizon = 8   ->  267 ms   FAIL, arm pauses ~64 ms per chunk
budget at action_horizon = 16  ->  533 ms   fits, with headroom
budget at action_horizon = 32  -> 1067 ms   fits, observations now ~1 s stale
Työstetty esimerkki: 100 Mbit/s lähetysnopeus, 30 ms edestakainen viive, GR00T N1.7

Horisontin nostaminen on karkea korjaus eikä ilmainen: robottikäsi toimii nyt vanhentuneen havainnon perusteella. Periaatteellinen korjaus on reaaliaikainen palastelu (real-time chunking), joka laskee seuraavan palan samalla kun nykyinen suoritetaan, jäädyttää taatusti suoritettavat toiminnot ja täydentää loput; RTC-paperi raportoi sen olevan vankka päättelyviiveen suhteen ilman uudelleenkoulutusta. Tarkista ensin, missä vaiheessa tämä on. NVIDIA merkitsee RTC:n kokeelliseksi, matalan tason malliprimitiiviksi, johon pääsee käsiksi action_head.get_action(..., options={"rtc_overlap_steps": ..., "rtc_frozen_steps": ...}), jota ei ole kytketty Gr00tPolicyyn tai palvelin-asiakas-polkuun, missä options on käyttämätön, ilman testejä ja esimerkkejä. Politiikkapalvelimen kautta saat asynkronisen suorituksen, et RTC:tä.

Mitä malli maksaa ennen verkkoa

NVIDIA vertailuarvioi GR00T N1.7:n päästä päähän 4 kohinanpoistoaskeleella yhdellä kameralla. H100 80GB HBM3:lla: 85.8 ms (11.7 Hz) PyTorch eager -tilassa, 48.6 ms (20.6 Hz) torch.compile-tilassa, 27.9 ms (35.9 Hz) TensorRT:n täydellä putkella. L40 eager-tilassa kestää 128.3 ms (7.8 Hz). NVIDIA kutsuu 10 Hz:iä suositelluksi minimiksi tyypilliselle manipuloinnille, ja alle 10 Hz:n sopivaksi vain hitaille, ei-reaktiivisille tehtäville. Nämä ovat uudelleensuunnittelun nopeuksia: 10 Hz:n politiikka voi silti ohjata 30 FPS:n kättä toimintapalasoinnin avulla. Toinen kamera vie sinua väärään suuntaan.

Mittaa se ennen kuin luotat siihen

Jokainen yllä oleva luku on ennuste. Neljä komentoa muuttaa sen mittaukseksi, joka kannattaa suorittaa ennen kuin sitouttaa pod-tunnin tehtävään, joka ei olisi koskaan toiminut.

  1. 1
    Hae raaka edestakainen viive

    Podia vastaan, ei CDN:ää. Tarkkaile poikkeamaa yhtä tarkasti kuin keskiarvoa: värinä saa käden nykimään, ei keskimääräinen viive.

    bash
    ping -c 50 <pod-host>
    # the mdev column is the number that predicts stutter
  2. 2
    Mittaa todellinen lähetysnopeus, älä sitä mistä maksat

    Kotitalouksien lähetysnopeus on yleensä murto-osa latausnopeudesta, ja se on yllä olevan kaistanleveys-taulukon luku.

    bash
    # on the pod
    iperf3 -s
    
    # on the robot machine, -R omitted so this measures upload
    iperf3 -c <pod-host> -t 30
  3. 3
    Lue asiakkaan oma viiveloki

    LeRobot-robottiasiakas kirjaa palvelimelta asiakkaalle -viiveen ja deserialisointiajan jokaiselle palalle. Reitillä B et tarvitse ulkoisia työkaluja.

    text
    Received action chunk for step #240 | Latest action: #232 |
      Incoming actions: 240:289 |
      Network latency (server->client): 187.44ms |
      Deserialization time: 3.10ms
  4. 4
    Tarkkaile toimintojonon tyhjentymistä

    Anna --debug_visualize_queue_size=True, niin asiakas piirtää jonon koon ajon aikana. Jos se toistuvasti osuu nollaan, budjettisi on loppu: alenna fps:ää, nosta actions_per_chunk-arvoa tai nosta chunk_size_threshold-arvoa, jotta havainnot lähetetään useammin.

    bash
    python -m lerobot.async_inference.robot_client \
        ... \
        --debug_visualize_queue_size=True

Mihin etäpäättely todella soveltuu

Politiikka vuokratulla GPU:lla, robottikäsi työpöydälläsi
Edut
  • Voit arvioida 3 miljardin parametrin politiikkaa oikealla laitteistolla omistamatta korttia, joka maksaa enemmän kuin robottikäsi.
  • GPU vuokrataan tuntiperusteisesti, joten epäonnistunut tarkistuspiste maksaa vain muutaman dollarin.
  • Robottipuoli pysyy pienenä: lerobot-ajurit, kaksi kameraa, sarjaportti, ja voit vaihtaa tarkistuspisteitä koskematta siihen.
Haasteet
  • Pakkaamattomat havainnot hallitsevat verkon kustannuksia, ja kotitalouksien lähetysnopeus on rajoittava tekijä.
  • Jitter haittaa enemmän kuin latenssi: yhteys, jonka keskimääräinen viive on 40 ms ja piikit 300 ms, nykii, kun taas vakaa 120 ms yhteys ei nyi.
  • Nopeat reaktiiviset tehtävät eivät selviä edestakaisesta matkasta millään aikahorisontilla.
  • Molemmat palvelimet toimitetaan todentamattomina CLI-muodossa, joten tunneloinnista vastaat itse.
  • Katkennut yhteys kesken datalohkon jättää käden pitämään vanhentunutta toimintoa. Lisää oma vahtikoira robottipuolelle.
TehtäväToimiiko julkisen internetin yli?Miksi
Valitse staattinen esine, aseta se laatikkoonKylläMikään ei liiku havainnon ja toiminnon välillä.
Pinoa palikoita harkitulla tahdillaKyllä, kun action_horizon on 16 tai enemmänVirheet kertyvät riittävän hitaasti korjattavaksi seuraavassa datalohkossa.
Avaa laatikko, aseta esine sisäänYleensäKontaktirikas mutta hidas. Varo pysähdyksiä ja liikkeellelähtöjä kontaktissa.
Seuraa liikkuvaa esinettäEiPolitiikka toimii 300 ms – 1 s vanhan havainnon perusteella.
Ota kiinni, tasapainota tai toivu liukastumisestaEiKorjausikkuna on lyhyempi kuin yksi edestakainen matka.
30 Hz synkroninen suljettu silmukkaEiBudjetti on 33 ms päästä päähän. Jopa lähiverkko kamppailee.

Jos etäajo nykii samassa kohdassa jokaisessa episodissa, verkko ei todennäköisesti ole syy. Politiikka, joka epäröi aina samassa nivelkulmassa, on yleensä dataongelma; katso vianmäärityssivut, erityisesti politiikka, joka toimii vain yhdessä asetelmassa ja häviö laskee, mutta politiikka ei tee mitään.

Tee se itse vs. tee se AY-Robotsilla

  1. Vuokraa GPU spot-markkinoilta ja odota riittävää VRAM-muistia haluamaasi hintaan.
  2. Asenna CUDA, uv, ffmpeg torchcodec hyväksyy, ja GR00T-pino alimoduuleineen.
  3. Pyydä pääsyä suljettuun nvidia/Cosmos-Reason2-2B-runkoverkkoon ja aseta tunnus podiin.
  4. Hae tarkistuspisteesi podiin.
  5. Käynnistä palvelin loopback-tilassa ja rakenna sitten SSH-tunneli robottikoneesta.
  6. Asenna toinen ympäristö robottikoneeseen asiakasta ja ajureita varten.
  7. Yhdistä kameran avaimet, nivelten nimet ja kieliohje siihen, mitä tarkistuspiste näki.
  8. Valvo podia. Unohdettu A100, joka käy yön yli, maksaa enemmän kuin koe.
Tyhjäkäynnillä oleva pod on todellinen kustannus

GPU-lasku ei pysähdy, kun robotti pysähtyy. Suurin osa etäpäätelystä menetetystä rahasta menee palvelimelle, joka jäi päälle kaikkien poistuttua. Aseta hälytys tai automatisoi alasajo.

AY-Robots MCP-palvelinsivu, joka luettelee alustan toiminnot esitettyinä työkaluina tekoälyagenteille
MCP-sivu: varaus- ja päätelytoiminnot esitettyinä työkaluina, joita agentti voi kutsua.

Mitä etäpäätelysessio maksaa

Kaksi lukua on tärkeitä: kortin tuntihinta ja kuinka kauan annat sen käydä. Ensimmäinen on julkaistu; toinen yllättää ihmiset.

KorttiRunpodin yhteisöpilviRunpodin suojattu pilviSopii
A100 PCIe 80 GB1.19 USD/h1.39 USD/hGR00T N1.7, GR00T N1.5, Pi0.5
A100 SXM 80 GB1.39 USD/h1.59 USD/hSama, hieman nopeampi
H100 PCIe 80 GB1.99 USD/h2.89 USD/hNopein taso; NVIDIAn 11.7 Hz:n eager-luku on H100 80GB HBM3:lle
L40S 48 GB0.79 USD/h0.99 USD/hVain päättelyyn, yli 16 GB:n alarajan
RTX 4090 24 GB0.34 USD/h0.74 USD/hSmolVLA, ACT

Nämä hinnat luettiin Runpodin hinnoittelusivulta 23. elokuuta 2026, ja spot-markkinat liikkuvat. AY-Robots ilmoittaa sen sijaan koko ajon hinnan: 3–6 tuntia hintaan 1.20–2.00 USD tunnissa A100- tai H100-tasolla, noin 4–12 USD GR00T- tai Pi0.5-ajolle; 2–5 tuntia hintaan 0.30–0.60 USD tunnissa 24 GB:n tasolla, 1–3 USD SmolVLA:lle tai ACT:lle. Päättelysessio voittaa koulutusajon kustannuksissa vain, jos sen pysäyttää, mihin joutokäynnin valvonta on tarkoitettu. Katso laskutusdokumentaatio ja hinnoittelusivu.

AY-Robotsin kustannustaulukko, joka näyttää, minkä GPU:n kukin käytäntö tarvitsee, tyypillisen ajoajan ja hinnan sekä jaksot ennen kuin käytäntö on hyödyllinen
Kustannustaulukko osoitteessa /try: mikä kortti kukin malli tarvitsee ja mitä ajo tyypillisesti maksaa.

Jos et halua verkkoa mukaan

Etäpäättely ratkaisee laitteisto-ongelman ja luo viiveongelman. Joskus parempi vastaus on käytettävissä olevaan laitteistoon sopiva toimintamalli.

  • ACT, noin 80 miljoonaa parametria ja 20 ms per toimintavaihe, vähintään 50 episodia, mikä tahansa 24 GB kortti. Toistuvassa yksitehtäväisessä asetelmassa se usein voittaa etäkäytössä olevan 3 B -mallin, koska se ei koskaan odota pakettia.
  • SmolVLA, noin 450 miljoonaa parametria ja 245 ms per toimintavaihe, vähintään 30 episodia. Se säilyttää kielikonditionoinnin, joka ACT:ltä puuttuu, ja lerobot-dokumentaation mukaan se vie noin 2 GB päättelyvaiheessa verrattuna noin 14 GB:hen PI0:lle.
  • ACT vs GR00T N1.7 kaupan tarkkuuspuolelle.

On myös keskitie: kouluta pilvessä, arvioi paikallisesti. Hienosäätö tarvitsee 80 GB kortin eikä välitä viiveestä, joten GR00T N1.7:n kouluttaminen SO-100:lla etänä on kiistatonta. Vain arviointilooppilla on reaaliaikavaatimus; koulutusdokumentaatio ja malli- ja varsimatriisi kattavat sen puolen.

Eikö kättä ole vielä pöydällä?

Ohjaa oikeaa SO-100:aa selaimessa ilman rekisteröitymistä, vertaa viittä koulutettavaa toimintamallia niiden todellisten viivelukujen kanssa, tai vuokraa GPU ja kouluta yksi. Kolme tapaa aloittaa, yksikään ei vaadi laitteistoa, jota et omista.

Kokeile ilman laitteistoa

Usein kysytyt kysymykset

Voinko ajaa GR00T N1.7:ää Raspberry Pi:llä, jos GPU on etänä?

Kyllä, sitä varten asiakas-palvelin-jako on. Pi ajaa lerobot-ajureita, lukee kaksi kameraa ja sarjaväylän ja lähettää havainnot politiikkapalvelimelle; se ei koskaan lataa mallia. Rajoitus siirtyy VRAMista lähetyskaistanleveyteen: kaksi pakkaamatonta 640x480 RGB-kuvaa ovat 1,843,200 tavua kutsua kohden, eikä kumpikaan pino pakkaa niitä.

Kuinka paljon viivettä verkko todellisuudessa lisää?

Edestakainen aika plus havaintojen siirtoaika. Siirtoaika on 14.7 Mbit jaettuna lähetyskaistanleveydelläsi: noin 147 ms 100 Mbit/s yhteydellä, 1.47 s 10 Mbit/s yhteydellä. Molemmat tulevat mallin oman päättelyajan päälle, jonka AY-Robots ilmoittaa olevan 152 ms GR00T N1.7:lle ja 485 ms Pi0.5:lle. Mittaa pingillä ja iperf3:lla podia vastaan, ei nopeustestipalvelinta.

Onko etäpäättely riittävän hyvää todelliseen tehtävään?

Hitaaseen, harkittuun poiminta- ja sijoitustehtävään kyllä. Kaikkeen reaktiiviseen ei. NVIDIAn käyttöönottopikaopas asettaa synkronisen yksivaiheisen vaatimuksen noin 33 ms:iin päästä päähän 30 FPS:llä, ja toteaa, että kaappaus, verkko, päättely ja jälkikäsittely ylittävät rutiininomaisesti tämän ilman internetiä.

Mitä porttia palvelimet käyttävät ja onko sen avaaminen turvallista?

Isaac-GR00T:n PolicyServer käyttää oletuksena porttia 5555 ZeroMQ:n yli ja sitoo 0.0.0.0:n CLI:ssään. lerobotin oletukset ovat portti 8080 gRPC:n yli ja se sitoo localhostin. Kumpaakaan ei ole turvallista paljastaa: GR00T-luokka tukee api_tokenia, mutta run_gr00t_server.py ei koskaan välitä sellaista, ja lerobot serialisoi tietoja epävarman gRPC-kanavan yli, mikä on CVE-2026-25874. Sido loopbackiin ja käytä SSH-tunnelia.

Korjaako lerobotin päivittäminen CVE-2026-25874:n?

Ei 23. elokuuta 2026 mennessä. CVE-tietue listaa LeRobotin versioon 0.5.1 asti haavoittuvaksi ja PyPI toimittaa version 0.6.1, mutta vetopyyntö, joka poistaisi picklen asynkronisesta putkesta, on edelleen auki, ja policy_server.py main-haarassa kutsuu edelleen pickle.loadsia pyyntötietoihin. Käsittele verkon eristystä lievennyksenä, ei versionumeron nostoa, ja oleta, että myös robotin puoleinen asiakasohjelma on mukana.

Voinko käyttää lerobotin asynkronista asiakasohjelmaa GR00T-tarkistuspisteen kanssa?

Kyllä. lerobot 0.6.1 listaa grootin SUPPORTED_POLICIES-luettelossa actin, smolvlan, diffusionin, tdmpc:n, vqbetin, pi0:n ja pi05:n rinnalla, ja sekä so100_follower että so101_follower ovat SUPPORTED_ROBOTS-luettelossa. Anna --policy_type=groot ja osoita --pretrained_name_or_path tarkistuspisteeseesi. Saat asynkronisen suorituksen, jota GR00T SO-100 -esimerkki ei toteuta, pickle-kuljetuksen kustannuksella.

Lyhyt versio

Etäpäättely 3 B policylle on ratkaistu insinööritieteellinen ongelma, johon liittyy ratkaisematon fysiikan ongelma. Insinööritieteellinen osuus on kaksi komentoa ja SSH-tunneli. Fysiikka on se, että 1.8 MB:n havainnon on saavuttava toisessa maassa olevaan GPU:hun ja palattava takaisin ennen kuin robotin kädestä loppuvat toiminnot. Tee laskelmat ennen kuin vuokraat mitään, valitse tehtävä, joka sietää vanhentuneen havainnon, ja nosta suoritushorisonttia sen sijaan, että toivoisit yhteyden paranevan.

Jos et ole vielä tallentanut datajoukkoa, tallenna ensimmäinen datajoukkosi ja SO-100 asennusopas tulevat ensin, ja LeRobot-datajoukon muoto selittää, mitä tallennin kirjoittaa. Taustaa on näkö-kieli-toimintamalleissa ja virtaussovituspolitiikan työssä; areenan merkintä linkittää jokaisen vertailuarvon lähteeseen.

Sources

Sources

Ready for high-quality robotics data?

AY-Robots connects your robots to skilled operators worldwide.

Get Started