
DROID, BridgeData V2 ja Open X-Embodiment teisenduvad 7-D otsaefektori tegevusteks 6- ja 7-vabadusastmega kätel. SO-100 võtab 6 liigendi positsiooni. Mis kandub üle, mis mitte, mida selle asemel teha.
Lühiversioon
- •Kõigi kolme LeRoboti versioonid jagavad ühte konventsiooni: 7-D lõppefektori tegevus [x, y, z, roll, pitch, yaw, gripper] ja 8-D olek koos täitepesaga. SO-100 võtab kuus absoluutset liigendi positsiooni.
- •See 7-D vektor on konverteri artefakt: DROIDi enda RLDS-i tegevusväli on 6 liigendi kiirust pluss haaratsi positsioon, koos Cartesiuse vaatega action_dictis.
- •Neli takti: DROID 15 fps, BridgeData V2 5 fps, google_roboti lõik 3 fps, SO-100 salvestus 30 fps.
- •Te ei saa neid oma andmetega ühendada. validate_all_metadata tõstab vea esimese erineva fps-i, robot_type'i või funktsiooni korral, ja kõik kolm erinevad.
- •Üle kanduvad eelkoolitatud kaalud, mitte episoodid. Avatud lähtekoodiga andmed moodustavad 9.1 protsenti pi0 eelkoolituse segust.
- •Nende odavaim reaalne kasutus on testseade: teadaolevalt hea 2 GB, 100-episoodiline DROIDi näidis, mis tõestab teie torujuhtme toimivust enne, kui nädalavahetuseks salvestama hakkate.
Google Cloudi ämbris on miljoni trajektooriga avalik andmestik ja SO-100 laual, mis maksis osadena 110 kuni 150 EUR. Miks esimene ei saa teist õpetada? Osaliselt saab, kuid peaaegu ükski ülekanne ei toimu seal, kus inimesed ootavad, ja osa, mis tundub kõige lihtsam, ei tööta üldse.
Järgneb: mis on sees DROID, BridgeData V2 ja Open X-Embodiment, kus igaüks neist põrkub kokku odava 5-DoF käega, ja mida selle asemel teha. Iga allolev number pärineb paberist, andmestiku kaardilt või lähtefailist, kuhu see kuulub.
Mida need kolm andmestikku tegelikult sisaldavad
| DROID | BridgeData V2 | Open X-Embodiment | |
|---|---|---|---|
| Robot | Franka Panda, 7 DoF, Robotiq 2F-85 | WidowX 250, 6 DoF, ~4,000 USD rig | 22 embodiments, 60 datasets, 34 labs |
| Skaala | 76k trajektoori, 350 tundi | 60,096 trajektoori | 1M+ trajektoori, 527 oskust |
| Mitmekesisus | 564 stseeni, 84 ülesannet, 50 kogujat | 24 keskkonda, 13 oskust | 160,266 ülesannet, 21 institutsiooni |
| Koostis | kõik teleopereeritud | 50,365 teleopereeritud, 9,731 skriptitud | allika labori kohta |
| Juhtimiskiirus | 15 Hz | 5 Hz | varieerub, alates 3 fps |
| Kaamerad | 2 x ZED 2 väljas, 1 x ZED Mini randmel | kuni 4, enamikus episoodides ainult fikseeritud | mida labor kasutas |
| Toores allalaadimine | 1.7 TB RLDS, 8.7 TB raw stereo | JPEG arhiivid | andmestiku-põhised TFDS ämbrid |
Vähesed inimesed laadivad endiselt alla 1.7 TB RLDS TFRecords faile. Kogukonna organisatsioon IPEC-COMMUNITY on enamiku Open X-Embodiment andmetest uuesti avaldanud LeRobot dataset vormingus AV1 videoga, kus DROID võtab 392 GB. See on versioon, millega te töötate, ja selle meta/info.json on see, mida esimesena lugeda.
DROID
Kõige standardiseeritum kolmest. Üks seade igal pool: Franka Panda koos Robotiq 2F-85 haaratsiga, kaks reguleeritavat ZED 2 stereokaamerat ja randmele paigaldatud ZED Mini, teleopereeritud Meta Quest 2 kontrolleritega, salvestatud Polymetis'e kaudu 15 Hz sagedusega nii liigeste kui ka otsakute ruumis. Keelemärgised lisati hiljem tasq.ai kaudu, kuni kolm episoodi kohta.
- 76k trajektoori, 350 tundi, 564 stseeni, 84 ülesannet, 50 kogujat kolmel kontinendil.
- Peamine tulemus on kaastreening, mitte iseseisev treening: 50/50 segatud partiid valdkonnasisese demonstratsiooniga ületasid järgmise parima meetodi 22 protsendi võrra absoluutse edukusega jaotuses, 17 protsenti väljaspool seda.
- IPEC-COMMUNITY/droid_lerobot: 92 233 episoodi, 27 044 326 kaadrit, franka, 15 fps, codebase_version v2.0, kolm AV1 voogu 180x320 resolutsiooniga, 392 GB.
- 2 GB, 100-episoodiline silumisnäidis asub aadressil gs://gresearch/robotics/droid_100. Alustage sealt.
BridgeData V2
Kõige lähemal hobiseadistusele: WidowX 250 6-DoF arm, 60 096 trajektoori 24 keskkonnas ja 13 oskust 5 Hz juures. Pange tähele koosseisu: 50 365 eksperdi teleopereeritud demonstratsiooni pluss 9731 randomiseeritud skriptitud valimis- ja paigutuspoliitikast, seega umbes 16 protsenti ei ole inimdemonstratsioon, mis on oluline imitatsiooniõppe kvaliteedi jaoks. Tavaline allalaadimine, IPEC-COMMUNITY/bridge_orig_lerobot, teatab 53 192 episoodist ja 1 893 026 kaadrist 5 kaadrit sekundis, robot_type widowx: vähem kui artikli 60 096, seega lugege arv meta/info.json failist, mitte tsiteerige kumbagi.
Open X-Embodiment
Mitte andmestik samas mõttes: 60 olemasolevat roboti andmestikku 34 laborist koondati ühte RLDS-i kogusse, mis hõlmab 22 kehastust ja üle miljoni trajektoori. BridgeData V2 asub selles kui bridge_orig; google_robot lõik, fractal20220817_data, teisendub 87 212 episoodiks kiirusega 3 kaadrit sekundis.
Koondamine sisaldab hoiatust, mille artikkel otse välja toob. RT-X eksperimentide jaoks teisendavad autorid iga allika 7-vabadusastmega (DoF) lõppefektori tegevuseks, kuid ei joonda koordinaatsüsteeme andmestike vahel ega luba tegevuse väärtustel olla absoluutsed või suhtelised positsioonid või kiirused, vastavalt iga roboti algsele juhtimisskeemile. Nende järeldus: sama tegevusvektor võib erinevate robotite puhul esile kutsuda väga erinevaid liikumisi.

