AY-Robots kostnadstabell som visar vilken GPU var och en av de fem policyerna behöver, den typiska körtiden och priset per körning, och hur många episoder som behövs innan policyn är användbar
VLA-träningGPU-kostnaderSO-100finjusteringrobotinlärningbudgetering

VLA Träningskostnad: Vad en finjusteringskörning verkligen kostar

AY-Robots ResearchAugust 23, 202623 min läsning

Verkliga spotmarknadspriser för GPU:er, hur länge var och en av de fem policyerna körs, vad robotarmen och demonstrationerna kostar, och de fyra ställen där pengarna tyst försvinner.

Den korta versionen

  • En körning på A100 80 GB- eller H100-nivån tar 3 till 6 timmar och kostar cirka 4 till 12 USD. På RTX 4090-nivån är det 2 till 5 timmar och cirka 1 till 3 USD.
  • Mätt på vast.ai kl. 13:44 UTC den 23 augusti 2026: en full RTX 4090 on demand för 0.13 till 0.38 USD/h, en A100 80 GB för 0.44 till 0.67, en H100 80 GB för 1.34 till 2.34. Fulla 80 GB-kort är sällsynta, med två respektive fem erbjudanden för enskilda kort.
  • GPU:n är den billigaste posten. SO-ARM100:s materialkostnad sätter ett ledar- plus följarepar till 229.88 USD, vilket motsvarar 77 till 230 körningar på 24 GB-nivån.
  • Två timmar av en person som spelar in 50 avsnitt kostar mer än den träningskörning som dessa avsnitt matar.
  • Pengar försvinner på fyra ställen: körningar med trasig data, 3B-modeller för uppgifter som en 80M-policy hanterar, GPU:er som ingen förstörde, och omkörningar av ett resultat du misslyckades med att spara.
  • AY-Robots dimensionerar kortet efter den VRAM-mängd modellen behöver och hyr det på samma spotmarknad, så körningskostnaden är marknadskostnaden.

Räkningen har fyra poster, och GPU:n är den minsta

När folk frågar vad det kostar att finjustera en vision-språk-handlingsmodell för en SO-100, menar de nästan alltid GPU-hyran. Det är den siffra som visas som en debitering på ett kort, så det är den som känns verklig. Det är också, med bred marginal, den minsta av de fyra siffror som avgör vad en fungerande policy faktiskt kostar dig.

PostVad det ärTypisk storlek för en fungerande policy
GPU-tidatt hyra ett kort för körningen1 till 12 USD per körning, och du kommer att göra 3 till 5
Robotenservon, printad ram, kameror, kablar, strömengångskostnad, 110 till 500 EUR per arm
Mänskliga timmaren person som styr armen för att spela in demonstrationer1 till 4 timmar per dataset, upprepas per uppgift
Spilldålig data, överdimensionerade modeller, glömda podsobegränsat, och den enda post du kontrollerar

Träningstiderna nedan kommer från de fem modellernas egna publikationer och arkiv, hårdvarukostnaden från den publicerade materiallistan, plattformsnumren från AY-Robots policykatalog och prissida. Där plattformen inte hjälper, anges detta i artikeln.

Vad en GPU-timme faktiskt kostar på spotmarknaden

Det finns inget enskilt pris för en A100-timme. På en marknadsplats som vast.ai sätter varje värd sin egen taxa, och den träningskörning du startar hamnar på den maskin som är billig och ledig just då. Det ärliga svaret är en distribution. Här är den, mätt den 23 augusti 2026 kl. 13:44 UTC: enskilda fulla kort, on demand, filtrerade efter verkligt VRAM.

Kortvast.ai on demand USD/h (låg / median / hög)Erbjudanden för hela kortvast.ai lägsta budRunPod Community / SäkerHugging Face
RTX 4090, 24 GB0.13 / 0.32 / 0.38240.110.34 / 0.74ej erbjuds
RTX 5090, 32 GB0.34 / 0.40 / 0.47290.190.69 / 0.99ej erbjuds
A100 80 GB, PCIe eller SXM40.44 / 0.56 / 0.6720.131.19 PCIe, 1.39 SXM / 1.39, 1.592.50 som ett Space
H100 80 GB, SXM eller PCIe1.34 / 1.80 / 2.3450.441.99 PCIe, 2.69 SXM / 2.89, 3.294.50 som en slutpunkt
H100 NVL, 94 GB1.47 / 1.47 / 2.6440.402.59 / 3.19ej erbjuds
Hur denna ögonblicksbild togs, och vad den inte är

