Direktorijum javnih skupova podataka AY-Robots koji prikazuje LeRobot skupove podataka snimljenih na rukama klase SO-100
Skupovi podatakaOpen X-EmbodimentDROIDSO-100LeRobot

Korišćenje DROID, BridgeData V2 i Open X na SO-100

AY-Robots ResearchAugust 23, 202618 min čitanja

DROID, BridgeData V2 i Open X-Embodiment se konvertuju u 7-D akcije krajnjeg efektora na rukama sa 6 i 7 stepeni slobode (DoF). SO-100 prihvata 6 pozicija zglobova. Šta se prenosi, šta ne, šta umesto toga učiniti.

Kratka verzija

  • LeRobot verzije sva tri dijele jednu konvenciju: 7-D akciju krajnjeg efektora [x, y, z, roll, pitch, yaw, gripper] i 8-D stanje sa dodatnim slotom. SO-100 uzima šest apsolutnih pozicija zglobova.
  • Taj 7-D vektor je artefakt konvertera: DROID-ovo vlastito RLDS polje akcije je 6 brzina zglobova plus pozicija hvataljke, sa Kartezijanskim prikazom u action_dict.
  • Četiri takta: DROID 15 fps, BridgeData V2 5 fps, google_robot isječak 3 fps, SO-100 snimanje na 30 fps.
  • Ne možete ih spojiti sa svojim podacima. validate_all_metadata javlja grešku na prvoj razlici u fps-u, robot_type-u ili karakteristikama, a sva tri se razlikuju.
  • Ono što se prenosi su prethodno obučene težine, a ne epizode. Podaci otvorenog koda čine 9.1 posto pi0-ove mješavine za pre-trening.
  • Njihova najjeftinija stvarna upotreba je testni uređaj: poznati, ispravni DROID uzorak od 2 GB, 100 epizoda koji dokazuje vašu cjevovod prije nego što snimate tokom vikenda.

Postoji javni skup podataka od milion trajektorija na Google Cloud bucketu i SO-100 na stolu koji je koštao 110 do 150 EUR u dijelovima. Zašto prvi ne može naučiti drugog? Djelimično može, ali gotovo nikakav prijenos se ne dešava tamo gdje ljudi očekuju, a dio koji izgleda najlakše uopšte ne radi.

Slijedi: šta se nalazi unutar DROID, BridgeData V2 i Open X-Embodiment, gdje se svaki sudara sa jeftinom 5-DoF rukom, i šta učiniti umjesto toga. Svaki broj ispod potiče iz rada, kartice skupa podataka ili izvorne datoteke kojoj pripada.

Šta tri skupa podataka zapravo sadrže

DROIDBridgeData V2Open X-Embodiment
RobotFranka Panda, 7 DoF, Robotiq 2F-85WidowX 250, 6 DoF, ~4,000 USD oprema22 implementacije, 60 skupova podataka, 34 laboratorije
Skala76k trajektorija, 350 sati60,096 trajektorija1M+ trajektorija, 527 vještina
Raznolikost564 scene, 84 zadatka, 50 sakupljača24 okruženja, 13 vještina160,266 zadataka, 21 institucija
Sastavsve teleoperisano50,365 teleoperisanih, 9,731 skriptovanihpo izvornoj laboratoriji
Brzina kontrole15 Hz5 Hzvarira, 3 fps naviše
Kamere2 x ZED 2 eksterijerne, 1 x ZED Mini za zglobdo 4, većina epizoda samo fiksnašta god je laboratorija koristila
Sirovo preuzimanje1.7 TB RLDS, 8.7 TB sirovog stereo zapisaJPEG arhiveTFDS kante po skupu podataka
Ulazna tačka je LeRobot konverzija, a ne originalna kanta

Malo ljudi još uvijek preuzima 1.7 TB RLDS TFRecords. Organizacija zajednice IPEC-COMMUNITY je ponovo objavila većinu Open X-Embodiment-a u LeRobot formatu skupa podataka sa AV1 videom, gdje DROID zauzima 392 GB. To je verzija sa kojom ćete raditi, a njen meta/info.json je ono što treba prvo pročitati.

