
DROID, BridgeData V2 na Open X-Embodiment hubadilika kuwa vitendo vya 7-D vya ncha-tendaji kwenye mikono ya 6 na 7-DoF. SO-100 huchukua nafasi 6 za viungo. Ni nini kinachohamishwa, ni nini kisichohamishwa, na nini cha kufanya badala yake.
Toleo fupi
- •Miundo ya LeRobot ya zote tatu inashiriki kanuni moja: kitendo cha 7-D cha kiishio cha mkono [x, y, z, roll, pitch, yaw, gripper] na hali ya 8-D yenye nafasi ya pedi. SO-100 huchukua nafasi sita kamili za viungo.
- •Vekta hiyo ya 7-D ni zao la kigeuzi: sehemu ya kitendo ya RLDS ya DROID yenyewe ni kasi 6 za viungo pamoja na nafasi ya kishika, na mtazamo wa Cartesian katika action_dict.
- •Saa nne: DROID 15 fps, BridgeData V2 5 fps, kipande cha google_robot 3 fps, SO-100 ikirekodi kwa 30 fps.
- •Huwezi kuziunganisha na data yako mwenyewe. validate_all_metadata huibua hitilafu kwenye ya kwanza kati ya fps, robot_type au features zinazotofautiana, na zote tatu zinatofautiana.
- •Kinachohamishwa ni uzito uliopitishwa mafunzo, si vipindi. Data ya chanzo huria ni asilimia 9.1 ya mchanganyiko wa mafunzo ya awali ya pi0.
- •Matumizi yao halisi ya bei nafuu ni kifaa cha kupima: sampuli ya DROID ya 2 GB, vipindi 100 iliyo thabiti inayothibitisha mfumo wako kabla ya kurekodi kwa wikendi.
Kuna hifadhidata ya umma ya mamilioni ya mienendo kwenye Google Cloud bucket na SO-100 mezani iliyogharimu 110 hadi 150 EUR kwa vipuri. Kwa nini ya kwanza haiwezi kufundisha ya pili? Kwa kiasi fulani inaweza, lakini karibu hakuna uhamisho unaotokea pale watu wanapotarajia, na sehemu inayoonekana rahisi haifanyi kazi kabisa.
Kinachofuata: kile kilicho ndani ya DROID, BridgeData V2 na Open X-Embodiment, ambapo kila moja inagongana na mkono wa 5-DoF wa gharama nafuu, na nini cha kufanya badala yake. Kila namba hapa chini ilitoka kwenye karatasi, kadi ya hifadhidata au faili chanzo inayoihusu.
Kile ambacho hifadhidata hizo tatu zinazo kwa kweli
| DROID | BridgeData V2 | Open X-Embodiment | |
|---|---|---|---|
| Roboti | Franka Panda, 7 DoF, Robotiq 2F-85 | WidowX 250, 6 DoF, kifaa cha ~4,000 USD | miundo 22, seti za data 60, maabara 34 |
| Kiwango | mielekeo 76k, saa 350 | mielekeo 60,096 | mielekeo 1M+, ujuzi 527 |
| Utofauti | matukio 564, kazi 84, wakusanyaji 50 | mazingira 24, ujuzi 13 | kazi 160,266, taasisi 21 |
| Muundo | zote zikiendeshwa kwa mbali | 50,365 zikiendeshwa kwa mbali, 9,731 zilizopangwa | kwa kila maabara chanzo |
| Kasi ya udhibiti | 15 Hz | 5 Hz | inatofautiana, 3 fps na kuendelea |
| Kamera | 2 x ZED 2 za nje, 1 x ZED Mini ya mkono | hadi 4, vipindi vingi ni ile iliyowekwa tu | chochote kilichotumiwa na maabara |
| Upakuaji ghafi | 1.7 TB RLDS, 8.7 TB stereo ghafi | kumbukumbu za JPEG | ndoo za TFDS kwa kila seti ya data |
Watu wachache bado wanapakua 1.7 TB za RLDS TFRecords. Shirika la jamii IPEC-COMMUNITY limerudisha tena sehemu kubwa ya Open X-Embodiment katika mfumo wa seti ya data ya LeRobot na video ya AV1, ambapo DROID inafikia 392 GB. Hiyo ndiyo toleo utakalo fanyia kazi, na meta/info.json yake ndiyo ya kusoma kwanza.
DROID
Iliyosanifishwa zaidi kati ya hizi tatu. Kifaa kimoja kila mahali: Franka Panda yenye kishika cha Robotiq 2F-85, kamera mbili za stereo za ZED 2 zinazoweza kurekebishwa na ZED Mini ya mkono, inayoendeshwa kwa mbali na vidhibiti vya Meta Quest 2, iliyorekodiwa kupitia Polymetis kwa 15 Hz katika nafasi ya viungo na kiambato cha mwisho nafasi. Lebo za lugha zilikuja baadaye kupitia tasq.ai, hadi tatu kwa kila kipindi.
- Mikusanyiko 76k, saa 350, matukio 564, kazi 84, wakusanyaji 50 katika mabara matatu.
- Matokeo makuu ni mafunzo ya pamoja, si mafunzo ya pekee: makundi yaliyochanganywa 50/50 na maonyesho ya ndani ya kikoa yalishinda njia bora inayofuata kwa asilimia 22 ya mafanikio kamili katika usambazaji, asilimia 17 nje yake.
- IPEC-COMMUNITY/droid_lerobot: vipindi 92,233, fremu 27,044,326, franka, 15 fps, codebase_version v2.0, mitiririko mitatu ya AV1 kwa 180x320, 392 GB.
- Sampuli ya utatuzi ya GB 2, vipindi 100 inapatikana kwenye gs://gresearch/robotics/droid_100. Anza hapo.
BridgeData V2
Karibu zaidi na usanidi wa hobby: mkono wa WidowX 250 6-DoF, mikusanyiko 60,096 katika mazingira 24 na ujuzi 13 kwa 5 Hz. Zingatia muundo: maonyesho 50,365 ya wataalamu yaliyodhibitiwa kwa mbali pamoja na 9,731 kutoka kwa sera ya nasibu ya kuokota na kuweka, hivyo karibu asilimia 16 si maonyesho ya binadamu, jambo ambalo ni muhimu kwa ujifunzaji wa kuiga ubora. Upakuaji wa kawaida, IPEC-COMMUNITY/bridge_orig_lerobot, unaripoti vipindi 53,192 na fremu 1,893,026 kwa 5 fps, robot_type widowx: chache kuliko 60,096 za karatasi, kwa hivyo soma hesabu kutoka meta/info.json badala ya kunukuu mojawapo.
Open X-Embodiment
Sio hifadhidata kwa maana ile ile: Hifadhidata 60 zilizopo za roboti kutoka maabara 34 zimekusanywa katika mkusanyiko mmoja wa RLDS unaojumuisha miundo 22 na zaidi ya mamilioni ya miondoko. BridgeData V2 inakaa ndani yake kama bridge_orig; sehemu ya google_robot, fractal20220817_data, inabadilika kuwa vipindi 87,212 kwa 3 fps.
Ukusanyaji huu una tahadhari ambayo karatasi inasema waziwazi. Kwa majaribio ya RT-X, waandishi hubadilisha kila chanzo kuwa hatua ya 7-DoF ya kiambato cha mwisho, lakini hawaunganishi fremu za kuratibu katika hifadhidata zote, na huruhusu thamani za hatua kuwa nafasi kamili au za jamaa au kasi, kulingana na mpango asili wa udhibiti wa kila roboti. Hitimisho lao: vekta ile ile ya hatua inaweza kusababisha miondoko tofauti sana kwa roboti tofauti.