On-demand-erbjudanden för en enda full GPU (gpu_frac == 1.0) från vast.ai:s publika bundle-API, som inte kräver något konto, filtrerade på gpu_ram så att endast äkta 80 GB-kort hamnar i 80 GB-raderna. Det filtret är viktigt: i denna läsning var alla tre enskilda A100 SXM4-erbjudanden 40 GB-delar, liksom två av de fyra A100 PCIE-erbjudandena, så att slå ihop dem till en "A100"-rad skulle ha halverat priset som rapporteras här. Hugging Face-kolumnen blandar två produkter: 2.50 USD/h är Nvidia A100 - large Spaces-hårdvara och 4.50 USD/h är en enda H100 80 GB under Inference Endpoints, vilket Spaces inte erbjuder. Betrakta medianerna som vägledande: A100 80 GB-raden bygger på två erbjudanden och H100-raden på fem, och samma fråga 36 sekunder senare returnerade ett annat 4090-antal och ett annat topppris på tre av de fem raderna. RunPods listpriser är det stabilare numret att planera utifrån.

bash
# Live, full-card, single-GPU, on-demand offers from the vast.ai public bundle API.
# No account and no API key needed. gpu_ram is in MB, so an 80 GB card is >= 80000.
python3 - <<'PY'
import json, statistics, urllib.parse, urllib.request

def offers(name, min_ram):
    q = {"rentable": {"eq": True}, "num_gpus": {"eq": 1}, "gpu_name": {"eq": name},
         "order": [["dph_total", "asc"]], "limit": 500, "type": "on-demand"}
    url = "https://console.vast.ai/api/v0/bundles/?q=" + urllib.parse.quote(json.dumps(q))
    with urllib.request.urlopen(url, timeout=60) as r:
        return [o for o in json.load(r)["offers"]
                if o["gpu_frac"] == 1.0 and o["gpu_ram"] >= min_ram]

groups = {
    "RTX 4090 24 GB": (["RTX 4090"], 24000),
    "RTX 5090 32 GB": (["RTX 5090"], 30000),
    "A100 80 GB":     (["A100 PCIE", "A100 SXM4"], 80000),
    "H100 80 GB":     (["H100 SXM", "H100 PCIE"], 80000),
    "H100 NVL 94 GB": (["H100 NVL"], 90000),
}
for label, (names, min_ram) in groups.items():
    o = [x for n in names for x in offers(n, min_ram)]
    if not o:
        print(label, "no offers"); continue
    p = sorted(x["dph_total"] for x in o)
    b = sorted(x["min_bid"] for x in o if x.get("min_bid"))
    bid = f"{b[0]:.2f}" if b else "n/a"
    print(f'{label}: n={len(p)} | {p[0]:.2f} / {statistics.median(p):.2f} / {p[-1]:.2f}'
          f' USD/h | bid floor {bid}')
PY
Den exakta frågan bakom tabellen ovan, körd två gånger under skrivandet av detta avsnitt. Kör den innan du litar på någon GPU-prisartikel, inklusive denna.
AY-Robots cost table showing which GPU each policy needs, typical run time and price per run, and how many episodes are needed before the policy is useful
Kostnadstabellen på /try: kort, körtid, pris per körning och minsta antal episoder per policy.

Varför 3B-modellerna inte kan använda det billiga kortet

En 4090-timme och en H100 80 GB-timme skiljer sig med ungefär sex gånger vid medianerna ovan. Det som tvingar dig till det dyra kortet är inte hastighet, det är minne. openpi sätter gränsen för en fullständig Pi0.5 finjustering vid 70 GB, och NVIDIA rekommenderar 40 GB eller mer för GR00T. Observera vad GR00T-siffran inte är. Dess finjusteringskonfiguration fryser språkmodellen och den visuella kodaren som standard (tune_llm och tune_visual är False, projektorn och diffusionshuvudet True), vilket är anledningen till att katalogen listar ungefär 40 M tränade parametrar av 3 B. De 40 GB är inte optimerartillstånd för 3 B vikter, det är den frysta ryggraden plus aktiveringar. Varianter med reducerad omfattning kräver mindre: openpis LoRA-väg vill ha 22.5 GB och nämner 4090, och NVIDIAs Isaac Lab Arena-arbetsflöde listar ett 24 GB enkel-GPU-alternativ för GR00T efterträning. Plattformen delar in sig i nivåer baserat på den lägsta konfiguration varje leverantör publicerar för den konfiguration den faktiskt kör. pi0 flow-matching-rapporten förklarar var det flödesmatchning fotavtrycket kommer ifrån.