DROID

Najstandardizovaniji od tri. Jedna oprema svuda: Franka Panda sa Robotiq 2F-85 hvataljkom, dvije podesive ZED 2 stereo kamere i ZED Mini za zglob, teleoperisana sa Meta Quest 2 kontrolerima, snimljena putem Polymetisa na 15 Hz u prostoru zgloba i krajnjeg efektora prostoru. Jezičke oznake su došle kasnije putem tasq.ai, do tri po epizodi.

  • 76k trajektorija, 350 sati, 564 scene, 84 zadatka, 50 sakupljača na tri kontinenta.
  • Glavni rezultat je ko-trening, a ne samostalni trening: serije pomiješane 50/50 sa demonstracijama unutar domena nadmašile su sljedeću najbolju metodu za 22 posto apsolutnog uspjeha u distribuciji, 17 posto izvan nje.
  • IPEC-COMMUNITY/droid_lerobot: 92,233 episodes, 27,044,326 frames, franka, 15 fps, codebase_version v2.0, three AV1 streams at 180x320, 392 GB.
  • Uzorak za otklanjanje grešaka od 2 GB, 100 epizoda, nalazi se na gs://gresearch/robotics/droid_100. Počnite tamo.

BridgeData V2

Najbliže hobi postavu: WidowX 250 6-DoF ruka, 60,096 trajektorija kroz 24 okruženja i 13 vještina na 5 Hz. Obratite pažnju na sastav: 50,365 ekspertnih teleoperiranih demonstracija plus 9,731 iz randomizirane skriptirane politike odabira i postavljanja, tako da oko 16 posto nije ljudska demonstracija, što je važno za učenje imitacijom kvalitetu. Uobičajeno preuzimanje, IPEC-COMMUNITY/bridge_orig_lerobot, izvještava o 53,192 epizode i 1,893,026 sličica pri 5 fps, robot_type widowx: manje od 60,096 iz rada, stoga pročitajte broj iz meta/info.json umjesto da citirate bilo koji.

Open X-Embodiment

Nije skup podataka u istom smislu: 60 postojećih skupova podataka robota iz 34 laboratorija objedinjeno je u jednu RLDS kolekciju koja pokriva 22 utjelovljenja i preko milijun putanja. BridgeData V2 se nalazi unutar nje kao bridge_orig; google_robot isječak, fractal20220817_data, pretvara se u 87.212 epizoda pri 3 fps.

Objedinjavanje nosi upozorenje koje rad izravno navodi. Za RT-X eksperimente autori pretvaraju svaki izvor u akciju krajnjeg efektora sa 7 stupnjeva slobode (DoF), ali ne poravnavaju koordinatne okvire između skupova podataka i dopuštaju da vrijednosti akcija budu apsolutne ili relativne pozicije ili brzine, prema originalnoj kontrolnoj shemi svakog robota. Njihov zaključak: isti vektor akcije može izazvati vrlo različite pokrete za različite robote.

Direktorij skupova podataka AY-Robots koji prikazuje javne LeRobot skupove podataka s brojem epizoda i opisima zadataka
Javni direktorij skupova podataka na /directory: skupovi podataka već u LeRobot formatu, već usklađeni s podržanom rukom.

Nepodudarnost, u četiri dijela

Nepodudarnost utjelovljenja se obično tretira kao jedan nejasan problem. Postoje četiri, koji se različito manifestuju, a dva se ne mogu popraviti skriptiranjem.

1. Stepeni slobode

SO-100 ima pet zglobova ruke plus hvataljku. Brojano kao motori, to je ruka sa 6 stepeni slobode (DoF), i SmolVLA rad je tako naziva; brojano kao mehanizam za pozicioniranje, to je 5-DoF, i LeRobot je tako naziva u svom docstringu za inverznu kinematiku, koji opisuje IK meke orijentacije na 5-DoF SO-101 gdje zglob prati orijentaciju samo djelimično. Franka ima sedam zglobova za pozicioniranje. Taj jaz određuje koje poze postoje: ruka sa 5 stepeni slobode ne može generalno istovremeno dostići proizvoljnu poziciju i orijentaciju, tako da rješavač vraća najbliže što može, pokret drugačiji od demonstriranog. Pozadina: .

