
DROID, BridgeData V2 සහ Open X-Embodiment 6 සහ 7-DoF අත් මත 7-D අග-ක්රියාකාරී ක්රියා බවට පරිවර්තනය වේ. SO-100 එකක් සන්ධි ස්ථාන 6ක් ගනී. මාරු වන්නේ කුමක්ද, නොවන දේ, ඒ වෙනුවට කළ යුත්තේ කුමක්ද.
කෙටි සාරාංශය
- •LeRobot හි සියලුම සංස්කරණ පොදු සම්මුතියක් බෙදා ගනී: 7-D අන්ත-ඵලදායි ක්රියාවක් [x, y, z, roll, pitch, yaw, gripper] සහ පෑඩ් ස්ලොට් එකක් සහිත 8-D තත්වයක්. SO-100 එකක් නිරපේක්ෂ සන්ධි ස්ථාන හයක් ගනී.
- •එම 7-D දෛශිකය පරිවර්තකයේ කෘතියකි: DROID හිම RLDS ක්රියා ක්ෂේත්රය සන්ධි ප්රවේග 6ක් සහ ග්රිපර් ස්ථානයක් වන අතර, කාටීසියානු දර්ශනය action_dict හි ඇත.
- •ඔරලෝසු හතරක්: DROID 15 fps, BridgeData V2 5 fps, google_robot slice 3 fps, SO-100 පටිගත කිරීම 30 fps.
- •ඔබට ඒවා ඔබේම දත්ත සමඟ ඒකාබද්ධ කළ නොහැක. validate_all_metadata, fps, robot_type හෝ වෙනස් වන විශේෂාංග වලින් පළමුවැන්න මත දෝෂයක් ඇති කරයි, සහ තුනම වෙනස් වේ.
- •මාරු වන්නේ පුහුණු කළ බර මිස කථාංග නොවේ. විවෘත මූලාශ්ර දත්ත pi0 හි පූර්ව පුහුණු මිශ්රණයේ 9.1% කි.
- •ඒවායේ ලාභම සැබෑ භාවිතය වන්නේ පරීක්ෂණ සවිකිරීමකි: ඔබ සති අන්තයක් සඳහා පටිගත කිරීමට පෙර ඔබේ පයිප්ලය ඔප්පු කරන, හොඳින් දන්නා 2 GB, කථාංග 100 ක DROID සාම්පලයක්.
Google Cloud බකට් එකක මිලියන ගණනක ගමන් පථ සහිත පොදු දත්ත කට්ටලයක් සහ SO-100 මේසය මත ඇති අතර එහි කොටස් සඳහා 110 සිට 150 EUR දක්වා වැය විය. පළමුවැන්නට දෙවැන්නට ඉගැන්විය නොහැක්කේ ඇයි? එය අර්ධ වශයෙන් කළ හැකි නමුත්, මිනිසුන් අපේක්ෂා කරන තැන මාරුවීම් කිසිවක් පාහේ සිදු නොවන අතර, පහසුම ලෙස පෙනෙන කොටස කිසිසේත් ක්රියා නොකරයි.
පහත දැක්වෙන්නේ: ඇතුළත ඇති දේ DROID, BridgeData V2 සහ Open X-Embodiment, එහිදී සෑම එකක්ම අඩු වියදම් 5-DoF අතක් සමඟ ගැටෙන ආකාරය සහ ඒ වෙනුවට කළ යුතු දේ. පහත සෑම අංකයක්ම එයට අදාළ පත්රිකාවෙන්, දත්ත කට්ටල කාඩ්පතෙන් හෝ මූලාශ්ර ගොනුවෙන් ලබා ගන්නා ලදී.
දත්ත කට්ටල තුනේ ඇත්ත වශයෙන්ම අඩංගු දේ
| DROID | BridgeData V2 | Open X-Embodiment | |
|---|---|---|---|
| රොබෝ | Franka Panda, 7 DoF, Robotiq 2F-85 | WidowX 250, 6 DoF, ~4,000 USD rig | 22 embodiments, 60 datasets, 34 labs |
| පරිමාණය | 76k trajectories, 350 hours | 60,096 trajectories | 1M+ trajectories, 527 skills |
| විවිධත්වය | 564 scenes, 84 tasks, 50 collectors | 24 environments, 13 skills | 160,266 tasks, 21 institutions |
| සංයුතිය | සියල්ල දුරස්ථව ක්රියාත්මක කරන ලදී | 50,365 දුරස්ථව ක්රියාත්මක කරන ලදී, 9,731 ස්ක්රිප්ට් කරන ලදී | මූලාශ්ර රසායනාගාරය අනුව |
| පාලන වේගය | 15 Hz | 5 Hz | වෙනස් වේ, 3 fps ඉහළට |
| කැමරා | 2 x ZED 2 බාහිර, 1 x ZED Mini මැණික් කටුව | 4 දක්වා, බොහෝ කථාංගවල ස්ථාවර එක පමණි | රසායනාගාරය භාවිතා කළ ඕනෑම දෙයක් |
| අමු බාගැනීම | 1.7 TB RLDS, 8.7 TB raw stereo | JPEG ලේඛනාගාර | දත්ත කට්ටලයට අනුව TFDS බකට් |
අදටත් 1.7 TB RLDS TFRecords බාගත කරන්නේ ස්වල්ප දෙනෙකි. ප්රජා සංවිධානය වන IPEC-COMMUNITY, Open X-Embodiment හි බොහෝ දේ AV1 වීඩියෝ සමඟ LeRobot dataset ආකෘතියෙන් නැවත ප්රකාශයට පත් කර ඇත, එහිදී DROID 392 GB වේ. ඔබ වැඩ කරන්නේ එම සංස්කරණය සමඟ වන අතර, එහි meta/info.json මුලින්ම කියවිය යුතු දෙයයි.
DROID
තුනෙන් වඩාත්ම ප්රමිතිගත එක. සෑම තැනකම එකම රිග් එකක්: Robotiq 2F-85 ග්රිපරයක් සහිත Franka Panda රොබෝවරයෙක්, වෙනස් කළ හැකි ZED 2 ස්ටීරියෝ කැමරා දෙකක් සහ මැණික් කටුවෙහි ZED Mini එකක්, Meta Quest 2 පාලක භාවිතයෙන් දුරස්ථව ක්රියාත්මක කරන ලදී, Polymetis හරහා 15 Hz වේගයකින් සන්ධි සහ අවසාන-ක්රියාකාරකය අවකාශය. භාෂා ලේබල පසුව tasq.ai හරහා පැමිණියේය, එක් කථාංගයකට.
- 76k ගමන් මාර්ග, පැය 350, දර්ශන 564, කාර්යයන් 84, මහාද්වීප තුනක එකතු කරන්නන් 50ක්.
- ප්රධාන ප්රතිඵලය වන්නේ ස්වාධීන පුහුණුවක් නොව සම-පුහුණුවයි: 50/50 අනුපාතයට අභ්යන්තර-වසම් නිරූපණ සමඟ මිශ්ර කළ කණ්ඩායම්, බෙදාහැරීමේදී 22% ක නිරපේක්ෂ සාර්ථකත්වයකින් සහ එයින් පිටත 17% කින් ඊළඟ හොඳම ක්රමය පරාජය කළේය.
- IPEC-COMMUNITY/droid_lerobot: කථාංග 92,233, රාමු 27,044,326, franka, 15 fps, codebase_version v2.0, 180x320 හි AV1 ප්රවාහ තුනක්, 392 GB.
- 2 GB, කථාංග 100 කින් යුත් දෝෂ නිවැරදි කිරීමේ සාම්පලයක් gs://gresearch/robotics/droid_100 හි ඇත. එතැනින් ආරම්භ කරන්න.
BridgeData V2
විනෝදාංශ සැකසුමකට ආසන්නතම: WidowX 250 6-DoF අතක්, පරිසර 24ක් සහ කුසලතා 13ක් හරහා 60,096 ගමන් මාර්ග 5 Hz වේගයකින්. සංයුතිය සටහන් කරන්න: විශේෂඥ දුරස්ථ ක්රියාකාරී නිරූපණ 50,365ක් සහ අහඹු ලෙස සකස් කරන ලද තෝරාගැනීමේ සහ තැබීමේ ප්රතිපත්තියකින් 9,731ක්, එබැවින් ආසන්න වශයෙන් 16%ක් මානව නිරූපණ නොවේ, එය වැදගත් වන්නේ අනුකරණ ඉගෙනීම ගුණාත්මකභාවය සඳහාය. සාමාන්ය බාගත කිරීම, IPEC-COMMUNITY/bridge_orig_lerobot, කථාංග 53,192ක් සහ රාමු 1,893,026ක් 5 fps වේගයකින්, robot_type widowx: පත්රිකාවේ 60,096ට වඩා අඩු බව වාර්තා කරයි, එබැවින් meta/info.json වෙතින් ගණන කියවන්න, ඒ දෙකෙන් එකක්වත් උපුටා නොදක්වා.
Open X-Embodiment
එකම අර්ථයෙන් දත්ත කට්ටලයක් නොවේ: විද්යාගාර 34කින් ලබාගත් පවතින රොබෝ දත්ත කට්ටල 60ක් එක් RLDS එකතුවකට ඒකාබද්ධ කර ඇත, එය එම්බොඩිමන්ට් 22ක් සහ මිලියනයකට අධික ගමන් පථ ආවරණය කරයි. BridgeData V2, bridge_orig ලෙස එහි අන්තර්ගත වේ; google_robot slice, fractal20220817_data, 3 fps වේගයකින් කථාංග 87,212ක් බවට පරිවර්තනය වේ.
මෙම ඒකාබද්ධ කිරීමේදී පත්රිකාවේ පැහැදිලිව සඳහන් වන අනතුරු ඇඟවීමක් ඇත. RT-X අත්හදා බැලීම් සඳහා, කතුවරුන් එක් එක් මූලාශ්රය 7-DoF end-effector ක්රියාවක් බවට පරිවර්තනය කරයි, නමුත් දත්ත කට්ටල හරහා ඛණ්ඩාංක රාමු පෙළගස්වන්නේ නැත, සහ එක් එක් රොබෝවරයාගේ මුල් පාලන ක්රමයට අනුව, ක්රියා අගයන් නිරපේක්ෂ හෝ සාපේක්ෂ පිහිටීම් හෝ ප්රවේග වීමට ඉඩ සලසයි. ඔවුන්ගේ නිගමනය: එකම ක්රියා දෛශිකය විවිධ රොබෝවරුන් සඳහා ඉතා වෙනස් චලනයන් ඇති කළ හැකිය.