UppgiftMinne som det överordnade projektet kräverKälla
pi0 / pi0.5 inferensmore than 8 GB, example RTX 4090openpi
pi0 / pi0.5 LoRA finjusteringmore than 22.5 GB, example RTX 4090openpi
pi0 / pi0.5 full finjusteringmore than 70 GB, example A100 80 GB or H100openpi
GR00T N1.7 inferens1 GPU with 16 GB or moreIsaac-GR00T
GR00T N1.7 finjustering40 GB or more recommended, H100 or L40 nodesIsaac-GR00T
GR00T finjustering, vad den tränarprojector and diffusion head; LLM and visual encoder frozen by defaultfinetune_config.py
GR00T efterträning, reducerad1 GPU with 24 GB, language model frozenIsaac Lab Arena
SmolVLA finjusteringsingle A100 for the reference 20,000-step runlerobot docs
ACT träninga single 11 GB RTX 2080 TiACT paper

Den tabellen är anledningen till att plattformen delar upp de fem modellerna i två nivåer. GR00T N1.7, GR00T N1.5 och Pi0.5 körs på A100 80 GB eller H100 eftersom det är vad leverantörerna kräver. SmolVLA och ACT körs på ett RTX 4090 eller vilket som helst 24 GB-kort eftersom det är genuint tillräckligt.

Fällan som slukar en dag: att hyra det billiga kortet för den stora modellen

En GR00T- eller Pi0.5-körning på ett 24 GB-kort misslyckas inte omedelbart. Den laddar ner bas-checkpointen, bygger dataset-indexet, startar den första framåtpåsen och dör efter några hundra steg med ett CUDA out-of-memory-fel. Du betalade för nedladdningen och installationen och fick ingenting. Lösningar: minnesbrist under träning.

Hur länge var och en av de fem modellerna faktiskt körs

Körtid är den andra halvan av kostnaden: 2.00 USD per timme är irrelevant om jobbet är 40 minuter och förödande om det är 40 timmar. Dessa är standardinställningarna AY-Robots verkligen skickar till tränaren, med körtidsfönstret och kostnaden för varje nivå.

PolicyGPU-nivåStandard max stegStandard batch (grad accum)KörtidsfönsterKostnad per körning
GR00T N1.7, ~3BA100 80 GB or H10020,00032, accum 1, tillämpligt3 to 6 h4 to 12 USD
GR00T N1.5, ~3BA100 80 GB or H1002,0001, accum 16, tillämpligt3 to 6 h4 to 12 USD
Pi0.5, ~3BA100 80 GB or H10030,0001, accum 16, ingen effekt3 to 6 h4 to 12 USD
SmolVLA, ~450MRTX 4090 or any 24 GB20,0002, accum 8, ingen effekt2 to 5 h1 to 3 USD
ACT, ~80MRTX 4090 or any 24 GB100,0008, accum 12 to 5 h1 to 3 USD
Jämförelsetabell över de fem träningsbara policyerna på AY-Robots som visar parameterantal, nödvändig GPU, inferenslatens och minsta antal episoder
De fem policyerna sida vid sida: parametrar, GPU-nivå, latens per åtgärdssteg, minimiepisoider.

Varifrån dessa körfönster kommer uppströms

  • SmolVLA: lerobot-dokumentationen anger att 20 000 steg tar ungefär 4 timmar på en enda A100. Plattformen kör samma 20 000 steg på den billigare 24 GB-nivån, därav ett fönster snarare än en fast 4 timmar.
  • ACT: den ursprungliga ALOHA-artikeln rapporterar cirka 5 timmar på ett enda 11 GB RTX 2080 Ti för en modell med 80 miljoner parametrar. Ett 4090 är flera generationer nyare men plattformen budgeterar 100 000 steg, så fönstret hamnar på samma plats.
  • GR00T: NVIDIAs referensarbetsflöde för N1.6-generationen anger ungefär 4 till 8 timmar för 20 000 steg vid batch 24 på åtta L40S-kort, och 2 till 3 timmar för 30 000 steg vid batch 16 på ett enda Ada 6000. Finjustering av en 3B VLA på ett enda kort på några timmar är normalt, inte optimistiskt.
  • Pi0.5: openpi publicerar ingen faktisk tidsåtgång, men de publicerar den 70 GB gränsen för en fullständig finjustering, vilket fastställer kortet och därmed hastigheten.