python
# 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-D
Lijevo: LeRobotov SO pratilac, iz src/lerobot/robots/so_follower/so_follower.py. Desno: ulaz DROID politike openpi-ja. Šest protiv osam.

Dakle, gotova DROID kontrolna tačka nije prečica. Physical Intelligence isporučuje pi05_droid na gs://openpi-assets/checkpoints/pi05_droid, a isti README koji hvali njegovu širinu upozorava da se ove ekspertske kontrolne tačke možda neće generalizovati na vašu postavku. Njegovo stanje je osam Franka brojeva zglobova, a njegovi ključevi slika su exterior_image_1_left i wrist_image_left. Nijedna zastavica to ne pretvara u SO-100 komandu sa šest motora.

2. Šta akcioni vektor zapravo govori

Dublje od dimenzionalnosti. U LeRobot konverzijama sva tri govore gde bi hvataljka trebalo da ide, u Kartezijanskom prostoru. SO-100 govori gde bi šest servoa trebalo da ide. Konverzija zahteva kinematički model i rešavač, a ne preoblikovanje.

SvojstvoOXE, DROID i Bridge u LeRobot formiSO-100 u LeRobotu
Akcioni vektor7-D: x, y, z, roll, pitch, yaw, hvataljka6-D: jedna ciljna pozicija po motoru
Vektor stanja8-D, sa slotom za popunjavanje (google_robot koristi kvaternion)6-D, jedan po motoru
OkvirKartezijanski, neusklađen među skupovima podatakaprostor zglobova, kalibracija po ruci
Apsolutno ili relativnobilo koje, odlučuje izvorna laboratorijaapsolutne ciljne pozicije
Jedinicenormalizovano po skupu podataka, zatim diskretizovanostepeni podrazumevano (use_degrees=True), inače -100 do 100
Tihi neuspehdelta očitana kao apsolutnanebaždarena ruka
7-D Kartezijanski vektor je konvencija konvertera, a ne DROID-a

README datoteka openx2lerobot-a dokumentuje jedinstveno 8-dimenzionalno stanje i 7-dimenzionalnu akciju za svaki skup podataka koji konvertuje, odakle potiče pad slot. DROID-ova sopstvena RLDS šema se razlikuje: njen `action` na najvišem nivou je 7-vektor od 6 brzina zglobova plus 1 pozicija hvataljke, sa `cartesian_position`, `cartesian_velocity`, `joint_position` i `joint_velocity` pod `action_dict`. openpi čita prikaz u prostoru zglobova, dok vam LeRobot build daje Kartezijanski. Nijedan nije šest apsolutnih uglova servo motora.

LeRobot isporučuje deo koji nedostaje: SO follower ima procesor kinematike sa koracima InverseKinematicsEEToJoints i ForwardKinematicsJointsToEE. Njegovi ključevi su ee.x, ee.y, ee.z plus vektor rotacije ee.wx, ee.wy, ee.wz i ee.gripper_pos, tako da se čak i kodiranje orijentacije razlikuje od roll-pitch-yaw u datotekama. IK korak uzima orientation_weight, podrazumevano 0.01, čiji docstring kaže da se postavi 0.0 za IK samo za poziciju na nedovoljno aktuiranim rukama. Možete izgraditi most, ali orijentaciona polovina svake pozajmljene akcije ostaje aproksimirana.

3. Brzina kontrole

DROID je 15 Hz, BridgeData V2 5 Hz, google_robot isečak 3 fps; autori pi0-a opisuju open-source deo svoje mešavine kao niskofrekventnu kontrolu između 2 i 10 Hz. LeRobot-ov DatasetRecordConfig podrazumevano postavlja fps 30, episode_time_s 60, reset_time_s 60, num_episodes 50. obučena na podacima od 5 Hz naučila je da jedna akcija pokriva 200 ms. Ponovite je na 30 Hz i ruka puzi; naivno ponovno uzorkovanje razmazuje kadar gde se hvataljka zatvara. Takođe loše interaguje sa : chunk od 100 koraka je 20 sekundi na 5 Hz, 3.3 na 30 Hz.