Ebakõla neljas osas
Kehastuse mittevastavust käsitletakse tavaliselt kui ühte ebamäärast probleemi. Neid on neli, need ebaõnnestuvad erinevalt ja kahte neist ei saa skriptimisega parandada.
Vabadusastmed
SO-100-l on viis käeliigest pluss haarats. Mootoritena loetuna on see 6-vabadusastmega käsi ja SmolVLA artikkel nimetab seda nii; positsioneerimismehhanismina loetuna on see 5-vabadusastmega ja LeRobot nimetab seda nii oma pöördkineetika dokstringis, mis kirjeldab pehme orientatsiooniga IK-d 5-vabadusastmega SO-101-l, kus randme jälgib orientatsiooni vaid osaliselt. Frankal on seitse positsioneerimisliigest. See vahe määrab, millised poosid eksisteerivad: 5-vabadusastmega käsi ei suuda üldjuhul korraga saavutada meelevaldset positsiooni ja orientatsiooni, seega tagastab lahendaja lähima võimaliku, mis on demonstreeritust erinev liikumine. Taust: .
# src/lerobot/robots/so_follower/so_follower.py
motors = {
"shoulder_pan": Motor(1, "sts3215", norm_mode_body),
"shoulder_lift": Motor(2, "sts3215", norm_mode_body),
"elbow_flex": Motor(3, "sts3215", norm_mode_body),
"wrist_flex": Motor(4, "sts3215", norm_mode_body),
"wrist_roll": Motor(5, "sts3215", norm_mode_body),
"gripper": Motor(6, "sts3215", MotorNormMode.RANGE_0_100),
}
# action keys are "<motor>.pos"; send_action sync_writes them to
# "Goal_Position" -> a 6-D ABSOLUTE JOINT POSITION command
# openpi/src/openpi/policies/droid_policy.py
def make_droid_example() -> dict:
return {
"observation/exterior_image_1_left": np.random.randint(256, size=(224, 224, 3), dtype=np.uint8),
"observation/wrist_image_left": np.random.randint(256, size=(224, 224, 3), dtype=np.uint8),
"observation/joint_position": np.random.rand(7), # seven Franka joints
"observation/gripper_position": np.random.rand(1),
"prompt": "do something",
}
# state = concat(joint_position, gripper_pos) -> 8-DSeega valmis DROIDi kontrollpunkt ei ole otsetee. Physical Intelligence tarnib pi05_droidi aadressil gs://openpi-assets/checkpoints/pi05_droid, ja sama README, mis kiidab selle laiaulatuslikkust, hoiatab, et need ekspertkontrollpunktid ei pruugi teie seadistusega üldistuda. Selle olek on kaheksa Franka liigendi numbrit ja selle pildivõtmed on exterior_image_1_left ja wrist_image_left. Ükski lipp ei muuda seda kuue mootoriga SO-100 käsuks.
2. Mida tegevusvektor tegelikult ütleb
Sügavam kui dimensioonilisus. LeRoboti konversioonides ütlevad kõik kolm, kuhu haarats peaks minema, Cartesiuse ruumis. SO-100 ütleb, kuhu kuus servot peaksid minema. Konverteerimine vajab kinemaatilist mudelit ja lahendajat, mitte ümberkujundamist.
| Omadus | OXE, DROID ja Bridge LeRoboti kujul | SO-100 LeRobotis |
|---|---|---|
| Tegevusvektor | 7-D: x, y, z, rull, kalle, pöörlemine, haarats | 6-D: üks sihtpositsioon mootori kohta |
| Olekvektor | 8-D, täitepesaga (google_robot kasutab kvaterniooni) | 6-D, üks mootori kohta |
| Kaader | Cartesiuse, andmekogumite vahel joondamata | liigendruum, käe-põhine kalibreerimine |
| Absoluutne või relatiivne | mõlemad, otsustab lähtelabor | absoluutsed sihtpositsioonid |
| Ühikud | normaliseeritud andmekogumi kohta, seejärel diskreetitud | kraadid vaikimisi (use_degrees=True), muidu -100 kuni 100 |
| Vaikne rike | delta loetud absoluutsena | kalibreerimata käsi |
openx2lerobot README dokumenteerib ühtse 8-dim oleku ja 7-dim tegevuse iga andmestiku jaoks, mida see konverteerib, millest tuleneb ka `pad` pesa. DROIDi enda RLDS skeem erineb: selle tipptaseme `action` on 7-vektor, mis koosneb *6 liigese kiirusest pluss 1 haaratsi asendist*, koos `cartesian_position`, `cartesian_velocity`, `joint_position` ja `joint_velocity` all `action_dict`. openpi loeb liigese-ruumi vaadet, LeRoboti ehitis annab teile Cartesiuse oma. Kumbki ei ole kuus absoluutset servo nurka.
LeRobot tarnib puuduva osa: SO followeril on kinemaatika protsessor koos InverseKinematicsEEToJoints ja ForwardKinematicsJointsToEE sammudega. Selle võtmed on ee.x, ee.y, ee.z pluss pöörlemisvektor ee.wx, ee.wy, ee.wz ja ee.gripper_pos, nii et isegi orientatsiooni kodeering erineb failides olevast roll-pitch-yaw'st. IK samm võtab orientation_weight'i, vaikimisi 0.01, mille docstring ütleb, et seada 0.0 ainult asendipõhise IK jaoks alajuhitavatel kätel. Saate silla ehitada, kuid iga laenatud tegevuse orientatsioonipool jääb ligikaudseks.
3. Juhtimissagedus
DROID on 15 Hz, BridgeData V2 5 Hz, google_robot'i lõik 3 fps; pi0 autorid kirjeldavad oma segu avatud lähtekoodiga osa kui madalsageduslikku juhtimist vahemikus 2 ja 10 Hz. LeRoboti DatasetRecordConfig vaikeseaded on fps 30, episode_time_s 60, reset_time_s 60, num_episodes 50. mis on treenitud 5 Hz andmetel, õppis, et üks tegevus katab 200 ms. Esitage see uuesti 30 Hz juures ja käsi roomab; naiivselt ümberproovides määrite kaadri, kus haarats sulgub. See interakteerub halvasti ka : 100-sammuline tükk on 20 sekundit 5 Hz juures, 3.3 sekundit 30 Hz juures.
4. Kaamerad
BridgeData V2 randomiseeris kaks kaamera asendit iga 50 trajektoori järel ja selle projekti leht märgib, et enamik andmeid sisaldab niikuinii ainult fikseeritud vaadet. DROID kasutas reguleeritavaid ZED 2 kinnitusi pluss randme ZED Mini. Teil on kaks USB veebikaamerat silma järgi paigutatud. Kaamera asend ei ole tüütu muutuja ; see on suuresti see, millele visuaalne kodeerija keskendus, ja failivormingus ei ütle miski, et asendid erinevad.
Osad sobivad piisavalt hästi kokku, et käivituda. Andmestik laadib, treening algab, kadu langeb, kontrollpunktid ilmuvad, vigu ei teki. Seejärel ei tee poliitika käel midagi äratuntavat ja te veedate päeva oma treeninguskriptis viga otsides. Viga ei ole: mudel õppis karteesi tegevusjaotuse roboti jaoks, mida teie toas ei eksisteeri. Alustage kohast kadu langeb, poliitika ei tee midagi, mitte oma hüperparameetritest.
Mis juhtub, kui proovite andmeid ikkagi ühendada
Ilmselge plaan on liita: paar tuhat DROIDi episoodi pluss teie 50. LeRobot keeldub ja keeldumine nimetab kolm erinevat asja.
- 1Tõmba 100-episoodiline näidis, mitte täielik 1.7 TB
2 GB on piisav struktuuri nägemiseks.
bashpip install gsutil tensorflow tensorflow-datasets gsutil -m cp -r gs://gresearch/robotics/droid_100 ~/tensorflow_datasets/ - 2Teisenda RLDS LeRoboti vormingusse
openx2lerobot ühendab OXE standardmuundused ja annoteerib roboti tüübi ning juhtimissageduse. README paigutab selle faili convert.sh.
bashgit clone https://github.com/Tavish9/any4lerobot.git cd any4lerobot/openx2lerobot python openx_rlds.py \ --raw-dir ~/tensorflow_datasets/droid_100/1.0.0 \ --local-dir ~/lerobot_droid100 \ --repo-id you/droid100_lerobot \ --use-videos - 3Loe meta/info.json enne kõike muud
See fail otsustab, kas ülejäänud teie päev töötab.
bashpython -c "import json;d=json.load(open('meta/info.json'));\ print(d['codebase_version'], d['robot_type'], d['fps']);\ print(d['features']['action']['shape'], d['features']['observation.state']['shape'])" - 4Proovi ühendamist ja loe viga
merge laeb iga andmestiku, seejärel validate_all_metadata kontrollib fps-i, robot_type'i ja funktsioone loendi esimese vastu, tõstes vea esimesel mittevastavusel.
bashlerobot-edit-dataset \ --new_repo_id you/mixed \ --operation.type merge \ --operation.repo_ids "['you/droid100_lerobot', 'you/my_so100_task']" # ValueError: Same fps is expected, but got fps=30 instead of 15.
Viiteväärtused pärinevad sellest andmestikust, mille te esimesena loetlesite, mistõttu teade kurdab teie 30 fps-i, mitte DROIDi 15 fps-i üle. Parandage fps ja te tabate robot_type kontrolli; parandage see ja te tabate funktsioonikontrolli, 7 vastu 6 tegevuse puhul. Ükski järjestus ei lähe läbi ja sama kaitse töötab salvestamise ajal sanity_check_dataset_robot_compatibility kaudu.
Praeguses LeRoboti peaharus on nii so100_follower kui ka so101_follower registreeritud ühele jagatud SOFollowerRobotConfig-ile, seega ei pruugi tegelikust salvestusest pärinev string olla see, mida te ootate. Lugege seda oma meta/info.json-ist ja käsitlege kontrolli, mille pidite keelama, kui kontrolli, mis teile midagi ütles.
Mis siis tegelikult üle kandub?
Kaalud, mitte episoodid. Iga kaasaegne üldotstarbeline poliitika on osa sellest eelkoolituses omastanud ja kui te peenhäälestate välja antud kontrollpunktist pärite selle juba õigesti arvutusvõimsusega inimeste poolt ühildatuna. pi0 artikkel on avameelne proportsiooni osas: 9,1 protsenti selle eelkoolituse segust, ajasammudes arvestatuna, on avatud lähtekoodiga andmed, sealhulgas OXE, Bridge v2 ja DROID. See näitaja on pi0 oma; iga tarnija segu erineb.
- Visuaalsed ja keelelised eelteadmised: kodeerija on näinud tuhandeid kööke ja kruuse ning teab, millele "punane klots" viitab.
- Eelteadmised manipulatsiooni struktuuri kohta: lähenemine, sulgemine, tõstmine, transportimine, vabastamine, kehast sõltumatu isegi siis, kui numbrid seda ei ole.
- Tuntud hea andmekogum testimiseks. Kui teie töö ei suuda 100 DROIDi episoodi üle sobitada, on probleem teie seadistuses.
- Võrdluspunktid: väikese andmekogumi valdkondades saavutas RT-1-X 50 protsenti kõrgema keskmise edukuse määra kui algne meetod või RT-1, ja RT-2-X edestas RT-2-te umbes 3 korda esilekerkivate oskuste osas.
- Puudub kasutatav tegevuse juhendamine. 7-D Cartesiuse sihtmärk ei ole 6-D liigese käsk.
- Kaamera asendi ülekannet ei toimu ja andmetes pole midagi, mis ütleks, et asendid erinevad.
- Ajasünkroonimise ülekannet ei toimu: 3, 5 ja 15 kaadrit sekundis allikad 30 kaadrit sekundis salvestaja vastu.
- Haaratsi ülekannet ei toimu. Robotiq 2F-85 ja STS3215-l olev prinditud lõualuu erinevad jõu, käigu ja dünaamika poolest.
- Ainuüksi skaala ei olnud piisav isegi selle autorite jaoks: suurte andmekogumite valdkondades ei ületanud RT-1-X RT-1-te, mis oli koolitatud ainult selle andmekogumi peal.
- Teie enda episoodide vajaduse vähenemist ei toimu.
| Mudeli kiht | Kandub üle? | Miks |
|---|---|---|
| Nägemise kodeerija | Jah, tugevalt | Objektid ja stseenid on kehast sõltumatud |
| Keeleline maandus | Jah | Juhised on tekst, mitte geomeetria |
| Ristmodaalsed ühendused | Enamasti | Pöörab tähelepanu viipas nimetatud objektile |
| Propriotseptsiooni kodeerija | Ei | Sisendi dimensioon ja liigeste semantika erinevad |
| Tegevuse pea | Ei | Koolitatud 7-D Cartesiuse ruumis, milles te ei asu |
| Normaliseerimisstatistika | Ei, ja ohtlik | Võõrad statistikad nihutavad iga käsku |
Seepärast SmolVLA käitub odaval robotkäel erinevalt. Selle artikkel valib Hugging Face'ist 481 kogukonna andmestikku, mis on filtreeritud kehastuse tüübi, episoodide arvu, andmekvaliteedi ja kaadri katvuse järgi: 22,9K episoodi, 10,6M kaadrit, hinnatud reaalsetel SO-100 ja SO-101 kätel. Väike ja sobitatud võidab suure ja mittesobitatud. Võrdle ACT against SmolVLA.
Kolm teed, mida tasub minna
Tee A: peenhäälesta kontrollpunktist, mis on andmed juba omastanud
Enamik inimesi peaks selle valima. Sa ei puutu kunagi DROIDi ega Open X-Embodimenti: vali poliitika, mille eelkoolitus on juba omastanud kehastusteülesed andmed, salvesta oma episoodid, peenhäälesta.
| Poliitika | Parameetrid | Minimaalselt episoode | Andmestiku formaat | GPU tase | Järeldamine | Baas kontrollpunkt |
|---|---|---|---|---|---|---|
| GR00T N1.7 | ~3 B, ~40 M trained in fine-tuning | 50 | LeRobot v2.0 or v2.1 | A100 or H100 80 GB | 152 ms per step | nvidia/GR00T-N1.7-3B |
| GR00T N1.5 | ~3 B | 50 | LeRobot v2.0 or v2.1 | A100 or H100 80 GB | 165 ms | nvidia/GR00T-N1.5-3B |
| Pi0.5 | ~3 B, PaliGemma backbone | 50 | LeRobot v3.0 | A100 or H100 80 GB | 485 ms | lerobot/pi05_base |
| SmolVLA | ~450 M | 30 | LeRobot v3.0 | RTX 4090 or any 24 GB | 245 ms | lerobot/smolvla_base |
| ACT | ~80 M | 50 | LeRobot v3.0 | RTX 4090 or any 24 GB | 20 ms | none, from scratch |
ACT on aus äärmusjuhtum: baasmudelit pole, seega ei jõua ükski avalik andmestik sinna. See ei ole automaatselt puudus, sest 20 ms tegevussammu kohta on see ainus viiest, mis suudab kiire tsükli sulgeda, nagu ACT leht kirjeldab. Valige ülesande järgi, kasutades kõiki viit võrrelduna, GR00T N1.7 Pi0.5 vastu, ja 332 võrdlustulemust 85 mudeli kohta areenil.
Tee B: kasutage DROIDi testseadisena
100-episoodiline näidis on parim 2 GB, mille te sel kuul alla laadite, ja mitte treenimiseks. See on andmestik, mille õigsuses olete kindel. Käivitage sellel oma konverter, laadur ja lühike GPU töö; kõik, mis ebaõnnestub, on infrastruktuuri viga, mis leiti odavalt. NVIDIA teeb sama suures ulatuses: GR00T N1.7 kaart loetleb neli järeltreenitud varianti Bridge'i ja Fractali jaoks SimplerEnvis, DROIDi ja LIBERO jaoks.
Tee C: salvesta oma, tahtlikult
Kolmkümmend kuni viiskümmend kõlab vähe 76 000 kõrval, kuni sa meenutad, et sinu omad on ainsad, millel on sinu käsi, sinu kaamerad ja sinu laud. LeRoboti vaikeseadete järgi on 50 episoodi 100 minutit reaalajas. Vaata , ja .