Värt att stanna upp vid det antal du inte betalar för. GR00T N1-artikeln rapporterar ungefär 50 000 H100 GPU-timmar för att förträna 2.2B-modellen, på ett kluster med upp till 1024 GPU:er, med en förträningsbatchstorlek på 16 384 för 200 000 gradientsteg. Med den uppmätta kostnaden på 1.34 till 2.34 USD per timme ovan, uppgår det till cirka 67 000 till 117 000 USD i hyrd beräkningskraft. SmolVLA-artikeln anger att dess projekt omfattar cirka 30 000 GPU-timmar över 481 gemenskapsdatauppsättningar, 22.9K episoder och 10.6M bildrutor. Du ärver allt detta för priset av en nedladdning; dina 8 USD köper de sista 20 000 stegen. Varför VLA:er byggs på detta sätt täcker den uppdelningen.

Armen: en engångskostnad som förminskar GPU-räkningen

En träningskörning kostar mindre än lunch. Roboten gör det inte. Det är därför SO-100 är viktig: det är den billigaste armen som hela imitationsinlärning verktygskedjan faktiskt stöder.

ArmServonSpänningDelkostnadStöd på AY-Robots
SO-100Feetech STS3215 bus servos7.4 V110 to 150 EURfull, referensarm
SO-101Feetech STS32157.4 V130 to 170 EURfull
Koch v1.1Dynamixel XL330 / XL4305 V and 12 V rails250 to 350 EURkompatibel
LeKiwiFeetech STS3215 arm, wheeled base7.4 V arm, 12 V base400 to 500 EURkompatibel

Den uppströms materiallistan i SO-ARM100-förrådet är mer detaljerad och värd att kontrollera mot din region: dess Delar för två armar lista uppgår till 229.88 USD eller 226.30 EUR för en ledar- plus följaruppsättning, och dess Delar för en följararm lista uppgår till 121.94 USD eller 124.30 EUR. Sex STS3215-servon à 13.89 USD styck utgör 83.34 av de 121.94, så servona är armen. Med 1 till 3 USD per SmolVLA- eller ACT-körning är ett par armar värt mellan 77 och 230 träningskörningar. Om du fortfarande väljer, SO-100 mot SO-101 är jämförelsen som spelar roll, eftersom de två är tillräckligt lika för att beslutet handlar om tillgänglighet snarare än kapacitet.

7.4 V, inte 12 V

STS3215 levereras i en 7.4 V och en 12 V variant; förrådet noterar att 12 V-delen också behöver en 12 V 5 A strömförsörjning istället för 5 V-varianten, så de två är inte utbytbara. Att mata 12 V till 7.4 V servon förstör dem, och sex servon utgör två tredjedelar av en följararms delkostnad. Kontrollera etiketten på varje servo före första uppstarten. Om servon redan beter sig konstigt: servo svarar inte, armen rycker sedan sjunker.

Mänskliga timmar: raden ingen lägger in i kalkylbladet