4. Kamere

BridgeData V2 je randomizovao dve poze kamere svakih 50 trajektorija, a na stranici projekta se navodi da većina podataka ionako nosi samo fiksni prikaz. DROID je koristio podesive ZED 2 nosače plus ZED Mini na zglobu. Imate dve USB veb kamere postavljene odokativno. Položaj kamere nije smetnja za ; to je mnogo od onoga na šta se vizuelni enkoder fokusirao, i ništa u formatu datoteke vam ne govori da se poze razlikuju.

Zamka koja pojede dan

Delovi se dovoljno dobro uklapaju da bi se pokrenuli. Skup podataka se učitava, trening počinje, gubitak opada, pojavljuju se kontrolne tačke, nema grešaka. Zatim politika ne radi ništa prepoznatljivo na ruci i provedete dan tražeći grešku u vašoj skripti za trening. Nema greške: model je naučio kartezijansku distribuciju akcija za robota koji ne postoji u vašoj sobi. Počnite od gubitak opada, politika ne radi ništa, a ne od vaših hiperparametara.

Šta se dešava kada ipak pokušate da spojite podatke

Očigledan plan je spajanje: nekoliko hiljada DROID epizoda plus vaših 50. LeRobot odbija, a odbijanje navodi tri stvari koje se razlikuju.

  1. 1
    Preuzmite uzorak od 100 epizoda, ne punih 1.7 TB

    2 GB je dovoljno da se vidi struktura.

    bash
    pip install gsutil tensorflow tensorflow-datasets
    gsutil -m cp -r gs://gresearch/robotics/droid_100 ~/tensorflow_datasets/
  2. 2
    Pretvorite RLDS u LeRobot format

    openx2lerobot obuhvata standardne OXE transformacije i anotira tip robota i frekvenciju kontrole. README ovo stavlja u convert.sh.

    bash
    git 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
  3. 3
    Pročitajte meta/info.json prije bilo čega drugog

    Ova datoteka odlučuje hoće li ostatak vašeg dana funkcionirati.

    bash
    python -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'])"
  4. 4
    Pokušajte spajanje i pročitajte grešku

    merge učitava svaki skup podataka, zatim validate_all_metadata provjerava fps, robot_type i features u odnosu na prvi na listi, podižući grešku pri prvom neslaganju.

    bash
    lerobot-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.

Referentne vrijednosti dolaze iz skupa podataka koji ste prvi naveli, zbog čega se poruka žali na vaših 30 fps umjesto DROID-ovih 15. Popravite fps i naići ćete na provjeru robot_type; popravite to i naići ćete na provjeru značajki, 7 naspram 6 za akciju. Nijedan redoslijed ne prolazi, a ista zaštita se pokreće u vrijeme snimanja putem sanity_check_dataset_robot_compatibility.

Ne kodirajte robot_type da biste zaobišli provjeru

Na trenutnom LeRobot main-u so100_follower i so101_follower su oba registrovana na jednu zajedničku SOFollowerRobotConfig, tako da string iz stvarnog snimanja nije nužno onaj koji očekujete. Pročitajte ga iz vlastitog meta/info.json, i tretirajte provjeru koju ste morali onemogućiti kao provjeru koja vam je nešto govorila.

Šta se zapravo prenosi?

Težine, ne epizode. Svaka moderna generalistička politika je apsorbovala nešto od toga u pretreniranju, a kada fino podesite iz objavljenog kontrolne tačke to nasleđujete već usklađeno od strane ljudi sa računarskom snagom da to urade kako treba. Rad pi0-a je iskren o proporciji: 9,1 posto njegove mešavine za pretreniranje, brojeći u vremenskim koracima, su podaci otvorenog koda uključujući OXE, Bridge v2 i DROID. Ta cifra je pi0-ova; mešavina svakog dobavljača se razlikuje.

