
DROID, BridgeData V2 и Open X-Embodiment се претвораат во 7-D акции на краен ефектор на роботи со 6 и 7 степени на слобода. 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 парчето 3 fps, SO-100 снимањето на 30 fps.
- •Не можете да ги споите со вашите сопствени податоци. validate_all_metadata се појавува при првата разлика во fps, robot_type или features, а сите три се разликуваат.
- •Она што се пренесува се претходно тренирани тежини, а не епизоди. Податоците со отворен код се 9.1 проценти од смесата за претходна обука на pi0.
- •Нивната најевтина вистинска употреба е тест уред: познат добар 2 GB, 100-епизоден DROID примерок што ја докажува вашата цевководна линија пред да снимате за викенд.
Постои јавен сет на податоци од милион траектории на Google Cloud bucket и 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 |
| Состав | all teleoperated | 50,365 teleoperated, 9,731 scripted | per source lab |
| Контролна стапка | 15 Hz | 5 Hz | varies, 3 fps upwards |
| Камери | 2 x ZED 2 exterior, 1 x ZED Mini wrist | up to 4, most episodes only the fixed one | whatever the lab used |
| Сурово преземање | 1.7 TB RLDS, 8.7 TB raw stereo | JPEG archives | per-dataset TFDS buckets |
Малкумина сè уште преземаат 1.7 TB RLDS TFRecords. Заедницата IPEC-COMMUNITY го реобјави поголемиот дел од Open X-Embodiment во форма на LeRobot dataset со AV1 видео, каде DROID зафаќа 392 GB. Тоа е верзијата со која ќе работите, а нејзиниот meta/info.json е она што треба прво да се прочита.
DROID
Најстандардизиран од трите. Еден систем насекаде: Franka Panda со Robotiq 2F-85 грабнувач, две прилагодливи 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 episodes, 27,044,326 frames, franka, 15 fps, codebase_version v2.0, three AV1 streams at 180x320, 392 GB.
- Примерок за дебагирање од 2 GB, 100 епизоди се наоѓа на gs://gresearch/robotics/droid_100. Започнете оттаму.
BridgeData V2
Најблиску до хоби поставка: рака WidowX 250 со 6 степени на слобода, 60,096 траектории низ 24 околини и 13 вештини на 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
Не е збир на податоци во иста смисла: 60 постоечки збирови на податоци за роботи од 34 лаборатории споени во една RLDS колекција која опфаќа 22 отелотворувања и над милион траектории. BridgeData V2 се наоѓа во неа како bridge_orig; делот google_robot, fractal20220817_data, се претвора во 87,212 епизоди со 3 fps.
Спојувањето носи предупредување кое трудот отворено го наведува. За експериментите со RT-X, авторите го претвораат секој извор во акција на краен ефектор со 7 степени на слобода (DoF), но не ги усогласуваат координатните рамки низ збировите на податоци и дозволуваат вредностите на акциите да бидат апсолутни или релативни позиции или брзини, според оригиналната контролна шема на секој робот. Нивниот заклучок: истиот акционен вектор може да предизвика многу различни движења за различни роботи.
Несовпаѓањето, во четири дела
Несовпаѓањето во отелотворувањето обично се третира како еден нејасен проблем. Тоа се четири, тие откажуваат различно, а два не можат да се поправат со скриптирање.
1. Степени на слобода
SO-100 има пет зглобови на раката плус грабнувач. Броено како мотори, тоа е рака со 6 степени на слобода, и трудот SmolVLA ја нарекува така; броено како механизам за позиционирање, тоа е 5 степени на слобода, и LeRobot ја нарекува така во својот docstring за инверзна кинематика, кој опишува IK со мека ориентација на SO-101 со 5 степени на слобода каде што зглобот ја следи ориентацијата само делумно. Franka има седум зглобови за позиционирање. Таа разлика одлучува кои пози постојат: рака со 5 степени на слобода генерално не може да достигне произволна позиција и ориентација истовремено, така што решавачот го враќа најблиското што може, движење различно од она демонстрираното. Позадина: .
# 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 checkpoint не е кратенка. Physical Intelligence испорачува pi05_droid на gs://openpi-assets/checkpoints/pi05_droid, и истиот README што ја фали неговата широчина предупредува дека овие експертски контролни точки може да не се генерализираат на вашата поставка. Неговата состојба е осум Franka joint numbers и неговите image keys се exterior_image_1_left и wrist_image_left. Ниту едно знаменце не го претвора тоа во команда за SO-100 со шест мотори.
2. Што всушност кажува векторот на акција
Подалеку од димензионалноста. Во LeRobot конверзиите, сите три кажуваат каде треба да оди грабежот, во Декартов простор. SO-100 кажува каде треба да одат шест серво мотори. Конвертирањето бара кинематички модел и решавач, а не преобликување.
| Својство | OXE, DROID и Bridge во LeRobot форма | SO-100 во LeRobot |
|---|---|---|
| Вектор на акција | 7-D: x, y, z, roll, pitch, yaw, грабеж | 6-D: една целна позиција по мотор |
| Вектор на состојба | 8-D, со слот за полнење (google_robot користи кватернион) | 6-D, еден по мотор |
| Рамка | Декартов, неусогласен низ податочни множества | простор на зглобови, калибрација по рака |
| Апсолутно или релативно | кое било, одлучено од изворната лабораторија | апсолутни целни позиции |
| Единици | нормализирани по податочно множество, потоа дискретизирани | степени по дифолт (use_degrees=True), инаку -100 до 100 |
| Тивок неуспех | делта прочитана како апсолутна | некалибрирана рака |
README-то на openx2lerobot документира унифицирана состојба со 8 димензии и акција со 7 димензии за секое множество податоци што го конвертира, од каде што доаѓа слотот `pad`. Сопствената RLDS шема на DROID се разликува: неговата акција на највисоко ниво е 7-вектор од *6 брзини на зглобовите плус 1 позиција на фаќачот*, со `cartesian_position`, `cartesian_velocity`, `joint_position` и `joint_velocity` под `action_dict`. openpi го чита погледот на просторот на зглобовите, додека LeRobot ви го дава картезијанскиот. Ниту едното не е шест апсолутни агли на серво.
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 вели да се постави 0.0 за IK само за позиција на недоволно активирани раце. Можете да го изградите мостот, но ориентационата половина од секоја позајмена акција останува приближна.
3. Контролна стапка
DROID е 15 Hz, BridgeData V2 5 Hz, google_robot парчето 3 fps; авторите на pi0 го опишуваат отворениот дел од нивната мешавина како нискофреквентна контрола помеѓу 2 и 10 Hz. DatasetRecordConfig на LeRobot стандардно е fps 30, episode_time_s 60, reset_time_s 60, num_episodes 50. А тренирана на податоци од 5 Hz научи дека една акција покрива 200 ms. Репродуцирајте ја на 30 Hz и раката ползи; преземете примерок наивно и ќе ја размачкате рамката каде што се затвора фаќачот. Исто така, лошо комуницира со : група од 100 чекори е 20 секунди на 5 Hz, 3.3 на 30 Hz.
4. Камери
BridgeData V2 рандомизираше две пози на камерата на секои 50 траектории, а на страницата на проектот е забележано дека поголемиот дел од податоците сепак носат само фиксен поглед. DROID користеше прилагодливи држачи ZED 2 плус ZED Mini на зглобот. Имате две USB веб-камери поставени со око. Позицијата на камерата не е променлива која пречи за ; тоа е голем дел од она на што се фокусираше визуелниот енкодер, и ништо во форматот на датотеката не ви кажува дека позите се разликуваат.
Деловите се вклопуваат доволно добро за да работат. Се вчитува множеството податоци, започнува тренирањето, загубата опаѓа, се појавуваат контролни точки, нема грешки. Потоа политиката не прави ништо препознатливо на раката и поминувате еден ден барајќи грешка во вашата скрипта за тренирање. Нема грешка: моделот научил Декартова дистрибуција на акции за робот што не постои во вашата соба. Започнете од загубата опаѓа, политиката не прави ништо, а не од вашите хиперпараметри.
Што се случува кога сепак ќе се обидете да ги споите податоците
Очигледниот план е да се спојат: неколку илјади DROID епизоди плус вашите 50. LeRobot одбива, а одбивањето ги наведува трите работи што се разликуваат.
- 1Преземете го примерокот од 100 епизоди, а не целосните 1.7 TB
2 GB се доволни за да се види структурата.
bashpip install gsutil tensorflow tensorflow-datasets gsutil -m cp -r gs://gresearch/robotics/droid_100 ~/tensorflow_datasets/ - 2Конвертирајте RLDS во 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.
Референтните вредности доаѓаат од кое било податочно множество што сте го навеле прво, поради што пораката се жали на вашите 30 fps наместо на 15-те на DROID. Поправете ги fps и ќе наидете на проверката robot_type; поправете го тоа и ќе наидете на проверката на карактеристиките, 7 наспроти 6 за акцијата. Ниту едно подредување не поминува, а истата заштита работи за време на снимањето преку sanity_check_dataset_robot_compatibility.
На тековниот LeRobot main, so100_follower и so101_follower се регистрирани на една заедничка SOFollowerRobotConfig, така што низата од вистинско снимање не е нужно онаа што ја очекувате. Прочитајте ја од вашата сопствена meta/info.json, и третирајте ја проверката што моравте да ја оневозможите како проверка што ви кажуваше нешто.
Што всушност се пренесува?
Тежини, не епизоди. Секоја модерна општа политика апсорбирала дел од тоа во претходна обука, и кога од објавен го наследувате веќе усогласено од луѓе со доволно пресметковна моќ да го направат тоа правилно. Трудот на pi0 е искрен за пропорцијата: 9,1 проценти од неговата мешавина за претходна обука, броено во временски чекори, се податоци со отворен код, вклучувајќи OXE, Bridge v2 и DROID. Таа бројка е на pi0; мешавината на секој продавач се разликува.
- Визуелни и јазични претходни знаења: енкодерот видел илјадници кујни и шолји и знае на што се однесува „црвениот блок“.
- Претходно знаење за структурата на манипулација: пристап, затворање, подигање, транспорт, ослободување, независно од отелотворувањето дури и кога бројките не се.
- Познато добро податочно множество за тестирање. Ако вашата задача не може да преобучи 100 DROID епизоди, проблемот е во вашата поставка.
- Референтни точки: на домени со мали податочни множества RT-1-X постигна 50 проценти повисока просечна стапка на успех од оригиналниот метод или RT-1, а RT-2-X го надмина RT-2 за околу 3 пати во однос на вештините во развој.
- Нема употреблива супервизија на дејства. 7-Д Декартова цел не е 6-Д командa за зглоб.
- Нема пренос на положба на камера, и ништо во податоците не ви кажува дека положбите се разликуваат.
- Нема пренос на тајминг: извори од 3, 5 и 15 fps наспроти рекордер од 30 fps.
- Нема пренос на грабач. Robotiq 2F-85 и печатена вилица на STS3215 се разликуваат по сила, опсег и динамика.
- Само обемот не беше доволен дури и за неговите автори: во домените со големи податочни множества RT-1-X не го надмина RT-1 обучен само на тоа податочно множество.
- Нема намалување на бројот на сопствени епизоди што ви се потребни.
| Слој на моделот | Се пренесува? | Зошто |
|---|---|---|
| Vision encoder | Да, силно | Објектите и сцените се независни од отелотворувањето |
| Language grounding | Да | Инструкциите се текст, а не геометрија |
| Cross-modal fusion | Главно | Се фокусира на објектот именуван во барањето |
| Proprioception encoder | Не | Влезната димензија и семантиката на зглобовите се разликуваат |
| Action head | Не | Обучен на 7-Д Декартов простор во кој не се наоѓате |
| Normalisation statistics | Не, и опасно | Странските статистики ја менуваат секоја команда |
Ова е зошто SmolVLA се однесува различно на нискобуџетна рака. Неговата статија избира 481 збир на податоци од заедницата од Hugging Face, филтрирани според тип на отелотворување, број на епизоди, квалитет на податоци и покриеност на рамки: 22.9K епизоди, 10.6M рамки, евалуирани на вистински SO-100 и SO-101 раце. Мало и совпаднато ги надминува големите и несоодветните. Споредете на ACT against SmolVLA.
Три патеки вредни за следење
Патека А: фино подесување од контролна точка која веќе ги апсорбирала податоците
Повеќето луѓе треба да ја изберат оваа. Никогаш не допирајте DROID или Open X-Embodiment: изберете политика чија претходна обука веќе ги апсорбирала податоците за вкрстено отелотворување, снимете свои епизоди, фино подесете.
| Политика | Параметри | Мин. епизоди | Формат на податочно множество | Ниво на графичка картичка | Заклучување | Основна контролна точка |
|---|---|---|---|---|---|---|
| GR00T N1.7 | ~3 B, ~40 M тренирани со дотерување | 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 основа | 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 | ништо, од нула |
ACT е искрен граничен случај: нема основен модел, така што ниту еден од јавните податоци никогаш не стигнува до него. Тоа не е автоматски недостаток, бидејќи со 20 ms по чекор на акција е единствениот од петте што може да затвори брза јамка, како што страницата на ACT е наведено. Изберете по задача користејќи сите пет споредени, GR00T N1.7 наспроти Pi0.5, и 332 резултати од бенчмарк низ 85 модели во арената.
Патека Б: користете го DROID како тест уред
Примерокот од 100 епизоди е најдобрите 2 GB што ќе ги преземете овој месец, и тоа не за тренирање. Тоа е податочно множество за кое знаете дека е точно. Извршете го вашиот конвертор, вчитувач и кратка работа на графичката картичка на него; сè што не успее е инфраструктурна грешка пронајдена додека беше евтино. NVIDIA го прави истото на големо: картичката GR00T N1.7 наведува четири пост-тренирани варијанти, за Bridge и Fractal во SimplerEnv, 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 | блокирано од 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 | високо, како валидација |
Асиметријата е поентата: патеката што позајмува најмногу податоци е најскапа и најмалку веројатно ќе ја придвижи вашата рака. Помалку од два часа ваша сопствена телеоперација е подобра од терабајт туѓа Франка. Сè уште немате рака? /live пренесува физички SO-100 без регистрација. Потоа обучете ја вашата прва политика, и SmolVLA on SO-100 за специфичниот водич.
Преземете го примерокот DROID од 2 GB и користете го за да ја докажете вашата цевководна линија. Игнорирајте ги останатите 1.7 TB. Снимете 50 епизоди од една задача со фиксни камери. Прво фино подесете го SmolVLA, бидејќи со минимум 30 епизоди на картичка од 24 GB е најевтино за итерација, а потоа пробајте го GR00T N1.7 на истите податоци. Споредете на вашата задача, а не на бенчмарк.
Снимајте податочни множества кои веќе одговараат на вашата рака
Десктоп клиентот запишува податочни множества во LeRobot формат директно од телеоп сесија: вистинска рака, вистинска стапка на слики, вистински акционен простор. Без RLDS конверзија, без премапирање.
Преземете го десктоп клиентотМоже ли да тренирам политика на DROID и да ја извршувам на мојот SO-100?▾
Не директно. Во LeRobot изградбата, DROID акциите се 7-D команди за краен ефектор на Franka Panda со 15 fps; во суровиот RLDS тие се 6 брзини на зглобовите плус позиција на грабнувач. SO-100 зема 6 апсолутни позиции на зглобовите. Ќе ви треба слој за инверзна кинематика, па дури и тогаш зглоб со 5 степени на слобода не може да репродуцира произволни пози со 6 степени на слобода.
Може ли да мешам DROID или Bridge епизоди со моите SO-100 епизоди?▾
Не. validate_all_metadata бара идентични fps, robot_type и feature schema и подига ValueError при првото несогласување. Сите три се разликуваат: 15 или 5 fps наспроти 30, franka или widowx наспроти вашата рака, форми на акција од 7 наспроти 6. Препишувањето на метаподатоците за да се помине проверката не ја поправа семантиката.
Дали Open X-Embodiment е бескорисен за евтина рака тогаш?▾
Не, но неговата вредност доаѓа до вас преку претходно тренирани тежини, а не епизоди. Отворени податочни множества, вклучувајќи OXE, Bridge v2 и DROID, сочинуваат 9.1 проценти од мешавината за претходно тренирање на pi0, а NVIDIA испорачува GR00T N1.7 варијанти пост-тренирани на Bridge, Fractal, DROID и LIBERO. Она што не можете да го направите е да ги додадете тие епизоди на вашата сопствена снимка.
Која политика има најголема корист од јавните податоци за вкрстено отелотворување?▾
Pi0.5 и GR00T моделите носат најмногу претходно тренирање за вкрстено отелотворување, но SmolVLA често се однесува најдобро на евтина рака: неговиот сет за претходно тренирање е 481 податочни множества од заедницата, 22.9K епизоди и 10.6M рамки, евалуирани на вистински SO-100 и SO-101 раце. ACT е спротивното: без основен модел, 20 ms по акционен чекор.
Колку мои сопствени епизоди всушност ми требаат?▾
30 за SmolVLA, 50 за GR00T N1.7, GR00T N1.5, Pi0.5 и ACT. Со стандардните поставки на 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-Д состојба, 7-Д акција
- IPEC-COMMUNITY/droid_lerobot: meta/info.json и големина на репозиториум
- IPEC-COMMUNITY/bridge_orig_lerobot: meta/info.json
- IPEC-COMMUNITY/fractal20220817_data_lerobot: google_robot парчето со 3 fps
- huggingface/lerobot: SO следбеник, процесор за кинематика, конфигурации за агрегирање и снимање
- 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