Detta är siffran som vänder kostnadsdiskussionen upp och ner. Att spela in demonstrationer innebär att en person flyttar en robotarm, ett avsnitt i taget, i realtid. Det går inte att köra i batchar och inte att hyra per sekund. LeRobot-datasetet inspelaren levereras med standardinställningar som gör beräkningarna enkla, alla tre bekräftade i DatasetRecordConfig: 60 sekunder per avsnitt, 60 sekunder för att återställa scenen, 50 avsnitt. Kolumnen för pengar nedan antar 15 USD för en timmes arbete, vilket är ett antagande snarare än en plattformssiffra. Ersätt med din egen taxa; förhållandet är poängen.

  1. 1
    Spela in datasetet med de standardinställningar du faktiskt kommer att debiteras för

    Detta är lerobot 0.6.1, versionen på PyPI per den 3 augusti 2026. Observera CLI-formen: inspelningen körs via konsolens startpunkt lerobot-record (lerobot.scripts.lerobot_record), inte den gamla modulvägen python -m lerobot.scripts.record. AY-Robots riktar sig mot 0.5.1, och 0.5.1-hjulet deklarerar samma startpunkter lerobot-record och lerobot-train, så formen nedan är stabil över båda. De tre tidsflaggorna är standardinställningarna uppströms, så detta är också kommandot som beräkningarna i nästa tabell antar.

    bash
    lerobot-record \
        --robot.type=so100_follower \
        --robot.port=/dev/ttyACM0 \
        --robot.id=my_follower_arm \
        --robot.cameras="{ front: {type: opencv, index_or_path: 0, width: 640, height: 480, fps: 30} }" \
        --teleop.type=so100_leader \
        --teleop.port=/dev/ttyACM1 \
        --teleop.id=my_leader_arm \
        --dataset.repo_id=${HF_USER}/pick-place-cube \
        --dataset.num_episodes=50 \
        --dataset.episode_time_s=60 \
        --dataset.reset_time_s=60 \
        --dataset.single_task="Grab the black cube and put it in the bin"
  2. 2
    Titta på vad du spelade in innan du hyr en enda GPU-minut

    Att inspektera ett dataset kostar noll USD per timme. Att upptäcka samma problem från en förlustkurva kostar 2.00 USD per timme på H100-nivån och meddelar dig fyra timmar för sent. Pusha datasetet och granska det i LeRobot-visaren, eller bläddra i AY-Robots datasetkatalog.

    bash
    # the recorder pushes to the Hub by default; disable with --dataset.push_to_hub=False
    echo https://huggingface.co/datasets/${HF_USER}/pick-place-cube
    
    # then open https://huggingface.co/spaces/lerobot/visualize_dataset
    # and scrub through episodes: are both camera streams alive on every episode?
    # is the gripper actually closing? does the arm sit at a joint limit?
  3. 3
    Träna, och se till att checkpointen överlever podden

    En hyrd maskin är per definition tillfällig, så skriv checkpoints någonstans hållbart under körningen. Två flaggor avgör om du behåller det du betalat för. --save_freq är som standard 20 000 steg, så en standardkörning av SmolVLA på 20 000 steg skriver sin första checkpoint när körningen redan är över; sänk den innan du hyr något avbrottsbenäget. --save_checkpoint_to_hub kräver --policy.repo_id och finns inte i lerobot 0.5.1, så på den versionen kopierar du själv utdatakatalogen från maskinen. Batchstorleken nedan är exemplet från uppströmsdokumentationen; AY-Robots-formuläret skickar 2 för SmolVLA och skriver till objektlagring när checkpoints dyker upp.

    bash
    lerobot-train \
        --policy.path=lerobot/smolvla_base \
        --dataset.repo_id=${HF_USER}/pick-place-cube \
        --batch_size=64 \
        --steps=20000 \
        --save_freq=2000 \
        --output_dir=outputs/train/my_smolvla \
        --job_name=my_smolvla_training \
        --policy.device=cuda \
        --policy.repo_id=${HF_USER}/my_smolvla \
        --save_checkpoint_to_hub=true
AvsnittInspelning vid 60 sÅterställning vid 60 sRealtidPlus 20 procent ominspelningarVid 15 USD per mänsklig timme
30, SmolVLA-minimum30 min30 min1 h 00 min1 h 12 mincirka 18 USD
50, de andra fyra miniminivåerna50 min50 min1 h 40 min2 h 00 mincirka 30 USD
100, ett bekvämt dataset100 min100 min3 h 20 min4 h 00 mincirka 60 USD

Jämför den högra kolumnen med kostnaden för körningen, 1 till 12 USD. Med den antagna hastigheten kostar en datamängd med 50 episoder två till sju gånger så mycket att spela in som att träna på, före kalibrering, kamerainställning och de episoder du kastar bort. Det är därför har ett direkt ekonomiskt värde. LeRobot-guiden föreslår minst 50 episoder med 10 per objektplats; SmolVLA-dokumentationen rapporterar att en 25-episoders version av samma uppgift inte var tillräcklig.

Var pengarna faktiskt försvinner

1. Körningar på data som aldrig skulle fungera

En GR00T-körning på 20 000 steg på en datamängd med två omkastade kameraströmmar kostar lika mycket som en på en ren datamängd, tar lika lång tid och producerar en förlustkurva som ser bra ut. Felet visar sig på armen, timmar senare. debiteras per timme och diagnos debiteras i dagar. Två symptom värda att komma ihåg: betyder oftast att observationerna inte innehåller vad uppgiften kräver, och betyder att datamängden hade mindre variation än du trodde.

2. Betala grundmodellpriser för en uppgift med fast kamera

ACT har ungefär 80M parametrar och designades för att tränas från grunden på 50 demonstrationer av en uppgift. GR00T N1.7 har ungefär 3B med en förtränad ryggrad. För en fastskruvad kamera, ett fast bord och ett objekt, lyckas 80M-modellen ofta, körs med cirka 20 ms per åtgärdssteg istället för 152 ms, och kostar 1 till 3 USD per körning istället för 4 till 12. Spendera 3 USD på att ta reda på om den billiga modellen fungerar innan du spenderar 12 USD på den dyra. ACT mot SmolVLA och GR00T N1.7 mot Pi0.5 visar var respektive slutar vara det rätta svaret; modellarenan har 85 modeller och 332 benchmarkresultat.