Javni podaci o unakrsnom utjelovljenju na SO-100 projektu
Prednosti
  • Vizuelni i jezički priori: enkoder je video hiljade kuhinja i šolja i zna na šta se odnosi "crveni blok".
  • Prior o strukturi manipulacije: prilaz, zatvaranje, podizanje, transport, otpuštanje, nezavisno od utjelovljenja čak i kada brojevi nisu.
  • Poznat dobar skup podataka za testiranje. Ako vaš posao ne može previše prilagoditi 100 DROID epizoda, problem je u vašoj postavci.
  • Referentne tačke: na domenima skupova podataka malog obima RT-1-X je postigao 50 posto višu prosečnu stopu uspeha od originalne metode ili RT-1, a RT-2-X je nadmašio RT-2 za oko 3x na veštinama u nastajanju.
Kompromisi
  • Nema upotrebljivog nadzora akcija. 7-D Kartezijanska meta nije 6-D komanda zgloba.
  • Nema prenosa položaja kamere, i ništa u podacima vam ne govori da se položaji razlikuju.
  • Nema prenosa vremena: izvori od 3, 5 i 15 fps u odnosu na snimač od 30 fps.
  • Nema prenosa hvataljke. Robotiq 2F-85 i štampana čeljust na STS3215 se razlikuju po sili, hodu i dinamici.
  • Sama skala nije bila dovoljna čak ni za njene autore: u domenima velikih skupova podataka RT-1-X nije nadmašio RT-1 obučen samo na tom skupu podataka.
  • Nema smanjenja broja sopstvenih epizoda koje su vam potrebne.
Sloj modelaPrenosi se?Zašto
Vizuelni enkoderDa, snažnoObjekti i scene su nezavisni od utjelovljenja
Jezičko uzemljenjeDaUputstva su tekst, ne geometrija
Unakrsno-modalna fuzijaUglavnomObraća pažnju na objekat imenovan u upitu
Proprioceptivni enkoderNeUlazna dimenzija i semantika zgloba se razlikuju
Akciona glavaNeObučena na 7-D Kartezijanskom prostoru u kojem se ne nalazite
Statistika normalizacijeNe, i opasnoStrane statistike pomeraju svaku komandu

Zato se SmolVLA ponaša drugačije na jeftinom robotu. Njegov rad odabire 481 skup podataka iz zajednice sa Hugging Face-a, filtriranih po tipu utjelovljenja, broju epizoda, kvalitetu podataka i pokrivenosti kadrova: 22.9K epizoda, 10.6M kadrova, evaluirano na stvarnim SO-100 i SO-101 robotima. Malo i usklađeno nadmašuje veliko i neusklađeno. Uporedite na ACT u odnosu na SmolVLA.

Tri puta vrijedna razmatranja

Put A: fino podešavanje iz kontrolne tačke koja je već obradila podatke

Većina ljudi bi trebala izabrati ovaj put. Nikada ne dirate DROID ili Open X-Embodiment: odaberite politiku čija je pretobuka već apsorbovala podatke o unakrsnom utjelovljenju, snimite vlastite epizode, fino podesite.

PolitikaParametriMin. epizodaFormat skupa podatakaGPU nivoInferencijaOsnovna kontrolna tačka
GR00T N1.7~3 B, ~40 M trenirano finim podešavanjem50LeRobot v2.0 or v2.1A100 or H100 80 GB152 ms po korakunvidia/GR00T-N1.7-3B
GR00T N1.5~3 B50LeRobot v2.0 or v2.1A100 or H100 80 GB165 msnvidia/GR00T-N1.5-3B
Pi0.5~3 B, PaliGemma okosnica50LeRobot v3.0A100 or H100 80 GB485 mslerobot/pi05_base
SmolVLA~450 M30LeRobot v3.0RTX 4090 or any 24 GB245 mslerobot/smolvla_base
ACT~80 M50LeRobot v3.0RTX 4090 or any 24 GB20 msnijedan, od nule