Kutolingana, katika sehemu nne
Kutolingana kwa umbo kwa kawaida huchukuliwa kama tatizo moja lisiloeleweka. Ni manne, hushindwa kwa njia tofauti, na mawili hayawezi kurekebishwa kwa kuandika hati.
1. Viwango vya uhuru
SO-100 ina viungo vitano vya mkono pamoja na kishika. Ikihesabiwa kama mota, ni mkono wa 6-DoF, na karatasi ya SmolVLA inauita hivyo; ikihesabiwa kama utaratibu wa kuweka nafasi ni 5-DoF, na LeRobot inauita hivyo katika docstring yake ya inverse-kinematics, ambayo inaelezea IK ya mwelekeo laini kwenye SO-101 ya 5-DOF ambapo kifundo cha mkono hufuatilia mwelekeo kwa sehemu tu. Franka ina viungo saba vya kuweka nafasi. Pengo hilo huamua ni pozi gani zipo: mkono wa 5-DoF kwa ujumla hauwezi kufikia nafasi na mwelekeo holela kwa wakati mmoja, kwa hivyo kirekebishaji hurudisha kilicho karibu zaidi kinachoweza, mwendo tofauti na ule ulioonyeshwa. Mandharinyuma: .
# 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-DKwa hivyo, kituo cha ukaguzi cha DROID kilichotengenezwa tayari si njia ya mkato. Physical Intelligence husafirisha pi05_droid kwenye gs://openpi-assets/checkpoints/pi05_droid, na README hiyo hiyo inayopongeza upana wake inaonya kuwa vituo hivi vya ukaguzi vya wataalamu huenda visiweze kutumika kwa usanidi wako. Hali yake ni namba nane za viungo vya Franka na funguo zake za picha ni exterior_image_1_left na wrist_image_left. Hakuna bendera inayogeuka kuwa amri ya SO-100 ya motor sita.
2. Kile ambacho vekta ya kitendo inasema kweli
Kina zaidi ya vipimo. Katika ubadilishaji wa LeRobot zote tatu zinasema mahali ambapo kishika kinapaswa kwenda, katika nafasi ya Cartesian. SO-100 inasema mahali ambapo servomotor sita zinapaswa kwenda. Kubadilisha kunahitaji mfumo wa kinematiki na kisuluhishi, si kubadilisha umbo.
| Sifa | OXE, DROID na Bridge katika mfumo wa LeRobot | SO-100 katika LeRobot |
|---|---|---|
| Vekta ya kitendo | 7-D: x, y, z, roll, pitch, yaw, kishika | 6-D: nafasi moja ya lengo kwa kila motor |
| Vekta ya hali | 8-D, na nafasi ya pedi (google_robot hutumia quaternion) | 6-D, moja kwa kila motor |
| Fremu | Cartesian, isiyolingana katika seti za data | nafasi ya viungo, urekebishaji kwa kila mkono |
| Kamili au jamaa | yoyote, iliyoamuliwa na maabara chanzo | nafasi kamili za lengo |
| Vitengo | iliyorekebishwa kwa kila seti ya data, kisha kugawanywa | digrii kwa chaguo-msingi (use_degrees=True), vinginevyo -100 hadi 100 |
| Kushindwa kimya | delta iliyosomwa kama kamili | mkono usio na kalibresheni |
README ya openx2lerobot inaandika hali ya 8-dim iliyounganishwa na kitendo cha 7-dim kwa kila seti ya data inayoibadilisha, ambapo nafasi ya pad inatoka. Schema ya RLDS ya DROID inatofautiana: action yake ya kiwango cha juu ni vekta ya 7 ya kasi 6 za viungo pamoja na nafasi 1 ya kishika, ikiwa na cartesian_position, cartesian_velocity, joint_position na joint_velocity chini ya action_dict. openpi inasoma mtazamo wa nafasi ya viungo, toleo la LeRobot linakupa la Cartesian. Hakuna hata moja iliyo pembe sita kamili za servo.
LeRobot inatoa kipande kinachokosekana: mfuasi wa SO ana kichakataji cha kinematiki chenye hatua za InverseKinematicsEEToJoints na ForwardKinematicsJointsToEE. Funguo zake ni ee.x, ee.y, ee.z pamoja na vekta ya mzunguko ee.wx, ee.wy, ee.wz na ee.gripper_pos, hivyo hata usimbaji wa mwelekeo unatofautiana na roll-pitch-yaw kwenye faili. Hatua ya IK inachukua orientation_weight, chaguomsingi 0.01, ambayo docstring yake inasema kuweka 0.0 kwa IK ya nafasi pekee kwenye mikono isiyo na nguvu za kutosha. Unaweza kujenga daraja, lakini nusu ya mwelekeo ya kila kitendo kilichokopwa inabaki kukadiriwa.
3. Kiwango cha udhibiti
DROID ni 15 Hz, BridgeData V2 5 Hz, sehemu ya google_robot 3 fps; waandishi wa pi0 wanaelezea sehemu ya chanzo huria ya mchanganyiko wao kama udhibiti wa masafa ya chini kati ya 2 na 10 Hz. DatasetRecordConfig ya LeRobot inatumia chaguomsingi ya fps 30, episode_time_s 60, reset_time_s 60, num_episodes 50. A iliyefunzwa kwa data ya 5 Hz ilijifunza kuwa kitendo kimoja kinachukua 200 ms. Icheze tena kwa 30 Hz na mkono utatambaa; sampuli upya bila kufikiri na utaharibu fremu ambapo kishika kinafunga. Pia inaingiliana vibaya na : kipande cha hatua 100 ni sekunde 20 kwa 5 Hz, 3.3 kwa 30 Hz.
4. Kamera
BridgeData V2 ilichagua nasibu pozi mbili za kamera kila mizunguko 50, na ukurasa wake wa mradi unaeleza kuwa data nyingi hubeba tu mtazamo usiobadilika. DROID ilitumia viunga vya ZED 2 vinavyoweza kurekebishwa pamoja na ZED Mini ya mkono. Una kamera mbili za USB zilizowekwa kwa macho. Pozi ya kamera si kigezo cha usumbufu kwa ; ni sehemu kubwa ya kile ambacho kisimbuzi cha kuona kilizingatia, na hakuna chochote katika umbizo la faili kinachokuambia kuwa pozi zinatofautiana.
Vipande vinaendana vizuri vya kutosha kuendesha. Seti ya data inapakia, mafunzo yanaanza, hasara inapungua, vituo vya ukaguzi vinaonekana, hakuna makosa. Kisha sera haifanyi chochote kinachotambulika kwenye mkono na unatumia siku nzima kutafuta hitilafu kwenye hati yako ya mafunzo. Hakuna hitilafu: mfumo ulijifunza usambazaji wa vitendo vya Cartesian kwa roboti ambayo haipo chumbani kwako. Anza kwenye hasara inapungua, sera haifanyi chochote, si kwenye vigezo vyako vya juu.
Nini kinatokea unapojaribu kuunganisha data hata hivyo
Mpango dhahiri ni kuunganisha: vipindi elfu chache vya DROID pamoja na 50 yako. LeRobot inakataa, na kukataa huko kunataja mambo matatu yanayotofautiana.
- 1Vuta sampuli ya vipindi 100, siyo TB 1.7 kamili
GB 2 zinatosha kuona muundo.
bashpip install gsutil tensorflow tensorflow-datasets gsutil -m cp -r gs://gresearch/robotics/droid_100 ~/tensorflow_datasets/ - 2Badilisha RLDS kuwa umbizo la LeRobot
openx2lerobot inafunga mabadiliko ya kawaida ya OXE na kuweka alama kwenye aina ya roboti na marudio ya udhibiti. README inaweka hii kwenye 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 - 3Soma meta/info.json kabla ya kitu kingine chochote
Faili hili linaamua kama siku yako iliyobaki itafanya kazi.
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'])" - 4Jaribu kuunganisha na soma kosa
merge inapaki kila seti ya data, kisha validate_all_metadata inakagua fps, robot_type na vipengele dhidi ya cha kwanza kwenye orodha, ikitoa kosa kwenye kutofautiana kwa kwanza.
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.
Thamani za marejeleo hutoka kwenye seti ya data yoyote uliyoorodhesha kwanza, ndiyo maana ujumbe unalalamika kuhusu fps yako 30 badala ya 15 ya DROID. Rekebisha fps na utakutana na ukaguzi wa robot_type; rekebisha hilo na utakutana na ukaguzi wa kipengele, 7 dhidi ya 6 kwa kitendo. Hakuna mpangilio unaopita, na mlinzi huyo huyo huendeshwa wakati wa kurekodi kupitia sanity_check_dataset_robot_compatibility.
Kwenye LeRobot kuu ya sasa, so100_follower na so101_follower zote zimesajiliwa kwenye SOFollowerRobotConfig moja iliyoshirikiwa, kwa hivyo mfuatano kutoka kwa rekodi halisi si lazima uwe ule unaotarajia. Soma kutoka kwenye meta/info.json yako mwenyewe, na chukulia ukaguzi uliolazimika kuuzima kama ukaguzi uliokuwa ukikwambia kitu.
Kwa hivyo, ni nini hasa kinachohamishwa?
Uzito, si vipindi. Kila sera ya kisasa ya jumla ilichukua baadhi yake katika mafunzo ya awali, na unapo rekebisha vizuri kutoka kwa kituo cha ukaguzi unairithi tayari ikiwa imerekebishwa na watu wenye uwezo wa kompyuta kuifanya ipasavyo. Karatasi ya pi0 inazungumzia waziwazi uwiano: asilimia 9.1 ya mchanganyiko wake wa mafunzo ya awali, ikihesabiwa kwa hatua za muda, ni data ya chanzo huria ikiwemo OXE, Bridge v2 na DROID. Takwimu hiyo ni ya pi0; mchanganyiko wa kila muuzaji unatofautiana.
- Vipaumbele vya kuona na lugha: kisimbuzi kimeona maelfu ya jikoni na vikombe na kinajua "kizuizi chekundu" kinarejelea nini.
- Kipaumbele juu ya muundo wa udanganyifu: kukaribia, kufunga, kuinua, kusafirisha, kuachilia, bila kujali umbo hata kama namba haziko.
- Seti ya data inayojulikana kuwa nzuri kwa majaribio. Ikiwa kazi yako haiwezi kuzidi vipindi 100 vya DROID, tatizo ni usanidi wako.
- Pointi za marejeleo: katika vikoa vya data ndogo, RT-1-X ilifikia kiwango cha mafanikio cha wastani cha asilimia 50 zaidi kuliko njia asili au RT-1, na RT-2-X ilishinda RT-2 kwa takriban mara 3 kwenye ujuzi unaoibuka.
- Hakuna usimamizi wa vitendo unaoweza kutumika. Lengo la Cartesian la 7-D si amri ya pamoja ya 6-D.
- Hakuna uhamishaji wa mkao wa kamera, na hakuna chochote kwenye data kinachokuambia mkao unatofautiana.
- Hakuna uhamishaji wa muda: vyanzo vya 3, 5 na 15 fps dhidi ya kinasa sauti cha 30 fps.
- Hakuna uhamishaji wa kishika. Robotiq 2F-85 na taya iliyochapishwa kwenye STS3215 hutofautiana kwa nguvu, mwendo na mienendo.
- Kiwango pekee hakikutosha hata kwa waandishi wake: katika vikoa vya data kubwa, RT-1-X haikushinda RT-1 iliyefunzwa kwa data hiyo pekee.
- Hakuna upunguzaji wa idadi ya vipindi vyako unavyohitaji.
| Safu ya modeli | Inahamisha? | Kwa nini |
|---|---|---|
| Kisimbuzi cha kuona | Ndio, kwa nguvu | Vitu na mandhari havitegemei umbo |
| Msingi wa lugha | Ndio | Maelekezo ni maandishi, si jiometri |
| Muunganisho wa njia mbalimbali | Kwa kiasi kikubwa | Huzingatia kitu kilichotajwa kwenye kidokezo |
| Kisimbuzi cha proprioception | Hapana | Kipimo cha pembejeo na semantiki za pamoja hutofautiana |
| Kichwa cha kitendo | Hapana | Imefunzwa kwenye nafasi ya Cartesian ya 7-D ambayo hauko ndani yake |
| Takwimu za urekebishaji | Hapana, na hatari | Takwimu za kigeni hubadilisha kila amri |
Hii ndiyo sababu SmolVLA hufanya kazi tofauti kwenye mkono wa gharama nafuu. Karatasi yake huchagua seti data 481 za jamii kutoka Hugging Face, zilizochujwa kwa aina ya umbo, idadi ya vipindi, ubora wa data na ufunikaji wa fremu: vipindi 22.9K, fremu 10.6M, zilizotathminiwa kwenye mikono halisi ya SO-100 na SO-101. Ndogo na iliyolingana inashinda kubwa na isiyolingana. Linganisha kwenye ACT dhidi ya SmolVLA.
Njia tatu zinazofaa kuchukuliwa
Njia A: rekebisha kutoka kwenye kituo cha ukaguzi ambacho tayari kimechukua data
Watu wengi wanapaswa kuchukua hii. Hutawahi kugusa DROID au Open X-Embodiment: chagua sera ambayo mafunzo yake ya awali tayari yamechukua data ya miili tofauti, rekodi vipindi vyako mwenyewe, rekebisha.
| Sera | Vigezo | Vipindi vya chini | Umbizo la Data | Kiwango cha GPU | Utabiri | Kituo cha msingi |
|---|---|---|---|---|---|---|
| GR00T N1.7 | ~3 B, ~40 M iliyefunzwa kwa urekebishaji mzuri | 50 | LeRobot v2.0 or v2.1 | A100 or H100 80 GB | 152 ms kwa kila hatua | 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 utegemezi mkuu | 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 | hakuna, kutoka mwanzo |
ACT ni kisa cha kipekee cha kweli: hakuna modeli ya msingi, kwa hivyo hakuna data yoyote ya umma inayoifikia. Hii si hasara kiotomatiki, kwani kwa 20 ms kwa kila hatua ya kitendo ndiyo pekee kati ya tano inayoweza kufunga kitanzi cha haraka, kama vile ukurasa wa ACT, inavyoeleza. Chagua kwa kazi ukitumia zote tano zikilinganishwa, GR00T N1.7 dhidi ya Pi0.5, na matokeo 332 ya vigezo katika modeli 85 ndani ya uwanja.
Njia B: tumia DROID kama kifaa cha majaribio
Sampuli ya vipindi 100 ndiyo GB 2 bora utakayopakua mwezi huu, na si kwa ajili ya mafunzo. Ni seti ya data unayojua ni sahihi. Endesha kigeuzi chako, kipakiaji na kazi fupi ya GPU juu yake; chochote kinachoshindwa ni hitilafu ya miundombinu iliyopatikana wakati ilikuwa rahisi. NVIDIA hufanya vivyo hivyo kwa kiwango kikubwa: kadi ya GR00T N1.7 inaorodhesha lahaja nne zilizofunzwa baada ya hapo, kwa Bridge na Fractal katika SimplerEnv, DROID na LIBERO.
Njia C: rekodi yako mwenyewe, kwa makusudi
Thelathini hadi hamsini inaonekana kidogo ikilinganishwa na 76,000 hadi utakumbuka kuwa zako ndizo pekee zenye mkono wako, kamera zako na meza yako. Kwa mipangilio chaguomsingi ya LeRobot, vipindi 50 ni dakika 100 za saa ya ukuta. Tazama , na .