3. GPU:n du glömde bort

Det billigaste misstaget att förhindra och det vanligaste att göra. En instans som startas på en fredag för att felsöka något faktureras över helgen med samma taxa som en riktig körning.

KortMedianpris i ögonblicksbildenInaktiv i 24 hInaktiv i 7 dagarDet motsvarar
RTX 40900.32 USD/h7.68 USD53.76 USDcirka 27 SmolVLA- eller ACT-körningar à 2 USD
A100 80 GB0.56 USD/h13.44 USD94.08 USDcirka 12 GR00T-körningar à 8 USD
H100 80 GB1.80 USD/h43.20 USD302.40 USDcirka 38 GR00T-körningar à 8 USD

På AY-Robots är detta fel eliminerat för inferens: pods som tillhandahålls av inferens-API:et har en inaktivitetsvakt och förstör sig själva efter en inaktivitetsperiod. Om du hyr kortet själv är den vakten din kalenderpåminnelse.

4. Betala dubbelt för samma svar

GR00T:s finjusteringsingång är en tyro CLI som inte exponerar något seed. Detta är ingen plattformsbegränsning, det är det uppströmsverktyget: det finns inget seed-fält i gr00t/configs/finetune_config.py, och repositoryts egna träningstips varnar för att körningar varierar med 5 till 6 procent eftersom bildförbättringarna är icke-deterministiska. lerobot använder som standard seed 1000 i både 0.5.1 och 0.6.1, så ACT-, SmolVLA- och Pi0.5-körningar kan åtminstone köras om från samma initialisering och dataordning. Detta är inget löfte om bit-identiska vikter på en GPU, men det är skillnaden mellan en omkörning och ett nytt experiment. Om en GR00T-körning producerar en policy som fungerar och du inte behöll checkpointet, betalar du fullt pris för ett resultat som kan skilja sig mer än den skillnad du jagade. Det finns ett andra sätt att förlora ett checkpoint du betalat för: CLI:n använder som standard --save-total-limit 5, dokumenterat som det maximala antalet checkpoints som behålls innan äldre raderas. Lagring kostar ören; en omkörning är 4 till 12 USD och sex timmar.

Avbrytbar kapacitet är halva priset och kommer att döda din körning

Budgolven ovan är en bråkdel av on-demand-priset, och vast.ai säger att budsystemet kan sänka klientkostnaderna med femtio procent eller mer. Haken, med deras egna ord: en avbrytbar instans kan pausas när som helst om en annan användare bjuder högre eller om en on-demand-uthyrning skapas för samma resurser, och den pausen "stoppar alla processer som körs". On-demand har alltid företräde. Bra för en körning som skriver en kontrollpunkt var några hundra steg, en total förlust för en som skriver i slutet, vilket är precis vad standardinställningarna ger dig: Isaac-GR00T CLI skriver var --save-steps (standard 1000), men lerobots --save_freq är standard 20 000 steg, så en standard SmolVLA-körning skapar en kontrollpunkt en gång, vid mållinjen. Sänk det, eller bjud inte. AY-Robots träningsformulär exponerar GR00T-inställningen som saveSteps.

Att hyra kortet själv
Fördelar
  • Den lägsta timtaxan som finns.
  • Full kontroll över bilden, CUDA-versionen, lerobot- eller Isaac-GR00T-revisionen och varje flagga.
  • Avbrytbar budgivning halverar priset om din körning skapar kontrollpunkter tillräckligt ofta för att överleva en paus.
  • Inget är abstraherat bort, så när en körning beter sig konstigt kan du se varför.
Kompromisser
  • Installation debiteras enligt GPU-priser: drivrutiner, beroenden, den flera gigabyte stora baskontrollpunkten och nedladdningen av dataset kostar alla lika mycket per timme som träningen.
  • En överbudad avbrytbar instans pausas och dess processer dödas. En osparad körning är bortkastade pengar, och lerobots standardinställning skriver sin första kontrollpunkt vid steg 20 000.
  • Inget förstör podden åt dig. Den inaktiva tabellen ovan är räkningen för att glömma.
  • Tillgången på enskilda fulla 80 GB-kort är tunn: två A100 80 GB och fem H100 80 GB fullkortserbjudanden i denna läsning. Listan förändras också, så det billigaste listade priset och priset du faktiskt kan hyra är inte samma siffra.
  • Varje timme på infrastruktur är en timme som inte spenderas på att spela in de episoder som avgör om policyn fungerar.