ACT je iskren granični slučaj: nema osnovnog modela, tako da nijedan javni podatak nikada ne dolazi do njega. To nije automatski nedostatak, jer sa 20 ms po koraku akcije, to je jedini od pet koji može zatvoriti brzu petlju, kao što stranica ACT navodi. Odaberite po zadatku koristeći svih pet upoređenih, GR00T N1.7 protiv Pi0.5, i 332 rezultata benčmarka za 85 modela u areni.

Put B: koristite DROID kao testni uređaj

Uzorak od 100 epizoda je najboljih 2 GB koje ćete preuzeti ovog mjeseca, i to ne za obuku. To je skup podataka za koji znate da je ispravan. Pokrenite svoj konverter, učitavač i kratak GPU posao na njemu; sve što ne uspije je infrastrukturna greška pronađena dok je bila jeftina. NVIDIA radi isto u velikom obimu: GR00T N1.7 kartica navodi četiri post-trenirane varijante, za Bridge i Fractal u SimplerEnv, DROID i LIBERO.

Put C: snimite svoje, namjerno

Trideset do pedeset zvuči malo pored 76.000 dok se ne sjetite da su vaše jedine s vašom rukom, vašim kamerama i vašim stolom. Prema zadanim postavkama LeRobota, 50 epizoda je 100 minuta stvarnog vremena. Pogledajte , i .

Stranica s AY-Robots vodičem za snimanje koja prikazuje korake za snimanje LeRobot skupa podataka iz sesije teleoperacije
Vodič za snimanje na /learn/record-your-first-dataset: korak koji javni podaci ne mogu zamijeniti.

Dva načina za prelazak s javnih podataka na funkcionalnu politiku

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.

  1. 1
    Install LeRobot with the extras the scripts need

    The record and train entry points each declare their own extra.

    bash
    pip install 'lerobot[core_scripts]'   # lerobot-record
    pip install 'lerobot[training]'      # lerobot-train
    pip install gsutil tensorflow tensorflow-datasets
  2. 2
    Get a small, known-good slice

    100 DROID episodes, 2 GB.

    bash
    gsutil -m cp -r gs://gresearch/robotics/droid_100 ~/tensorflow_datasets/
  3. 3
    Convert to LeRobot form

    Writes the unified 8-D state and 7-D action, annotating robot type and control frequency.

    bash
    python openx_rlds.py \
        --raw-dir ~/tensorflow_datasets/droid_100/1.0.0 \
        --local-dir ~/lerobot_droid100 \
        --repo-id you/droid100_lerobot \
        --use-videos
  4. 4
    Check 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.

    bash
    python src/lerobot/scripts/convert_dataset_v21_to_v30.py \
        --repo-id=you/droid100_lerobot
  5. 5
    Record your own episodes

    Defaults: 30 fps, 60 s per episode, 60 s reset, 50 episodes. The teleoperator type is so100_leader.

    bash
    lerobot-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"
  6. 6
    Fine-tune on your data only

    Weights from public data, actions from your own. Do not mix the datasets.

    bash
    lerobot-train \
      --policy.path=lerobot/smolvla_base \
      --dataset.repo_id=you/so100_pick_block \
      --policy.device=cuda \
      --batch_size=4 \
      --steps=20000
Where the time actually goes

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.

Stranica za preuzimanje desktop klijenta AY-Robots, klijenta koji snima skupove podataka u LeRobot formatu iz sesije teleoperacije.
Desktop klijent na /download piše LeRobot skupove podataka direktno iz teleop sesije, zaobilazeći RLDS konverziju.

Koliko košta svaka putanja

PutanjaSkladišteLjudsko vrijemeTrošak GPU-aŠansa da pomjeri vašu ruku
Konvertovani DROID sam392 GBdani konverzije4 to 12 USDvrlo niska, pogrešan akcioni prostor
DROID spojen sa vašim epizodamaobojeblocked by validate_all_metadatan/anema, ne pokreće se
SmolVLA, 30 do 50 vlastitih epizodanekoliko GB100 min snimanja1 to 3 USDvisoka
GR00T N1.7, 50 vlastitih epizodanekoliko GB100 min snimanja4 to 12 USDvisoka
ACT od nule, 50 vlastitih epizodanekoliko GB100 min snimanja1 to 3 USDvisoka, 20 ms inferencije
DROID uzorak kao testni uređaj2 GBjedno popodnejedno kratko pokretanjevisoka, kao validacija