කොටස් හතරකින් යුත් නොගැලපීම
ශරීරගත නොගැලපීම සාමාන්යයෙන් එක් අපැහැදිලි ගැටලුවක් ලෙස සලකනු ලැබේ. ඒවා හතරකි, ඒවා විවිධ ආකාරයෙන් අසාර්ථක වන අතර, දෙකක් ස්ක්රිප්ටින් මගින් නිවැරදි කළ නොහැක.
1. නිදහස් අංශක
SO-100 එකකට අත් සන්ධි පහක් සහ ග්රිපරයක් ඇත. මෝටර ලෙස ගණන් බැලීමේදී එය 6-DoF අතක් වන අතර, SmolVLA පත්රිකාව එය එසේ හඳුන්වයි; ස්ථානගත කිරීමේ යාන්ත්රණයක් ලෙස ගණන් බැලීමේදී එය 5-DoF වන අතර, LeRobot එහි ප්රතිලෝම චාලක විද්යා docstring හි එය එසේ හඳුන්වයි, එහිදී මැණික් කටුව අර්ධ වශයෙන් පමණක් දිශානතිය නිරීක්ෂණය කරන 5-DOF SO-101 මත මෘදු-දිශානති IK විස්තර කරයි. ෆ්රැන්කා එකකට ස්ථානගත කිරීමේ සන්ධි හතක් ඇත. එම පරතරය පවතින ඉරියව් මොනවාදැයි තීරණය කරයි: 5-DoF අතකට සාමාන්යයෙන් එකවර අත්තනෝමතික ස්ථානයකට සහ දිශානතියකට ළඟා විය නොහැක, එබැවින් විසඳුම්කරුට ළඟා විය හැකි ආසන්නතම දේ ආපසු ලබා දෙයි, එය නිරූපණය කළ චලනයට වඩා වෙනස් චලනයකි. පසුබිම: නිදහස් අංශක.
# 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එබැවින් සූදානම් කළ DROID චෙක්පොයින්ට් එකක් කෙටි මාර්ගයක් නොවේ. Physical Intelligence විසින් pi05_droid gs://openpi-assets/checkpoints/pi05_droid හිදී නිකුත් කරන අතර, එහි විස්තීර්ණත්වය අගය කරන එම README මඟින් මෙම විශේෂඥ චෙක්පොයින්ට් ඔබේ සැකසුමට සාමාන්යකරණය නොවිය හැකි බවට අනතුරු අඟවයි. එහි තත්ත්වය ෆ්රැන්කා සන්ධි අංක අටක් වන අතර එහි රූප යතුරු exterior_image_1_left සහ wrist_image_left වේ. කිසිදු ධජයක් එය හය-මෝටර් SO-100 විධානයක් බවට පත් නොකරයි.
2. ක්රියාකාරී දෛශිකය ඇත්ත වශයෙන්ම පවසන්නේ කුමක්ද
මානවලට වඩා ගැඹුරින්. LeRobot පරිවර්තන වලදී තුනම පවසන්නේ ග්රිපරය කාටීසියානු අවකාශයේ කොතැනට යා යුතුද යන්නයි. SO-100 එකක් පවසන්නේ සර්වෝ හයක් කොතැනට යා යුතුද යන්නයි. පරිවර්තනය කිරීමට චාලක ආකෘතියක් සහ විසඳුමක් අවශ්ය වන අතර, නැවත හැඩගැන්වීමක් නොවේ.
| ගුණාංගය | LeRobot ආකෘතියේ OXE, DROID සහ Bridge | LeRobot හි SO-100 |
|---|---|---|
| ක්රියාකාරී දෛශිකය | 7-D: x, y, z, roll, pitch, yaw, gripper | 6-D: එක් මෝටරයකට එක් ඉලක්ක ස්ථානයක් |
| තත්ත්ව දෛශිකය | 8-D, පෑඩ් ස්ලොට් එකක් සමඟ (google_robot ක්වාටර්නියන් එකක් භාවිතා කරයි) | 6-D, එක් මෝටරයකට එකක් |
| රාමුව | කාටීසියානු, දත්ත කට්ටල හරහා නොගැලපෙන | සන්ධි අවකාශය, එක් අතකට ක්රමාංකනය |
| නිරපේක්ෂ හෝ සාපේක්ෂ | ඕනෑම එකක්, මූලාශ්ර රසායනාගාරය විසින් තීරණය කරනු ලැබේ | නිරපේක්ෂ ඉලක්ක ස්ථාන |
| ඒකක | දත්ත කට්ටලයකට සාමාන්යකරණය කර, පසුව විවික්ත කර ඇත | පෙරනිමියෙන් අංශක (use_degrees=True), එසේ නොමැතිනම් -100 සිට 100 දක්වා |
| නිහඬ අසාර්ථකත්වය | නිරපේක්ෂයක් ලෙස කියවන ඩෙල්ටාවක් | ක්රමාංකනය නොකළ අතක් |
openx2lerobot README මඟින් එය පරිවර්තනය කරන සෑම දත්ත කට්ටලයක් සඳහාම ඒකාබද්ධ 8-මාන තත්වයක් සහ 7-මාන ක්රියාවක් ලේඛනගත කරයි, pad slot එක පැමිණෙන්නේ එතැනිනි. DROID ගේම RLDS schema එක වෙනස් වේ: එහි ඉහළම මට්ටමේ action යනු සන්ධි ප්රවේග 6ක් සහ ග්රිපර් පිහිටීම 1ක් සහිත 7-දෛශිකයකි, action_dict යටතේ cartesian_position, cartesian_velocity, joint_position සහ joint_velocity ඇත. openpi සන්ධි-අවකාශ දර්ශනය කියවන අතර, LeRobot build එක ඔබට කාටීසියානු දර්ශනය ලබා දෙයි. මේ දෙකම නිරපේක්ෂ සර්වෝ කෝණ හයක් නොවේ.
LeRobot අතුරුදහන් වූ කොටස සපයයි: SO follower සතුව InverseKinematicsEEToJoints සහ ForwardKinematicsJointsToEE පියවර සහිත චාලක විද්යා ප්රොසෙසරයක් ඇත. එහි යතුරු ee.x, ee.y, ee.z සහ භ්රමණ දෛශිකයක් වන ee.wx, ee.wy, ee.wz සහ ee.gripper_pos වේ, එබැවින් දිශානති කේතීකරණය පවා ගොනු වල ඇති roll-pitch-yaw වලින් වෙනස් වේ. IK පියවර orientation_weight එකක් ගනී, පෙරනිමිය 0.01 වේ, එහි docstring පවසන්නේ under-actuated arms මත පිහිටීම-පමණක් IK සඳහා 0.0 ලෙස සැකසීමටය. ඔබට පාලම ගොඩනැගිය හැක, නමුත් සෑම ණයට ගත් ක්රියාවකම දිශානති අර්ධය ආසන්න වශයෙන් පවතී.
3. පාලන අනුපාතය
DROID 15 Hz වේ, BridgeData V2 5 Hz වේ, google_robot slice එක 3 fps වේ; pi0 හි කතුවරුන් ඔවුන්ගේ මිශ්රණයේ විවෘත මූලාශ්ර කොටස 2 සහ 10 Hz අතර අඩු-සංඛ්යාත පාලනයක් ලෙස විස්තර කරයි. LeRobot හි DatasetRecordConfig පෙරනිමියෙන් fps 30, episode_time_s 60, reset_time_s 60, num_episodes 50 වේ. 5 Hz දත්ත මත පුහුණු කරන ලද එක් ක්රියාවක් 200 ms ආවරණය කරන බව ඉගෙන ගත්තේය. එය 30 Hz දී නැවත ධාවනය කළහොත් අත බඩගා යයි; අහිංසක ලෙස නැවත නියැදි කළහොත් ග්රිපරය වැසෙන රාමුව බොඳ වේ. එය සමඟද නරක ලෙස අන්තර්ක්රියා කරයි: 100-පියවර ඛණ්ඩයක් 5 Hz දී තත්පර 20 ක් වන අතර, 30 Hz දී 3.3 කි.
4. කැමරා
BridgeData V2 සෑම ගමන් පථ 50කට වරක් කැමරා ඉරියව් දෙකක් අහඹු ලෙස තෝරා ගත් අතර, එහි ව්යාපෘති පිටුවේ සඳහන් වන්නේ දත්තවලින් වැඩි ප්රමාණයක් ස්ථාවර දසුන පමණක් රැගෙන යන බවයි. DROID විසින් සකස් කළ හැකි ZED 2 සවිකිරීම් සහ මැණික් කටුවෙහි ZED Mini එකක් භාවිතා කරන ලදී. ඔබට ඇසින් ස්ථානගත කරන ලද USB වෙබ් කැමරා දෙකක් තිබේ. කැමරා ඉරියව්ව කරදරකාරී විචල්යයක් නොවේ ; එය දෘශ්ය කේතකය අවධානය යොමු කළ බොහෝ දේ වන අතර, ගොනු ආකෘතියේ කිසිවක් ඉරියව් වෙනස් බව ඔබට නොකියයි.
ක්රියාත්මක වීමට තරම් කොටස් හොඳින් ගැලපේ. දත්ත කට්ටලය පූරණය වේ, පුහුණුව ආරම්භ වේ, අලාභය අඩු වේ, චෙක්පොයින්ට් දිස්වේ, කිසිදු දෝෂයක් නොමැත. එවිට ප්රතිපත්තිය අත මත හඳුනාගත හැකි කිසිවක් නොකරන අතර ඔබ ඔබේ පුහුණු ස්ක්රිප්ට් එකේ දෝෂයක් සොයමින් දවසක් ගත කරයි. දෝෂයක් නොමැත: ආකෘතිය ඔබේ කාමරයේ නොමැති රොබෝවරයෙකු සඳහා කාටීසියානු ක්රියාකාරී ව්යාප්තියක් ඉගෙන ගෙන ඇත. ඔබේ අධි-පරාමිතීන්ගෙන් නොව, අලාභය අඩු වේ, ප්රතිපත්තිය කිසිවක් නොකරයි යන ස්ථානයෙන් ආරම්භ කරන්න.
ඔබ කෙසේ හෝ දත්ත ඒකාබද්ධ කිරීමට උත්සාහ කරන විට කුමක් සිදුවේද
පැහැදිලි සැලැස්ම වන්නේ DROID කථාංග දහස් ගණනක් සහ ඔබේ 50 එකට එකතු කිරීමයි. LeRobot එය ප්රතික්ෂේප කරන අතර, එම ප්රතික්ෂේප කිරීම වෙනස් වන කරුණු තුන නම් කරයි.
- 1සම්පූර්ණ 1.7 TB වෙනුවට කථාංග 100ක සාම්පලය ලබා ගන්න
ව්යුහය දැකීමට 2 GB ප්රමාණවත් වේ.
bashpip install gsutil tensorflow tensorflow-datasets gsutil -m cp -r gs://gresearch/robotics/droid_100 ~/tensorflow_datasets/ - 2RLDS, LeRobot ආකෘතියට පරිවර්තනය කරන්න
openx2lerobot මඟින් OXE සම්මත පරිවර්තන ආවරණය කරන අතර රොබෝ වර්ගය සහ පාලන සංඛ්යාතය සටහන් කරයි. README ගොනුවේ මෙය 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 - 3වෙනත් ඕනෑම දෙයකට පෙර meta/info.json කියවන්න
ඔබේ දවසේ ඉතිරි වැඩ කටයුතු සාර්ථක වේද යන්න මෙම ගොනුව තීරණය කරයි.
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'])" - 4ඒකාබද්ධ කිරීම උත්සාහ කර දෝෂය කියවන්න
merge මඟින් සෑම දත්ත කට්ටලයක්ම පූරණය කරන අතර, පසුව validate_all_metadata මඟින් fps, robot_type සහ features ලැයිස්තුවේ ඇති පළමු එකට එරෙහිව පරීක්ෂා කරයි, පළමු නොගැලපීම මත දෝෂයක් ඇති කරයි.
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.
යොමු අගයන් පැමිණෙන්නේ ඔබ මුලින්ම ලැයිස්තුගත කළ දත්ත කට්ටලයෙන් වන අතර, පණිවිඩය DROID හි 15 වෙනුවට ඔබේ 30 fps ගැන පැමිණිලි කරන්නේ එබැවිනි. fps නිවැරදි කළ විට ඔබට robot_type පරීක්ෂාවට මුහුණ දීමට සිදුවේ; එය නිවැරදි කළ විට ඔබට action සඳහා 6ට එරෙහිව 7ක් වන feature පරීක්ෂාවට මුහුණ දීමට සිදුවේ. කිසිදු අනුපිළිවෙලක් හරහා නොයන අතර, sanity_check_dataset_robot_compatibility හරහා වාර්තා කරන අවස්ථාවේදීද එම ආරක්ෂක පරීක්ෂාව ක්රියාත්මක වේ.
වර්තමාන LeRobot main හි so100_follower සහ so101_follower යන දෙකම එක් පොදු SOFollowerRobotConfig එකකට ලියාපදිංචි කර ඇත, එබැවින් සැබෑ පටිගත කිරීමකින් ලැබෙන string එක ඔබ අපේක්ෂා කරන එකම විය යුතු නැත. එය ඔබේම meta/info.json වෙතින් කියවන්න, සහ ඔබට අක්රිය කිරීමට සිදු වූ පරීක්ෂාවක් යමක් ඔබට පවසන පරීක්ෂාවක් ලෙස සලකන්න.
එසේනම් ඇත්ත වශයෙන්ම මාරු වන්නේ කුමක්ද?
බර, කථාංග නොවේ. සෑම නවීන සාමාන්ය ප්රතිපත්තියක්ම පූර්ව පුහුණුවේදී එයින් කොටසක් උකහා ගත් අතර, ඔබ සියුම්-සුසර කිරීම නිකුත් කරන ලද චෙක්පොයින්ට් වෙතින්, එය නිසි ලෙස සිදු කිරීමට අවශ්ය පරිගණක බලය ඇති පුද්ගලයන් විසින් දැනටමත් සමථයකට පත් කර ඇති දේ ඔබට උරුම වේ. pi0 ගේ පත්රිකාව අනුපාතය පිළිබඳව අවංක ය: එහි පූර්ව පුහුණු මිශ්රණයේ 9.1% ක්, කාල පියවර වලින් ගණනය කරනු ලබන්නේ, OXE, Bridge v2 සහ DROID ඇතුළු විවෘත මූලාශ්ර දත්ත ය. එම අගය pi0 ගේ ය; එක් එක් විකුණුම්කරුගේ මිශ්රණය වෙනස් වේ.
- දෘශ්ය සහ භාෂා පූර්ව දැනුම: එන්කෝඩරය මුළුතැන්ගෙයි සහ මග් දහස් ගණනක් දැක ඇති අතර "රතු කොටස" යන්නෙන් අදහස් කරන්නේ කුමක්දැයි දනී.
- හැසිරවීමේ ව්යුහය පිළිබඳ පූර්ව දැනුමක්: ළඟා වීම, වැසීම, එසවීම, ප්රවාහනය, මුදා හැරීම, සංඛ්යා එසේ නොවුණත් ශරීර-ස්වාධීන.
- පරීක්ෂා කිරීම සඳහා හොඳින් දන්නා දත්ත කට්ටලයක්. ඔබේ කාර්යයට DROID කථාංග 100 ක් අධි-ගැලපීමට නොහැකි නම්, ගැටලුව ඔබේ සැකසුමයි.
- ආශ්රිත ලක්ෂ්ය: කුඩා පරිමාණ දත්ත කට්ටල වසම් වලදී RT-1-X මුල් ක්රමයට හෝ RT-1 ට වඩා 50% කින් වැඩි සාමාන්ය සාර්ථකත්ව අනුපාතයක් ලබා ගත් අතර, RT-2-X නැගී එන කුසලතා මත RT-2 3 ගුණයකින් පමණ පරාජය කළේය.
- භාවිතා කළ හැකි ක්රියා අධීක්ෂණයක් නොමැත. 7-D කාටීසියානු ඉලක්කයක් 6-D සන්ධි විධානයක් නොවේ.
- කැමරා-පිහිටීම මාරු කිරීමක් නොමැත, දත්තවල කිසිවක් පිහිටීම් වෙනස් බව ඔබට නොකියයි.
- කාලය මාරු කිරීමක් නොමැත: 30 fps රෙකෝඩරයකට එරෙහිව 3, 5 සහ 15 fps ප්රභවයන්.
- ග්රිපර් මාරු කිරීමක් නොමැත. Robotiq 2F-85 සහ STS3215 මත මුද්රිත හනුවක් බලය, පහර සහ ගතිකත්වය අනුව වෙනස් වේ.
- පරිමාණය පමණක් එහි කතුවරුන්ට පවා ප්රමාණවත් නොවීය: විශාල දත්ත කට්ටල වසම් වලදී RT-1-X එම දත්ත කට්ටලය මත පමණක් පුහුණු කරන ලද RT-1 පරාජය කළේ නැත.
- ඔබට අවශ්ය ඔබේම කථාංග ගණන අඩු කිරීමක් නොමැත.
| ආකෘතියේ ස්ථරය | මාරු වේද? | ඇයි |
|---|---|---|
| දෘශ්ය එන්කෝඩරය | ඔව්, ප්රබලව | වස්තූන් සහ දර්ශන ශරීර-ස්වාධීන වේ |
| භාෂා පදනම් කිරීම | ඔව් | උපදෙස් යනු පෙළ මිස ජ්යාමිතිය නොවේ |
| හරස්-මාදිලි විලයනය | බොහෝ දුරට | විමසුමේ නම් කර ඇති වස්තුව කෙරෙහි අවධානය යොමු කරයි |
| ප්රොප්රියෝසෙප්ෂන් එන්කෝඩරය | නැත | ආදාන මානය සහ සන්ධි අර්ථ ශාස්ත්රය වෙනස් වේ |
| ක්රියා ශීර්ෂය | නැත | ඔබ නොමැති 7-D කාටීසියානු අවකාශයක පුහුණු කර ඇත |
| සාමාන්යකරණ සංඛ්යාලේඛන | නැත, සහ භයානකයි | විදේශීය සංඛ්යාලේඛන සෑම විධානයක්ම වෙනස් කරයි |
මේ නිසා SmolVLA අඩු වියදම් අතක් මත වෙනස් ලෙස හැසිරෙන්නේ. එහි පත්රිකාව Hugging Face වෙතින් ප්රජා දත්ත කට්ටල 481ක් තෝරා ගනී, ඒවා ශරීර වර්ගය, කථාංග ගණන, දත්ත ගුණාත්මකභාවය සහ රාමු ආවරණය අනුව පෙරහන් කර ඇත: සැබෑ SO-100 සහ SO-101 අත් මත ඇගයීමට ලක් කරන ලද කථාංග 22.9K, රාමු 10.6M. කුඩා සහ ගැලපෙන දේ විශාල සහ නොගැලපෙන දේ පරදවයි. සසඳන්න ACT SmolVLA ට එරෙහිව.
ගත යුතු මාර්ග තුනක්
මාර්ගය A: දත්ත දැනටමත් අවශෝෂණය කර ඇති චෙක්පොයින්ට් එකකින් fine-tune කරන්න
බොහෝ දෙනා මෙය තෝරා ගත යුතුය. ඔබ කිසිවිටෙක DROID හෝ Open X-Embodiment ස්පර්ශ නොකරයි: cross-embodiment දත්ත දැනටමත් අවශෝෂණය කර ඇති ප්රතිපත්තියක් තෝරා ගන්න, ඔබේම කථාංග පටිගත කරන්න, fine-tune කරන්න.
| ප්රතිපත්තිය | පරාමිති | අවම කථාංග | දත්ත කට්ටල ආකෘතිය | GPU ස්ථරය | අනුමානය | මූලික පිරික්සුම් ලක්ෂ්යය |
|---|---|---|---|---|---|---|
| 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 යනු අවංක දාර අවස්ථාවයි: මූලික ආකෘතියක් නොමැති බැවින්, කිසිදු පොදු දත්තයක් එයට ළඟා නොවේ. මෙය ස්වයංක්රීයව අවාසියක් නොවේ, මන්ද ක්රියාකාරී පියවරකට 20 ms බැගින් එය වේගවත් ලූපයක් වසා දැමිය හැකි ආකෘති පහෙන් එකම එක වන බැවිනි, ACT පිටුව එහි සඳහන් වේ. කාර්යය අනුව තෝරා ගන්න පහම සංසන්දනය කර ඇත, GR00T N1.7 Pi0.5 ට එරෙහිව, සහ ආකෘති 85 ක 332 ක මිණුම් සලකුණු ප්රතිඵල අරීනා.
මාර්ගය B: DROID පරීක්ෂණ සවිකිරීමක් ලෙස භාවිතා කරන්න
කථාංග 100 ක නියැදිය මෙම මාසයේ ඔබ බාගත කරන හොඳම 2 GB වන අතර එය පුහුණුව සඳහා නොවේ. එය නිවැරදි බව ඔබ දන්නා දත්ත කට්ටලයකි. ඔබේ පරිවර්තකය, ලෝඩරය සහ කෙටි GPU කාර්යයක් ඒ මත ධාවනය කරන්න; අසාර්ථක වන ඕනෑම දෙයක් ලාභදායීව තිබියදී සොයාගත් යටිතල පහසුකම් දෝෂයකි. NVIDIA විශාල පරිමාණයෙන් ද එයම කරයි: GR00T N1.7 කාඩ්පත SimplerEnv හි Bridge සහ Fractal, DROID සහ LIBERO සඳහා පුහුණුවෙන් පසු ප්රභේද හතරක් ලැයිස්තුගත කරයි.
මාර්ගය C: ඔබේම දත්ත හිතාමතාම පටිගත කරන්න
තිහේ සිට පනහ දක්වා 76,000ක් අසලදී කුඩා සංඛ්යාවක් ලෙස පෙනුනත්, ඔබේ අත, කැමරා සහ මේසය සමඟ ඇති එකම දත්ත ඔබේ බව මතක තබා ගන්න. LeRobot හි පෙරනිමි සැකසුම් අනුව, කථාංග 50ක් යනු සැබෑ කාලයෙන් මිනිත්තු 100කි. බලන්න , සහ .