Att göra det själv kontra att låta plattformen hyra kortet

Du väljer maskinen, bygger miljön och förstör podden. Timpriset är marknadspriset ovan; allt annat är din tid.

  1. Hitta ett kort som matchar det VRAM modellen behöver: 24 GB för ACT och SmolVLA, 80 GB för GR00T och Pi0.5.
  2. Hyr on-demand om körningen inte kan överleva en paus, avbrytbar om den skapar kontrollpunkter ofta.
  3. Installera verktygskedjan: lerobot för ACT, SmolVLA och Pi0.5, Isaac-GR00T-förrådet med sin egen tyro-launcher för GR00T.
  4. Konvertera datasetet vid behov. Ett LeRobot v3.0-dataset kraschar GR00T-laddaren och måste konverteras ner till v2.1.
  5. Starta, övervaka förlusten, pusha kontrollpunkter till någon hållbar plats när de skrivs.
  6. Förstör instansen, kontrollera sedan att du förstörde den.
bash
# GR00T N1.7, single GPU, Isaac-GR00T as of August 2026.
# Note the entry point: gr00t/experiment/launch_finetune.py, a tyro CLI.
# scripts/gr00t_finetune.py does not exist in this repository; tutorials that
# still reference it are stale. The per-embodiment walkthrough is
# getting_started/finetune_new_embodiment.md.
CUDA_VISIBLE_DEVICES=0 uv run python gr00t/experiment/launch_finetune.py \
    --base-model-path nvidia/GR00T-N1.7-3B \
    --dataset-path demo_data/cube_to_bowl_5 \
    --embodiment-tag NEW_EMBODIMENT \
    --modality-config-path examples/SO100/so100_config.py \
    --num-gpus 1 \
    --output-dir ./so100-checkpoints \
    --max-steps 20000 \
    --global-batch-size 32 \
    --dataloader-num-workers 4

# v3.0 dataset? Convert it down first or the loader will crash. The helper
# has its own pyproject and must be installed in its own environment:
cd scripts/lerobot_conversion
uv venv && source .venv/bin/activate
uv pip install -e .
python convert_v3_to_v2.py --repo-id <DATASET_REPO_ID>
Den nuvarande Isaac-GR00T fine-tune startpunkten, matchar kommandot i förrådets README. Denna CLI har ingen seed-flagga, så GR00T-körningar är inte bit-för-bit reproducerbara.

Realistisk kostnad för en GR00T-körning: 3 till 6 timmar på en H100 80 GB till 1.34 till 2.34 USD per timme är 4 till 14 USD, plus 20 till 40 minuters installation som också debiteras, plus din egen tid.

Vad plattformen debiterar och hur den väljer kortet

Logiken är medvetet enkel. Varje modell i katalogen, deklarerar en GPU-nivå; backend tar den nödvändiga VRAM och hyr ett matchande kort på samma spotmarknad som mätts ovan. Det är därför den angivna kostnaden är ett intervall, inte ett pris. GR00T och Pi0.5 är endast molnbaserade här på grund av gränserna på 40 GB och 70 GB. SmolVLA och ACT körs också lokalt på ditt eget 24 GB-kort, där molnkostnaden är noll och elektriciteten är ditt problem.

AY-Robots prissida som visar kostnaden för en träningskörning och plattformsåtkomst
Prissidan. Kostnaderna per körning följer spotmarknaden snarare än ett fast listpris.

En inställning förtjänar en varning. Gradientackumulering gäller verkligen för båda GR00T-varianterna, så att öka den ger en större effektiv batch på samma kort. För Pi0.5 och SmolVLA gäller det inte alls: lerobot 0.5.1 har inget alternativ för gradientackumulering i sin träningskonfiguration, så att ställa in fältet till 16 kostar inget och ger inget. Om ett köat jobb aldrig startar, sidan för fastnat-i-kö, beskriver vad du ska kontrollera; om datasetet avvisas innan körningen börjar, är det nästan alltid problemet med v3.0-formatet.

Gränsen som denna plattform inte löser: latens

En hyrd GPU som tillhandahåller din policy över det publika internet lägger till rundresor till en kontrollslinga som redan är 20 till 485 ms per åtgärdssteg. Bra för långsam plock-och-placering, inte för snabb reaktiv rörelse. Moln-inferens utvärderar en checkpoint väl och kör produktionsmanipulation dåligt: om uppgiften kräver hastighet måste beräkningskraften sitta bredvid servona, och det är en kostnad som denna artikel inte kan få att försvinna. Se inferenslatens.