Kaks viisi avalikest andmetest töötava poliitikani jõudmiseks
All of this runs on your own machine plus a rented GPU. Knowing the manual path matters because when something breaks you will know which layer broke.
- 1Install LeRobot with the extras the scripts need
The record and train entry points each declare their own extra.
bashpip install 'lerobot[core_scripts]' # lerobot-record pip install 'lerobot[training]' # lerobot-train pip install gsutil tensorflow tensorflow-datasets - 2Get a small, known-good slice
100 DROID episodes, 2 GB.
bashgsutil -m cp -r gs://gresearch/robotics/droid_100 ~/tensorflow_datasets/ - 3Convert to LeRobot form
Writes the unified 8-D state and 7-D action, annotating robot type and control frequency.
bashpython openx_rlds.py \ --raw-dir ~/tensorflow_datasets/droid_100/1.0.0 \ --local-dir ~/lerobot_droid100 \ --repo-id you/droid100_lerobot \ --use-videos - 4Check the version against your trainer
The converter README documents v3.0 output; the published IPEC-COMMUNITY datasets report v2.0. GR00T wants v2.0 or v2.1 and crashes on v3.0; Pi0.5, SmolVLA and ACT want v3.0. Mind the gap: the only conversion script on LeRobot main goes 2.1 to 3.0.
bashpython src/lerobot/scripts/convert_dataset_v21_to_v30.py \ --repo-id=you/droid100_lerobot - 5Record your own episodes
Defaults: 30 fps, 60 s per episode, 60 s reset, 50 episodes. The teleoperator type is so100_leader.
bashlerobot-record \ --robot.type=so100_follower \ --robot.port=/dev/ttyACM0 \ --robot.cameras="{front: {type: opencv, index_or_path: 0, width: 640, height: 480, fps: 30}}" \ --teleop.type=so100_leader \ --teleop.port=/dev/ttyACM1 \ --dataset.repo_id=you/so100_pick_block \ --dataset.num_episodes=50 \ --dataset.single_task="Pick up the red block and put it in the bowl" - 6Fine-tune on your data only
Weights from public data, actions from your own. Do not mix the datasets.
bashlerobot-train \ --policy.path=lerobot/smolvla_base \ --dataset.repo_id=you/so100_pick_block \ --policy.device=cuda \ --batch_size=4 \ --steps=20000
Not in training; the GPU job is hours. The conversion, the version mismatch and the moment you find your dataset is v2.0 and your trainer wants v3.0 are days. Read dataset rejected as v3 first.
The platform removes the GPU and pipeline plumbing. It does not remove the embodiment mismatch: point the trainer at a converted DROID dataset and you get a policy trained on Franka actions, exactly as you would locally.
- 1Pick a policy, not a dataset
The five trainable policies, with parameter counts, GPU tiers and latencies, are at /policies.
- 2Record with the desktop client
It writes LeRobot-format datasets, episodes, camera streams and joint states, straight out of a teleop session. No conversion step to get wrong.
- 3Or bring a dataset you already have
The training form accepts one from /directory, a Hugging Face repo id, or your own machine. A repo id means a converted OXE dataset will load, and the mismatch loads with it.
- 4Train on a rented GPU
The backend rents a card on a spot market by required VRAM. SmolVLA or ACT on 24 GB: 2 to 5 hours, about 1 to 3 USD. GR00T or Pi0.5 on A100 or H100: 3 to 6 hours, about 4 to 12 USD. See /pricing.
- 5Serve it back to the arm
/api/inference/pod auto-provisions a GPU pod serving the policy; the local client talks to that endpoint. Pods carry an idle watchdog and destroy themselves, so nothing keeps billing silently.
Inference has to sit next to the servos for fast tasks. The control loop is 20 to 485 ms per action step depending on the model, and public-internet round trips turn a working policy into a hesitant one. Remote inference is fine for slow pick-and-place, not fast reactive motion.
The platform helps with the boring parts: the right format for the right arm at the right frame rate, and no babysitting a spot instance. It helps with nothing else in this article.