පොදු දත්ත වලින් ක්රියාකාරී ප්රතිපත්තියක් වෙත ළඟා වීමට ක්රම දෙකක්
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.

එක් එක් මාර්ගය සඳහා වැයවන පිරිවැය
| මාර්ගය | ගබඩා ඉඩ | මානව කාලය | GPU පිරිවැය | එය ඔබේ අත චලනය කිරීමේ අවස්ථාව |
|---|---|---|---|---|
| තනිවම පරිවර්තනය කරන ලද DROID | 392 GB | පරිවර්තන දින | 4 to 12 USD | ඉතා අඩුයි, වැරදි ක්රියා අවකාශය |
| ඔබේ කථාංග සමඟ ඒකාබද්ධ කළ DROID | both | blocked by validate_all_metadata | n/a | කිසිවක් නැත, එය ක්රියාත්මක නොවේ |
| SmolVLA, 30 සිට 50 දක්වා ඔබේම කථාංග | a few GB | විනාඩි 100ක පටිගත කිරීම | 1 to 3 USD | ඉහළ |
| GR00T N1.7, ඔබේම කථාංග 50 | a few GB | විනාඩි 100ක පටිගත කිරීම | 4 to 12 USD | ඉහළ |
| මුල සිට ACT, ඔබේම කථාංග 50 | a few GB | විනාඩි 100ක පටිගත කිරීම | 1 to 3 USD | ඉහළ, 20 ms අනුමානය |
| පරීක්ෂණ සවිකිරීමක් ලෙස DROID සාම්පලය | 2 GB | දවසක් දහවල් | one short run | ඉහළ, වලංගුකරණයක් ලෙස |
The asymmetry is the point: the path that borrows the most data is the most expensive and least likely to move your arm. Under two hours of your own teleoperation beats a terabyte of somebody else's Franka. No arm yet? /live streams a physical SO-100 with no signup. Then train your first policy, and SmolVLA on SO-100 for the specific guide.
2 GB DROID සාම්පලය බාගත කර ඔබේ පයිප්ලයින් එක ඔප්පු කිරීමට එය භාවිතා කරන්න. අනෙක් 1.7 TB නොසලකා හරින්න. ස්ථාවර කැමරා සමඟ එක් කාර්යයක කථාංග 50ක් පටිගත කරන්න. SmolVLA මුලින්ම සියුම්ව සකසන්න, මන්ද 24 GB කාඩ්පතක අවම කථාංග 30ක් සමඟ එය පුනරාවර්තනය කිරීමට ලාභම වන බැවිනි, ඉන්පසු එම දත්ත මත GR00T N1.7 උත්සාහ කරන්න. ඔබේ කාර්යය මත සසඳන්න, බෙන්ච්මාර්ක් එකක් මත නොව.
ඔබේ අතට දැනටමත් ගැලපෙන දත්ත කට්ටල පටිගත කරන්න
ඩෙස්ක්ටොප් සේවාදායකය ටෙලිඔප් සැසියකින් කෙලින්ම LeRobot-ආකෘති දත්ත කට්ටල ලියයි: නිවැරදි අත, නිවැරදි රාමු අනුපාතය, නිවැරදි ක්රියා අවකාශය. RLDS පරිවර්තනයක් නැත, නැවත සිතියම්ගත කිරීමක් නැත.
ඩෙස්ක්ටොප් සේවාදායකය ලබා ගන්නමට DROID මත ප්රතිපත්තියක් පුහුණු කර එය මගේ SO-100 මත ධාවනය කළ හැකිද?▾
සෘජුවම නොවේ. LeRobot ගොඩනැගීමේදී DROID ක්රියා Franka Panda මත 15 fps වේගයකින් 7-D end-effector විධාන වේ; අමු RLDS හි ඒවා 6 සන්ධි ප්රවේග සහ ග්රිපර් පිහිටීමකි. SO-100 එකක් නිරපේක්ෂ සන්ධි ස්ථාන 6ක් ගනී. ඔබට ප්රතිලෝම-චාලක ස්ථරයක් අවශ්ය වනු ඇත, එවිට පවා 5-DoF මැණික් කටුවකට අත්තනෝමතික 6-DoF ඉරියව් ප්රතිනිෂ්පාදනය කළ නොහැක.
මට DROID හෝ Bridge කථාංග මගේම SO-100 කථාංග සමඟ මිශ්ර කළ හැකිද?▾
නැත. validate_all_metadata සඳහා සමාන fps, robot_type සහ feature schema අවශ්ය වන අතර පළමු නොගැලපීම මත ValueError එකක් මතු කරයි. තුනම වෙනස් වේ: 30 ට එරෙහිව 15 හෝ 5 fps, ඔබේ අතට එරෙහිව franka හෝ widowx, 6 ට එරෙහිව 7 ක්රියා හැඩතල. පරීක්ෂණය සමත් වීමට metadata නැවත ලිවීම අර්ථ ශාස්ත්රය නිවැරදි නොකරයි.
එවිට අඩු වියදම් අතක් සඳහා Open X-Embodiment නිෂ්ඵලද?▾
නැත, නමුත් එහි වටිනාකම ඔබට ලැබෙන්නේ පුහුණු කළ බර (pretrained weights) හරහා මිස කථාංග (episodes) හරහා නොවේ. OXE, Bridge v2 සහ DROID ඇතුළු විවෘත මූලාශ්ර දත්ත කට්ටල pi0 හි පූර්ව පුහුණු මිශ්රණයේ 9.1% කි, සහ NVIDIA විසින් Bridge, Fractal, DROID සහ LIBERO මත පශ්චාත්-පුහුණු කරන ලද GR00T N1.7 ප්රභේද නැව්ගත කරයි. ඔබට කළ නොහැකි දෙය නම් එම කථාංග ඔබේම පටිගත කිරීමට එකතු කිරීමයි.
පොදු හරස්-ශරීර දත්ත වලින් වැඩිපුරම ප්රතිලාභ ලබන්නේ කුමන ප්රතිපත්තියද?▾
Pi0.5 සහ GR00T මාදිලි වැඩිම හරස්-ශරීර පූර්ව පුහුණුවක් දරයි, නමුත් SmolVLA බොහෝ විට අඩු වියදම් අතක් මත හොඳින් ක්රියා කරයි: එහි පූර්ව පුහුණු කට්ටලය ප්රජා දත්ත කට්ටල 481 ක්, කථාංග 22.9K ක් සහ රාමු 10.6M ක් වන අතර, සැබෑ SO-100 සහ SO-101 අත් මත ඇගයීමට ලක් කර ඇත. ACT යනු ප්රතිවිරුද්ධයයි: මූලික ආකෘතියක් නැත, ක්රියා පියවරකට 20 ms.
මට ඇත්තටම මගේම කථාංග කීයක් අවශ්යද?▾
SmolVLA සඳහා 30, GR00T N1.7, GR00T N1.5, Pi0.5 සහ ACT සඳහා 50. LeRobot හි පෙරනිමි අනුව, එක් කථාංගයකට 60 s සහ 60 s යළි පිහිටුවීමක් සමඟ, කථාංග 50 ක් යනු සැබෑ කාලය මිනිත්තු 100 කි. ණයට ගත් හරස්-ශරීර දත්ත එම සංඛ්යා අඩු නොකරයි.
Sources
- DROID: විශාල පරිමාණයේ, සැබෑ ලෝකයේ රොබෝ හැසිරවීමේ දත්ත කට්ටලයක්
- DROID ලේඛන: බාගත කිරීමේ ප්රමාණයන් සහ RLDS කථාංග යෝජනා ක්රමය
- BridgeData V2: විශාල පරිමාණයෙන් රොබෝ ඉගෙනීම සඳහා දත්ත කට්ටලයක්
- BridgeData V2 ව්යාපෘති පිටුව: සංයුතිය සහ කැමරා ආවරණය
- Open X-Embodiment: රොබෝ ඉගෙනුම් දත්ත කට්ටල සහ RT-X මාදිලි
- Open X-Embodiment ව්යාපෘති පිටුව
- google-deepmind/open_x_embodiment: දත්ත කට්ටල ලැයිස්තුව සහ RT-1-X චෙක්පොයින්ට්
- any4lerobot: openx2lerobot පරිවර්තකය සහ එහි ඒකාබද්ධ 8-D තත්ත්වය, 7-D ක්රියාව
- IPEC-COMMUNITY/droid_lerobot: meta/info.json සහ repo ප්රමාණය
- IPEC-COMMUNITY/bridge_orig_lerobot: meta/info.json
- IPEC-COMMUNITY/fractal20220817_data_lerobot: 3 fps හි google_robot කොටස
- huggingface/lerobot: SO follower, kinematics processor, aggregate සහ record configs
- openpi: DROID ප්රතිපත්ති ආදාන සහ pi05_droid චෙක්පොයින්ට්
- pi0: සාමාන්ය රොබෝ පාලනය සඳහා දෘශ්ය-භාෂා-ක්රියා ප්රවාහ ආකෘතියක්
- SmolVLA: දැරිය හැකි සහ කාර්යක්ෂම රොබෝ විද්යාව සඳහා දෘශ්ය-භාෂා-ක්රියා ආකෘතියක්
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