Asimetrija je poenta: putanja koja pozajmljuje najviše podataka je najskuplja i najmanje verovatno će pomeriti vašu ruku. Manje od dva sata vaše sopstvene teleoperacije nadmašuje terabajt tuđe Franke. Nemate još ruku? /live strimuje fizički SO-100 bez prijave. Zatim obučite svoju prvu politiku, i SmolVLA na SO-100 za specifični vodič.

Razuman podrazumevani plan

Preuzmite uzorak DROID-a od 2 GB i koristite ga da dokažete svoj pajplajn. Ignorišite ostalih 1.7 TB. Snimite 50 epizoda jednog zadatka sa fiksnim kamerama. Fino podesite SmolVLA prvo, jer je sa minimalno 30 epizoda na kartici od 24 GB najjeftinije za iteraciju, zatim pokušajte sa GR00T N1.7 na istim podacima. Uporedite na svom zadatku, a ne na benčmarku.

Snimite skupove podataka koji već odgovaraju vašoj ruci

Desktop klijent piše skupove podataka u LeRobot formatu direktno iz sesije teleoperacije: prava ruka, prava brzina kadrova, pravi akcioni prostor. Bez RLDS konverzije, bez premapiranja.

Preuzmite desktop klijent
Mogu li obučiti politiku na DROID-u i pokrenuti je na svom SO-100?

Ne direktno. U LeRobot verziji, DROID akcije su 7-D komande krajnjeg efektora na Franka Panda robotu pri 15 fps; u sirovom RLDS-u to su 6 brzina zglobova plus pozicija hvataljke. SO-100 uzima 6 apsolutnih pozicija zglobova. Bila bi vam potrebna sloj inverzne kinematike, a čak i tada zglob sa 5 stepeni slobode ne može reprodukovati proizvoljne poze sa 6 stepeni slobode.

Mogu li mešati DROID ili Bridge epizode sa svojim SO-100 epizodama?

Ne. validate_all_metadata zahteva identičan fps, robot_type i feature schema i podiže ValueError pri prvom neslaganju. Sva tri se razlikuju: 15 ili 5 fps naspram 30, franka ili widowx naspram vaše ruke, oblici akcija od 7 naspram 6. Prepisivanje metapodataka da bi se prošla provera ne popravlja semantiku.

Da li je Open X-Embodiment onda beskoristan za jeftinu ruku?

Ne, ali njegova vrednost vam dolazi kroz preobučene težine, a ne kroz epizode. Skupovi podataka otvorenog koda, uključujući OXE, Bridge v2 i DROID, čine 9.1 posto pi0-ove mešavine za preobuku, a NVIDIA isporučuje GR00T N1.7 varijante post-obučene na Bridge, Fractal, DROID i LIBERO. Ono što ne možete učiniti je dodati te epizode svom sopstvenom snimku.

Koja politika najviše koristi od javnih podataka o unakrsnom otelotvorenju?

Pi0.5 i GR00T modeli nose najviše preobuke za unakrsno otelotvorenje, ali SmolVLA se često najbolje ponaša na jeftinoj ruci: njegov skup za preobuku sastoji se od 481 skupova podataka zajednice, 22.9K epizoda i 10.6M kadrova, evaluiranih na stvarnim SO-100 i SO-101 rukama. ACT je suprotno: nema osnovni model, 20 ms po koraku akcije.

Koliko mi je zapravo potrebno sopstvenih epizoda?

30 za SmolVLA, 50 za GR00T N1.7, GR00T N1.5, Pi0.5 i ACT. Prema podrazumevanim postavkama LeRobota od 60 s po epizodi i 60 s resetovanja, 50 epizoda je 100 minuta stvarnog vremena. Pozajmljeni podaci o unakrsnom otelotvorenju ne smanjuju te brojeve.

Ready for high-quality robotics data?

AY-Robots connects your robots to skilled operators worldwide.

Get Started