Mida iga tee maksab
| Tee | Salvestusruum | Inimaeg | GPU kulu | Tõenäosus, et see liigutab teie kätt |
|---|---|---|---|---|
| Konverteeritud DROID üksi | 392 GB | konverteerimispäevad | 4 to 12 USD | väga madal, vale tegevusruum |
| DROID ühendatud teie episoodidega | mõlemad | blocked by validate_all_metadata | n/a | puudub, see ei käivitu |
| SmolVLA, 30 kuni 50 oma episoodi | mõni GB | 100 min salvestust | 1 to 3 USD | kõrge |
| GR00T N1.7, 50 oma episoodi | mõni GB | 100 min salvestust | 4 to 12 USD | kõrge |
| ACT nullist, 50 oma episoodi | mõni GB | 100 min salvestust | 1 to 3 USD | kõrge, 20 ms järeldus |
| DROID näidis testrakisena | 2 GB | üks pärastlõuna | üks lühike käivitus | kõrge, valideerimisena |
Asümmeetria ongi point: tee, mis laenab kõige rohkem andmeid, on kõige kallim ja kõige ebatõenäolisem, et see teie kätt liigutab. Alla kahe tunni teie enda teleoperatsioon on parem kui terabait kellegi teise Franka andmeid. Kätt veel pole? /live voogedastab füüsilist SO-100 ilma registreerimiseta. Seejärel treenige oma esimene poliitika, ja SmolVLA SO-100-l konkreetse juhendi jaoks.
Laadige alla 2 GB DROID-i näidis ja kasutage seda oma torujuhtme tõestamiseks. Ignoreerige ülejäänud 1.7 TB. Salvestage 50 episoodi ühest ülesandest fikseeritud kaameratega. Peenhäälestage esmalt SmolVLA, sest 30 minimaalse episoodiga 24 GB kaardil on sellega kõige odavam itereerida, seejärel proovige GR00T N1.7 samade andmetega. Võrrelge oma ülesande, mitte võrdlusaluse põhjal.
Salvestage andmekogumid, mis juba sobivad teie käega
Töölauaklient kirjutab LeRoboti-vormingus andmekogumid otse teleoperatsiooni sessioonist: õige käsi, õige kaadrisagedus, õige tegevusruum. Ei mingit RLDS-i konversiooni ega ümberkaardistamist.
Hankige töölauaklientKas ma saan treenida poliitikat DROID-il ja käivitada seda oma SO-100-l?▾
Mitte otse. LeRoboti versioonis on DROID-i tegevused 7-D otsaefektori käsud Franka Pandale kiirusega 15 kaadrit sekundis; tooretes RLDS-ides on need 6 liigese kiirust pluss haaratsi asend. SO-100 võtab 6 absoluutset liigese asendit. Teil oleks vaja pöördkinemaatika kihti ja isegi siis ei saa 5-vabadusastmega randmeosa reprodutseerida suvalisi 6-vabadusastmega poose.
Kas ma saan segada DROID-i või Bridge'i episoode oma SO-100 episoodidega?▾
Ei. validate_all_metadata nõuab identset kaadrisagedust (fps), robot_type'i ja funktsiooniskeemi ning tõstab ValueError'i esimese mittevastavuse korral. Kõik kolm erinevad: 15 või 5 kaadrit sekundis võrreldes 30-ga, franka või widowx teie käe vastu, tegevuse kujud 7 võrreldes 6-ga. Metaandmete ümberkirjutamine kontrolli läbimiseks ei paranda semantikat.
Kas Open X-Embodiment on siis odava käe jaoks kasutu?▾
Ei, kuid selle väärtus jõuab teieni eelkoolitatud kaalude, mitte episoodide kaudu. Avatud lähtekoodiga andmekogumid, sealhulgas OXE, Bridge v2 ja DROID, moodustavad 9.1 protsenti pi0 eelkoolituse segust, ja NVIDIA tarnib GR00T N1.7 variante, mis on järelkoolitatud Bridge'i, Fractali, DROID-i ja LIBERO andmetel. Mida te ei saa teha, on nende episoodide lisamine oma salvestusele.
Milline poliitika saab avalikest ristkehastuse andmetest kõige rohkem kasu?▾
Pi0.5 ja GR00T mudelid sisaldavad kõige rohkem ristkehastuse eelkoolitust, kuid SmolVLA käitub sageli kõige paremini odava käe puhul: selle eelkoolituse komplektis on 481 kogukonna andmekogumit, 22.9K episoodi ja 10.6M kaadrit, mis on hinnatud reaalsetel SO-100 ja SO-101 kätel. ACT on vastupidine: baasmudelit pole, 20 ms tegevussammu kohta.
Mitu oma episoodi ma tegelikult vajan?▾
30 SmolVLA jaoks, 50 GR00T N1.7, GR00T N1.5, Pi0.5 ja ACT jaoks. LeRoboti vaikeseadete (60 s episoodi kohta ja 60 s lähtestamine) korral on 50 episoodi 100 minutit reaalset aega. Laenatud ristkehastuse andmed neid numbreid ei vähenda.
Sources
- DROID: Suuremahuline robotmanipulatsiooni andmestik reaalsetest oludest
- DROIDi dokumendid: allalaadimismahud ja RLDS-episoodi skeem
- BridgeData V2: Andmestik robotõppeks suures ulatuses
- BridgeData V2 projekti leht: koosseis ja kaamera katvus
- Open X-Embodiment: Robootika õppeandmestikud ja RT-X mudelid
- Open X-Embodiment projekti leht
- google-deepmind/open_x_embodiment: andmestike loend ja RT-1-X kontrollpunktid
- any4lerobot: openx2lerobot konverter ja selle ühtne 8-D olek, 7-D tegevus
- IPEC-COMMUNITY/droid_lerobot: meta/info.json ja repo suurus
- IPEC-COMMUNITY/bridge_orig_lerobot: meta/info.json
- IPEC-COMMUNITY/fractal20220817_data_lerobot: google_robot lõik 3 kaadrit sekundis
- huggingface/lerobot: SO jälgija, kinemaatika protsessor, koond- ja salvestuskonfiguratsioonid
- openpi: DROIDi poliitika sisendid ja pi05_droid kontrollpunkt
- pi0: Nägemis-Keele-Tegevuse voomudel üldiseks robotjuhtimiseks
- SmolVLA: Nägemis-Keele-Tegevuse mudel taskukohase ja tõhusa robootika jaoks
Sources
- DROID: A Large-Scale In-The-Wild Robot Manipulation Dataset
- DROID docs: download sizes and the RLDS episode schema
- BridgeData V2: A Dataset for Robot Learning at Scale
- BridgeData V2 project page: composition and camera coverage
- Open X-Embodiment: Robotic Learning Datasets and RT-X Models
- Open X-Embodiment project page
- google-deepmind/open_x_embodiment: dataset list and RT-1-X checkpoints
- any4lerobot: the openx2lerobot converter and its unified 8-D state, 7-D action
- IPEC-COMMUNITY/droid_lerobot: meta/info.json and repo size
- IPEC-COMMUNITY/bridge_orig_lerobot: meta/info.json
- IPEC-COMMUNITY/fractal20220817_data_lerobot: the google_robot slice at 3 fps
- huggingface/lerobot: SO follower, kinematics processor, aggregate and record configs
- openpi: DROID policy inputs and the pi05_droid checkpoint
- pi0: A Vision-Language-Action Flow Model for General Robot Control
- SmolVLA: A Vision-Language-Action Model for Affordable and Efficient Robotics
Ready for high-quality robotics data?
AY-Robots connects your robots to skilled operators worldwide.
Get Started