En utarbetad budget för en första fungerande policy

Alla fyra rader tillsammans, från grunden. GPU-totalen antar 3 till 5 körningar: den första bevisar att pipelinen fungerar, den andra avslöjar ett dataproblem, den tredje eller fjärde är den du behåller.

PostSmal vägBekväm väg
ArmEndast SO-100 följare, 121.94 USD i BOMledare plus följare, 229.88 USD i BOM
ModellSmolVLA eller ACT, 24 GB nivåGR00T N1.7, A100 80 GB eller H100 nivå
Inspelade episoder30, SmolVLA-minimum50 till 100
Mänsklig tid för inspelningcirka 1 h 12 min2 till 4 timmar
Kostnad för en körning1 till 3 USD4 till 12 USD
Körningar innan det fungerar3 till 53 till 5
Total GPU-kostnad3 till 15 USD12 till 60 USD
Största posten på räkningenarmen, sedan din tidarmen, sedan din tid

Mönstret gäller även för robotar av denna storlek: beräkningskostnaden är försumbar, hårdvaran är en verklig engångskostnad, och mänskliga timmar är den återkommande utgiften. För att testa träningsdelen innan du köper något, låter dig jämföra modeller och hyra en GPU utan en robotarm, och är en fysisk SO-100 som du kan styra i webbläsaren utan registrering. För hela pipeline från början till slut, täcker den installation, och träning, och är den korta versionen.

AY-Robots träningsmatris med fem policyer som rader och fyra robotarmar som kolumner, där varje cell länkar till en specifik träningsguide
Träningsmatrisen /train: rad för din budget, kolumn för din robotarm, cell för guiden med den kombinationens standardinställningar och kostnad.
Vad kostar en VLA finjusteringskörning från början till slut?

Cirka 4 till 12 USD för GR00T N1.7, GR00T N1.5 eller Pi0.5 på A100 80 GB eller H100-nivån (3 till 6 timmar à 1.20 till 2.00 USD per timme), och cirka 1 till 3 USD för SmolVLA eller ACT på RTX 4090-nivån (2 till 5 timmar à 0.30 till 0.60 USD per timme). Att hyra kortet själv hamnar i samma prisklass när installationstiden räknats in, eftersom det debiteras enligt träningspriset.

Är en H100 värd att betala för framför en A100 80 GB?

För en enskild SO-100-policy, oftast inte. Båda uppfyller minneskraven som GR00T och Pi0.5 behöver, och den 23 augusti 2026 kostade en full A100 80 GB 0.44 USD per timme jämfört med 1.34 för en H100 80 GB. H100 blir klar snabbare, så en del av kostnaden kompenseras av färre timmar, men totalen är fortfarande högre för en så liten körning. Det verkliga argumentet för H100 är tillgänglighet: fem enskilda H100 80 GB-erbjudanden på den marknaden mot två A100 80 GB, och ett kort du inte kan hyra har inget pris.

Hur många körningar krävs innan en policy faktiskt fungerar?

Planera för tre till fem. Den första bevisar att pipelinen är korrekt kopplad. Den andra avslöjar ofta ett datasetproblem, till exempel en kameraström som dog halvvägs. Den tredje eller fjärde är den du behåller.

Kan jag träna SmolVLA eller ACT på min egen GPU istället för att hyra?

Ja. Båda stöds lokalt på AY-Robots och båda ryms bekvämt i 24 GB; den ursprungliga ACT-artikeln tränade sin 80M-modell på cirka 5 timmar på ett 11 GB RTX 2080 Ti. GR00T och Pi0.5 är endast molnbaserade här eftersom leverantörernas dokumenterade finjusteringskrav är 40 GB och 70 GB, och det största konsumentkortet på marknaden är 32 GB RTX 5090.

Varför kostar samma antal steg olika mycket mellan modeller?

Steg är inte jämförbara mellan policyer. ACT använder som standard 100 000 steg med batch 8 på ett 24 GB-kort; GR00T N1.5 använder som standard 2 000 steg med batch 1 med gradientackumulering 16 på ett 80 GB-kort. Kostnaden är timmar multiplicerat med priset för det kort som minnesbehovet tvingar dig till, inte stegräknaren.

Se vad din körning skulle kosta innan du startar den

Var och en av de fem policyerna listar sin GPU-nivå, körtid och pris per körning, och träningsbackend hyr kortet på samma spotmarknad som dessa siffror mättes på.

Kontrollera priserna

Ready for high-quality robotics data?

AY-Robots connects your robots to skilled operators worldwide.

Get Started