Njia mbili za kupata sera inayofanya kazi kutoka kwa data ya umma
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.

Gharama ya kila njia
| Njia | Hifadhi | Muda wa binadamu | Gharama ya GPU | Uwezekano wa kusogeza mkono wako |
|---|---|---|---|---|
| DROID iliyobadilishwa pekee | 392 GB | siku za ubadilishaji | 4 to 12 USD | chini sana, nafasi mbaya ya hatua |
| DROID iliyounganishwa na vipindi vyako | zote mbili | blocked by validate_all_metadata | n/a | hakuna, haifanyi kazi |
| SmolVLA, vipindi 30 hadi 50 vyako mwenyewe | GB chache | kurekodi kwa dakika 100 | 1 to 3 USD | juu |
| GR00T N1.7, vipindi 50 vyako mwenyewe | GB chache | kurekodi kwa dakika 100 | 4 to 12 USD | juu |
| ACT kuanzia mwanzo, vipindi 50 vyako mwenyewe | GB chache | kurekodi kwa dakika 100 | 1 to 3 USD | juu, 20 ms inference |
| Sampuli ya DROID kama kifaa cha majaribio | 2 GB | alasiri | kukimbia kifupi kimoja | juu, kama uthibitisho |
Asymmetry ndio hoja: njia inayokopa data nyingi zaidi ndiyo ghali zaidi na isiyowezekana kusogeza mkono wako. Chini ya saa mbili za teleoperesheni yako mwenyewe inashinda terabyte ya Franka ya mtu mwingine. Bado huna mkono? /live huonyesha SO-100 halisi bila kujisajili. Kisha funza sera yako ya kwanza, na SmolVLA kwenye SO-100 kwa mwongozo maalum.
Pakua sampuli ya DROID ya GB 2 na uitumie kuthibitisha mfumo wako. Puuza TB nyingine 1.7. Rekodi vipindi 50 vya kazi moja na kamera zisizohamishika. Rekebisha SmolVLA kwanza, kwa sababu kwa vipindi visivyopungua 30 kwenye kadi ya GB 24 ni rahisi zaidi kurudia, kisha jaribu GR00T N1.7 kwenye data hiyo hiyo. Linganisha kwenye kazi yako, si kwenye kigezo.
Rekodi seti za data zinazolingana na mkono wako
Kiteja cha kompyuta huandika seti za data za umbizo la LeRobot moja kwa moja kutoka kwa kipindi cha teleop: mkono sahihi, kasi sahihi ya fremu, nafasi sahihi ya vitendo. Hakuna ubadilishaji wa RLDS, hakuna ramani upya.
Pata kiteja cha kompyutaJe, ninaweza kufunza sera kwenye DROID na kuiendesha kwenye SO-100 yangu?▾
Si moja kwa moja. Katika ujenzi wa LeRobot, vitendo vya DROID ni amri za 7-D za mwisho wa kiendeshaji kwenye Franka Panda kwa 15 fps; katika RLDS ghafi ni kasi 6 za viungo pamoja na nafasi ya kishika. SO-100 inachukua nafasi 6 kamili za viungo. Ungehitaji safu ya inverse-kinematics, na hata hivyo, kifundo cha mkono cha 5-DoF hakiwezi kuzalisha pozi za 6-DoF kiholela.
Je, ninaweza kuchanganya vipindi vya DROID au Bridge na vipindi vyangu vya SO-100?▾
Hapana. validate_all_metadata inahitaji fps, robot_type na schema ya vipengele vinavyofanana na huibua ValueError kwenye tofauti ya kwanza. Zote tatu zinatofautiana: 15 au 5 fps dhidi ya 30, franka au widowx dhidi ya mkono wako, maumbo ya vitendo ya 7 dhidi ya 6. Kuandika upya metadata ili kupitisha ukaguzi hakurekebishi semantiki.
Je, Open X-Embodiment haina maana kwa mkono wa gharama nafuu basi?▾
Hapana, lakini thamani yake inakufikia kupitia uzito uliopitishwa, si vipindi. Seti za data za chanzo huria ikiwemo OXE, Bridge v2 na DROID ni asilimia 9.1 ya mchanganyiko wa mafunzo ya awali ya pi0, na NVIDIA inasambaza GR00T N1.7 variants zilizofunzwa baada ya Bridge, Fractal, DROID na LIBERO. Kile ambacho huwezi kufanya ni kuongeza vipindi hivyo kwenye rekodi yako mwenyewe.
Ni sera gani inanufaika zaidi na data ya umma ya cross-embodiment?▾
Pi0.5 na mifumo ya GR00T hubeba mafunzo mengi zaidi ya awali ya cross-embodiment, lakini SmolVLA mara nyingi hufanya vizuri zaidi kwenye mkono wa gharama nafuu: seti yake ya mafunzo ya awali ni seti za data 481 za jamii, vipindi 22.9K na fremu 10.6M, zilizopimwa kwenye mikono halisi ya SO-100 na SO-101. ACT ni kinyume chake: hakuna mfumo wa msingi, 20 ms kwa hatua ya kitendo.
Ni vipindi vingapi vya kwangu ninavyohitaji?▾
30 kwa SmolVLA, 50 kwa GR00T N1.7, GR00T N1.5, Pi0.5 na ACT. Kwa mipangilio chaguomsingi ya LeRobot ya sekunde 60 kwa kila kipindi na sekunde 60 za kuweka upya, vipindi 50 ni dakika 100 za saa halisi. Data iliyokopwa ya cross-embodiment haipunguzi namba hizo.
Sources
- DROID: Hifadhidata Kubwa ya Kudhibiti Roboti Katika Mazingira Halisi
- Nyaraka za DROID: saizi za kupakua na mpangilio wa vipindi vya RLDS
- BridgeData V2: Hifadhidata ya Kujifunza Roboti kwa Kiwango Kikubwa
- Ukurasa wa mradi wa BridgeData V2: muundo na ufunikaji wa kamera
- Open X-Embodiment: Hifadhidata za Kujifunza Roboti na Miundo ya RT-X
- Ukurasa wa mradi wa Open X-Embodiment
- google-deepmind/open_x_embodiment: orodha ya hifadhidata na vituo vya ukaguzi vya RT-1-X
- any4lerobot: kigeuzi cha openx2lerobot na hali yake iliyounganishwa ya 8-D, hatua ya 7-D
- IPEC-COMMUNITY/droid_lerobot: meta/info.json na saizi ya repo
- IPEC-COMMUNITY/bridge_orig_lerobot: meta/info.json
- IPEC-COMMUNITY/fractal20220817_data_lerobot: kipande cha google_robot kwa 3 fps
- huggingface/lerobot: mfuasi wa SO, kichakataji cha kinematiki, usanidi wa kujumlisha na kurekodi
- openpi: pembejeo za sera ya DROID na kituo cha ukaguzi cha pi05_droid
- pi0: Mfumo wa Mtiririko wa Maono-Lugha-Vitendo kwa Udhibiti wa Roboti wa Jumla
- SmolVLA: Mfumo wa Maono-Lugha-Vitendo kwa Roboti Nafuu na Zenye Ufanisi
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