L'entrée du glossaire AY-Robots pour le format de jeu de données LeRobot, le format que chaque entraîneur sur la plateforme consomme, que les épisodes aient été enregistrés ou générés.
données synthétiquessim-to-realIsaac Labapprentissage par imitationMimicGenSO-101

Données synthétiques pour les politiques de robotique : Là où la simulation aide

AY-Robots ResearchAugust 23, 202631 min de lecture

La simulation peut multiplier une poignée de démonstrations en milliers. Voici ce que les chiffres publiés disent réellement, où l'écart sim-to-real se fait sentir, et ce qui doit encore être enregistré.

Tous les quelques mois, quelqu'un réalise qu'enregistrer cinquante épisodes à la main est lent, et demande si un simulateur pourrait les produire à la place. C'est une question légitime. La réponse honnête comporte trois parties : les données générées sont utiles, elles ne remplacent pas les enregistrements réels, et le rapport entre ces deux faits dépend entièrement du type de données synthétiques que vous entendez.

Cette page examine ce que les travaux publiés ont réellement mesuré, ce que vous pouvez exécuter aujourd'hui sur un bras à faible coût tel que le SO-100, et où l'écart entre la simulation et la réalité annule les gains. La version courte, avant les détails : les systèmes qui rapportent les plus grands multiplicateurs multiplient un petit ensemble de démonstrations humaines réelles. Ils n'éliminent pas le besoin de ces dernières.

Ce qu'il faut savoir

  • Quatre techniques sans rapport sont appelées données synthétiques en manipulation : la multiplication de trajectoires, les rollouts physiques, les modèles de monde vidéo et l'augmentation dans l'espace d'image. Elles échouent de différentes manières et ont des valeurs différentes.
  • MimicGen a transformé moins de 200 démonstrations humaines en plus de 50 000 démonstrations générées sur 18 tâches. Sur sa tâche Square D0, 200 démos générées à partir de 10 démos humaines ont donné 79 percent de succès contre 84 percent pour 200 démos humaines réelles.
  • RoboCasa est le contre-exemple : 72,000 démos générées ont obtenu 47.6 percent contre 28.8 percent pour 1,250 démos humaines. Il s'agit d'un avantage de volume de 58x, et non d'une victoire à armes égales.
  • L'étude de co-entraînement simulation-réalité rapporte une amélioration moyenne de 38 percent des performances des tâches en monde réel. La recette est le co-entraînement sur un mélange, et non un transfert uniquement basé sur la simulation.
  • GR00T N1 repose sur 780,000 trajectoires de simulation (6,500 hours équivalent, générées en 11 hours) et 827 hours de trajectoires neuronales issues de 88 hours réelles. Ces 88 hours réelles restent le sommet de la pyramide.
  • Pour un SO-101, il existe aujourd'hui un pipeline ouvert fonctionnel : LeIsaac dans Isaac Lab, téléopérer avec le bras physique leader, multiplier avec Isaac Lab Mimic, exporter au format LeRobot, affiner GR00T.
  • AY-Robots ne génère pas de données synthétiques. Il s'entraîne sur le jeu de données LeRobot que vous lui fournissez, quelle que soit la manière dont ce jeu de données a été produit, et les entraîneurs ont besoin de 30 to 50 episodes minimum selon le modèle.

Quatre choses différentes sont appelées données synthétiques

Avant de comparer les chiffres, il est utile de séparer les familles, car un article rapportant un multiplicateur de 100x et un article rapportant un gain de succès de 5 points décrivent souvent le même pipeline sous des angles différents. Le point commun est que quelque chose dans le jeu de données LeRobot a été produit par une machine plutôt qu'enregistré à partir d'un bras physique. Ce qui diffère, c'est la partie.

FamilleCe qui reste réelCe qui est généréMultiplicateur rapportéPrincipal mode de défaillance
Multiplication de trajectoires (MimicGen, DexMimicGen, Isaac Lab Mimic)Quelques démonstrations humaines, les maillages d'objets, le moteur physiqueNouvelles trajectoires adaptées aux nouvelles poses d'objets et configurations de scènes10 démos humaines à 1 000 par distribution de réinitialisation ; 60 à 21 000 ; moins de 200 à plus de 50 000Les tentatives de génération échouent. Isaac Lab estime le taux de succès candidat à 70 % dans les cas simples et à moins de 1 % dans les cas difficiles
Simulations physiques dans un simulateur de tâches (Isaac Lab, robosuite, RoboCasa)Le moteur physique et la bibliothèque d'actifsÉpisodes complets, pilotés par des contrôleurs scriptés, des planificateurs ou du RLLimité uniquement par les heures GPULe bras simulé n'est pas votre bras. La dynamique de contact et de servo sont des approximations
Modèles de monde vidéo (DreamGen, Cosmos Transfer)Quelques épisodes de téléopération réels utilisés comme conditionnementVidéo photoréaliste de nouveaux comportements, plus des pseudo-actions récupérées par la suite88 hours to 827 hours in GR00T N1, about 10xLes actions sont inférées, non mesurées. Une vidéo plausible peut contenir une action invraisemblable
Augmentation dans l'espace image (recadrage aléatoire, jitter de couleur)Tout sauf les pixelsVues perturbées d'épisodes que vous avez déjà1x, cela ne crée aucune nouvelle trajectoireL'augmentation géométrique rompt le lien entre l'image et l'étiquette d'action

Seuls les trois premiers sont des données synthétiques au sens où l'entend cet article. Le quatrième mérite d'être mentionné car il est regroupé dans la même conversation et est de loin la chose la moins chère de la liste. Si vous n'avez pas encore activé les augmentations fournies avec votre entraîneur, faites-le avant d'installer un simulateur.

Vous pouvez consulter de vraies données synthétiques avant d'en générer

NVIDIA a publié les trajectoires simulées utilisées pour le post-entraînement de GR00T N1 sous le nom nvidia/PhysicalAI-Robotics-GR00T-X-Embodiment-Sim sur Hugging Face, environ 1.87 TB sous licence cc-by-4.0. Cela se décompose en 9 000 trajectoires bimanuelle Panda et GR1 inter-corporelles, 240 000 trajectoires humanoïdes de table, 72 000 trajectoires de cuisine à bras Panda unique et 102 trajectoires de loco-manipulation Unitree G1. Télécharger un sous-ensemble avec huggingface-cli download --include "gr1_arms_only.CanSort/**" et regarder quelques épisodes est le moyen le plus rapide de calibrer l'apparence des trajectoires générées, et cela ne coûte rien d'autre que de la bande passante.

Ce que disent réellement les chiffres publiés

Voici la base de preuves, avec les chiffres tels que les sources les présentent plutôt que tels que les communiqués de presse les résument. Chaque ligne ci-dessous provient d'un article ou d'une page de projet lue le 23 août 2026.

SystèmeEntréeGénéréRésultat rapporté
MimicGen, CoRL 2023Moins de 200 démos humaines ; 10 démos humaines en confrontation directePlus de 50 000 démos, 18 tâches, quatre bras (Panda, Sawyer, IIWA, UR5e)Square D0 : 79 pour cent à partir de 200 démos générées à partir de 10 démos humaines, contre 84 pour cent à partir de 200 démos humaines
DexMimicGen, 202460 démos humaines sources21 000 démos pour robots dextres bimanuelsTâches dextres bimanuelles en simulation, plus un déploiement de tri de canettes humanoïde du réel au sim-au-réel
RoboCasa, 20241 250 démos humaines (50 par tâche sur 25 tâches atomiques), 100 tâches d'évaluation, plus de 150 catégories d'objets100 000 trajectoires MimicGen ; le sous-ensemble de 72 000 démos est à l'origine de la comparaison principale28,8 pour cent au total sur l'ensemble humain contre 47,6 pour cent sur l'ensemble entièrement généré, évalué uniquement sur des instances d'objets non vues
Co-entraînement sim-et-réel, 2025Démos réelles plus ensembles de données de simulation, deux domaines (bras robotique et humanoïde)Un mélange, pas un remplacementLes données de simulation ont amélioré la performance des tâches du monde réel de 38 pour cent en moyenne
DreamGen, 2025Données de téléopération d'une seule tâche de prise et de placement dans un environnementVidéo synthétique plus pseudo-actions d'un modèle d'action latente ou d'un modèle de dynamique inverse22 nouveaux comportements sur un humanoïde, dans des environnements vus et non vus
GR00T N1 data pyramid, 202588 heures de téléopération GR-1 interne827 heures de trajectoires neuronales (environ 10x) ; 780 000 trajectoires de simulation, équivalent à 6 500 heures, produites en 11 heuresLes trajectoires neuronales ont ajouté 4,2, 8,8 et 6,8 points sur RoboCasa aux régimes de 30, 100 et 300 démos par tâche, et 5,8 points en moyenne sur 8 tâches GR-1 réelles
Interprétez les multiplicateurs comme des nombres de trajectoires, pas comme des capacités

Un multiplicateur est un nombre de lignes. La confrontation directe de MimicGen place les données générées légèrement en dessous du même nombre de données humaines (79 contre 84 pour cent), et l'ablation de GR00T N1 ajoute des points de pourcentage à un chiffre en plus d'un modèle qui avait déjà les heures réelles. RoboCasa bat les données humaines, 47,6 contre 28,8 pour cent, mais avec 72 000 démos générées contre 1 250 démos humaines. Le volume achète la couverture. Il n'achète pas l'information que vos démonstrations n'ont jamais contenue.

Le schéma observé dans chaque ablation honnête est le même. Les données synthétiques étendent la couverture à moindre coût. Elles ne créent pas d'informations sur votre pince, le fléchissement de votre servomoteur, votre éclairage ou la hauteur de votre table qui n'étaient pas déjà présentes quelque part dans les démonstrations réelles. Si votre politique échoue parce que l'effecteur final se ferme une demi-seconde trop tard, aucune quantité de variation simulée ne peut y remédier. C'est un problème de synchronisation de la pince dans les enregistrements réels.

Une découverte de MimicGen mérite d'être prise en compte dans vos propres sessions d'enregistrement, car elle va à l'encontre des conseils habituels. Le projet a généré deux ensembles de données sur Square D2, l'un amorcé avec 10 démonstrations d'un opérateur humain de meilleure qualité et l'autre avec 10 démonstrations d'un opérateur de moins bonne qualité, tous deux tirés de l'ensemble de données robomimic multi-humain Square. Les politiques entraînées sur chacun ont obtenu des résultats comparables, ce que les auteurs interprètent comme un signe que dans le régime de données à grande échelle, la qualité des données pourrait ne pas être aussi importante. Lisez attentivement, c'est une déclaration concernant les dix démonstrations d'amorçage, et non vos cinquante épisodes réels. Cela signifie qu'un ensemble d'amorçage légèrement imparfait n'est pas ce qui vous sépare d'un ensemble de données généré utilisable. Cela ne signifie pas que les épisodes réels sur lesquels vous co-entraînez peuvent être imparfaits, car ce sont eux qui contiennent les informations que le simulateur n'a pas.

Le répertoire public des ensembles de données AY-Robots listant les ensembles de données LeRobot enregistrés avec leur nombre d'épisodes.
Le répertoire public des ensembles de données à /directory. Chaque entrée ici correspond à des épisodes réels enregistrés. Les données synthétiques sont un multiplicateur en plus de quelque chose comme cela, pas un substitut.

L'écart sim-réel, concrètement

L'écart est généralement discuté comme une quantité unique, ce qui est peu utile. Il s'agit d'au moins cinq déséquilibres distincts, et ils ont des tailles différentes sur un bras de loisir de 110 à 150 EUR que sur un Franka.

  • Contact et frottement. Isaac Lab déclare clairement que, étant donné le même matériel et la même version d'Isaac Sim et de PhysX, la simulation est reproductible, mais que les résultats varient selon les différentes configurations matérielles en raison de la précision des nombres flottants et des erreurs d'arrondi, et que PhysX ne garantit pas le déterminisme pour toute scène avec des corps non rigides tels que des tissus ou des corps mous.
  • Actionnement. Un servomoteur de bus Feetech STS3215 fonctionnant à 7,4 V s'affaisse sous charge, présente du jeu et modifie son comportement à mesure qu'il chauffe. Le modèle MJCF pour le SO-101 emprunte ses paramètres moteur à un projet sans rapport plutôt que de les identifier sur votre bras.
  • Rendu. Le bruit de la caméra, l'obturateur roulant, l'auto-exposition et la teinte exacte de votre table ne sont pas inclus dans le rendu. C'est la moitié de l'écart que Cosmos-Transfer1 a été conçu pour combler : son flux de travail d'augmentation robotique mappe un exemple synthétique robotique à plusieurs exemples réalistes à partir de la segmentation, de la profondeur ou du conditionnement des bords.
  • Synchronisation. Un simulateur avance à un rythme fixe. Une boucle de contrôle réelle ne le fait pas, et le modèle lui-même coûte de 20 à 485 ms par étape d'action selon celui que vous avez choisi. Voir latence d'inférence.
  • Statistiques d'objets. Les scènes simulées sont échantillonnées à partir d'une distribution que quelqu'un a écrite. Votre table de cuisine ne l'est pas.

Ce qu'un SO-100 simulé sait réellement de votre bras

C'est la partie qui décide si tout ce qui précède vaut votre week-end, et la première surprise est que les SO-100 et SO-101 ne sont pas servis de manière égale. Le dépôt SO-ARM100 de TheRobotStudio conserve ses ressources de simulation sous Simulation/. Le dossier SO100 contient un seul fichier URDF et rien d'autre. Le dossier SO101 contient à la fois des fichiers URDF et MuJoCo : scene.xml, so101_new_calib.xml, so101_old_calib.xml, les URDF correspondants et un joints_properties.xml. Si vous voulez un modèle physique plutôt qu'une chaîne cinématique, vous voulez les fichiers SO-101.

Ils ont été générés avec le plugin onshape-to-robot à partir d'un modèle CAO conçu dans Onshape, ce qui signifie que la cinématique et les maillages visuels sont aussi bons que le modèle CAO. La dynamique est une autre histoire, et le README du dépôt est franc sur trois points. Les maillages de collision de base ont été supprimés en raison d'un comportement de collision problématique lors de la simulation et de la planification. Les propriétés du moteur STS3215 sont adaptées du projet Open Duck Mini plutôt que mesurées sur un SO-101. Et la convention de la pince LeRobot, où 0 est entièrement fermé et 100 est entièrement ouvert, n'est pas encore explicitement reflétée dans les fichiers URDF et MuJoCo. Chacun de ces points est un endroit où une politique entraînée purement dans ce modèle se comportera différemment sur votre bureau.

La convention de calibration qui fait perdre une journée

Il existe deux conventions de zéro dans les fichiers MuJoCo fournis, et scene.xml choisit entre elles en fonction du fichier robot qu'il inclut. Dans so101_new_calib.xml, par défaut, le zéro virtuel de chaque articulation se situe au milieu de sa plage articulaire. Dans so101_old_calib.xml, le zéro est la configuration où le robot est entièrement étendu horizontalement. Si vos épisodes simulés utilisent une convention et vos épisodes réels enregistrés utilisent l'autre, chaque angle articulaire dans l'ensemble de données mixte est décalé de dizaines de degrés, la perte diminue toujours, et la politique fait quelque chose de manifestement faux. Vérifiez la convention des deux côtés avant de co-entraîner, et lisez d'abord calibration et la perte diminue, la politique ne fait rien.

Randomisation de domaine, et ce qu'elle ne corrige pas

La réponse standard à cet écart est d'arrêter d'essayer de correspondre à la réalité et d'entraîner plutôt sur une distribution suffisamment large pour que la réalité y soit incluse. Tobin et ses collègues ont montré la version forte de ceci en 2017 : un détecteur d'objets entraîné uniquement sur des images simulées avec des textures aléatoires non réalistes, sans aucun pré-entraînement sur des images réelles, a localisé des objets réels avec une précision de 1.5 cm et est resté robuste aux distracteurs et aux occlusions partielles.

Isaac Lab expose la même idée que les termes d'événement que vous attachez à une configuration d'environnement. Ce sont les paramètres, par leurs noms de fonction réels dans isaaclab.envs.mdp, afin que vous puissiez les consulter plutôt que de deviner.

Fonction d'événementCe qu'elle perturbe
randomize_rigid_body_materialFrottement de contact et restitution
randomize_rigid_body_mass, randomize_rigid_body_comMasse de l'objet et du lien, décalages du centre de masse
randomize_actuator_gainsRigidité et amortissement du contrôleur d'articulation
randomize_joint_parameters, randomize_fixed_tendon_parametersFrottement d'articulation, armature et limites
randomize_visual_texture_material, randomize_visual_colorApparence, la moitié photométrique de l'écart
randomize_physics_scene_gravityLe vecteur de gravité
apply_external_force_torque, push_by_setting_velocityPerturbations d'exécution
reset_root_state_uniform, reset_joints_by_offsetDispersion de l'état initial à chaque réinitialisation d'épisode

Voici la limite, et c'est celle sur laquelle les gens trébuchent. La randomisation élargit la distribution que la politique a vue à l'intérieur du modèle que vous avez construit. Elle ne peut pas introduire un effet physique que le simulateur ne représente pas. Si PhysX ne modélise pas le jeu et la dérive thermique de vos servomoteurs STS3215, randomiser leur rigidité n'apprend rien à la politique sur le jeu. C'est pourquoi un bras qui sous une politique entraînée en simulation n'est pas un problème de budget de randomisation. C'est un problème de modélisation.

Le chemin manuel : générer des données dans Isaac Lab

Isaac Gym est un logiciel hérité. La propre page de NVIDIA est intitulée "Isaac Gym - Maintenant obsolète" et indique que les développeurs peuvent le télécharger et continuer à l'utiliser, mais qu'il n'est plus pris en charge, renvoyant plutôt vers Isaac Lab. Si vous voulez l'historique, nous avons couvert les deux : et . Pour tout nouveau travail en 2026, commencez par Isaac Lab.

  1. 1
    Installer Isaac Sim et Isaac Lab

    La page d'installation pip indique que les instructions sont pour Isaac Sim 5.X, qui nécessite Python 3.11. Le clonage de la source vous fournit les scripts nécessaires aux étapes suivantes.

    bash
    pip install "isaacsim[all,extscache]==5.1.0" \
        --extra-index-url https://pypi.nvidia.com
    
    git clone https://github.com/isaac-sim/IsaacLab.git --branch main
    cd IsaacLab
    sudo apt install cmake build-essential
    ./isaaclab.sh --install
    
    # smoke test
    ./isaaclab.sh -p scripts/tutorials/00_sim/create_empty.py
  2. 2
    Enregistrer une dizaine de démonstrations humaines

    La documentation d'Isaac Lab est spécifique : environ 10 démonstrations réussies sont nécessaires pour que les étapes suivantes aboutissent. Ses conseils sont tout aussi spécifiques. Gardez les démonstrations courtes, prenez un chemin direct plutôt que de vous déplacer le long d'axes arbitraires, et ne faites pas de pause, car il n'est pas évident pour une politique de savoir pourquoi et quand faire une pause.

    bash
    ./isaaclab.sh -p scripts/tools/record_demos.py \
        --task Isaac-Stack-Cube-Franka-IK-Rel-v0 \
        --device cpu \
        --teleop_device spacemouse \
        --dataset_file ./datasets/dataset.hdf5 \
        --num_demos 10
  3. 3
    Annoter les limites des sous-tâches

    Mimic divise les démonstrations d'entrée en sous-tâches afin de pouvoir redéfinir le timing et la cible des segments. L'option --auto effectue cette opération sans intervention humaine pour les tâches qui définissent l'annotation automatique ; sans elle, vous mettez en pause avec B, continuez avec N et marquez une limite avec S. Notez que l'ID de la tâche gagne un suffixe -Mimic.

    bash
    ./isaaclab.sh -p scripts/imitation_learning/isaaclab_mimic/annotate_demos.py \
        --device cpu \
        --task Isaac-Stack-Cube-Franka-IK-Rel-Mimic-v0 \
        --auto \
        --input_file ./datasets/dataset.hdf5 \
        --output_file ./datasets/annotated_dataset.hdf5
  4. 4
    Générer l'ensemble de données multiplié

    C'est l'étape qui transforme 10 en 1000. Mimic applique un critère de succès booléen à chaque candidat et ne conserve que ceux qui ont terminé la tâche, de sorte que le nombre de sorties est inférieur au nombre d'essais. La documentation indique que le taux de succès des candidats peut atteindre 70 % dans les cas simples et être inférieur à 1 % pour les tâches difficiles et les robots complexes : environ 50 % pour l'empilement de cubes Franka, et 65 à 80 % pour le pick and place GR1T2, où 1000 démos prennent 18 à 40 minutes (19 minutes sur une RTX ADA 6000 à 80 %).

    bash
    ./isaaclab.sh -p scripts/imitation_learning/isaaclab_mimic/generate_dataset.py \
        --device cpu \
        --num_envs 10 \
        --generation_num_trials 1000 \
        --headless \
        --input_file ./datasets/annotated_dataset.hdf5 \
        --output_file ./datasets/generated_dataset.hdf5
  5. 5
    Convertir HDF5 en un ensemble de données LeRobot

    Tout ce qui précède produit du HDF5 de type robomimic, et le cœur d'Isaac Lab ne fournit pas son propre convertisseur LeRobot : sa documentation indique seulement que vous pouvez convertir l'ensemble de données généré au format LeRobot. Deux projets fournissent le convertisseur réel. IsaacLab-Arena fournit un convertisseur ciblé GR00T entièrement piloté par une configuration YAML, et LeIsaac fournit sa propre paire pour la route SO-101 (voir ci-dessous).

    bash
    # IsaacLab-Arena, GR00T LeRobot format
    python isaaclab_arena_gr00t/lerobot/convert_hdf5_to_lerobot.py \
        --yaml_file isaaclab_arena_gr00t/lerobot/config/gr1_manip_config.yaml
Épinglez vos versions et ne faites pas confiance à main

Le 23 août 2026, la documentation d'Isaac Lab pour main affiche un badge Isaac Sim 6.0.1 et propose release/3.0.0 et v3.0.0-beta2 dans son sélecteur de version, aux côtés de v2.3.2, tandis que la page d'installation pip sur le même arbre épingle toujours isaacsim[all,extscache]==5.1.0 et décrit les instructions comme étant pour Isaac Sim 5.X. Le conteneur de blueprint NVIDIA synthetic-manipulation-motion-generation est encore plus ancien : Isaac Lab 2.0.2 sur Isaac Sim 4.5.0. La propre table de compatibilité de LeIsaac associe Isaac Sim 5.1 à Isaac Lab v2.3.0. Ces arbres évoluent plus vite que la documentation ne peut se réconcilier. Choisissez une version, notez-la, et attendez-vous à ce que les chemins de script et les noms de drapeaux aient changé si vous suivez un tutoriel écrit il y a trois mois.

Pourquoi les tentatives de génération échouent, et quoi changer

Un taux de réussite candidat qui oscille entre 70 % et moins de 1 % n'est pas un mystère, et Isaac Lab documente les pièges courants plutôt que de vous laisser deviner. Chacun d'eux est quelque chose que vous contrôlez au moment de l'enregistrement, c'est pourquoi il est judicieux de lire cette liste avant d'enregistrer les dix démonstrations initiales plutôt qu'après la première exécution de génération décevante.

  • Les démonstrations sont trop longues. Un horizon temporel plus long est plus difficile à apprendre pour une politique. Commencez près du premier objet et minimisez les mouvements.
  • Les démonstrations ne sont pas fluides. Un mouvement irrégulier est difficile à déchiffrer pour une politique, et un meilleur matériel de téléopération fournit de meilleures données : la documentation indique clairement qu'une SpaceMouse est supérieure à un clavier.
  • Pauses. Les pauses sont difficiles à apprendre, car il n'est pas évident pour une politique de savoir pourquoi et quand faire une pause. Gardez le mouvement fluide.
  • Trop de sous-tâches. Plus de sous-tâches signifient plus de raccordements entre les segments de trajectoire, ce qui entraîne un mouvement moins fluide et un taux de réussite de génération plus faible. Annotez les limites où le bras est peu susceptible d'entrer en collision avec quoi que ce soit.
  • Pas de bruit d'action. Le bruit d'action rend les politiques résultantes plus robustes.
  • Enregistrement trop court. Si l'enregistrement s'arrête sur la trame exacte où le terme de succès se déclenche, il pourrait ne pas se redéclencher lors de la relecture. Laissez une marge à la fin.
  • Relecture non déterministe. La physique dans Isaac Lab n'est pas reproductible de manière déterministe après un `env.reset`, de sorte que certaines démonstrations humaines échouent lors de la relecture. Collectez plus que nécessaire et conservez celles qui survivent à l'annotation. Tout ce qui se trouve dans un fichier HDF5 généré par Mimic est une démonstration réussie et peut être utilisé pour l'entraînement même si la relecture échoue ultérieurement.

L'étape d'interpolation entre les segments de sous-tâches raccordés possède son propre réglage, et le nombre d'étapes d'interpolation dont vous avez besoin dépend de la vitesse de déplacement du robot et de l'étendue de la distribution de réinitialisation de l'objet. Une tâche complexe avec une large distribution de réinitialisation laisse des écarts plus importants entre les segments, ce qui nécessite plus d'étapes d'interpolation pour produire un mouvement continu. Si vos vidéos générées montrent le bras se déplaçant par à-coups entre les phases, c'est le paramètre à examiner avant de blâmer les démonstrations initiales.

Le même pipeline sur un SO-101, avec le bras leader réel

C'est le plus intéressant pour quiconque lit cette page, car c'est le seul pipeline ouvert qui intègre un dans Isaac Lab et vous permet de le piloter avec le bras leader physique que vous possédez déjà. LeIsaac, version 0.4.0 au moment de la rédaction, est le terrain de jeu de simulation officiel pour l'apprentissage par imitation intégré à l'EnvHub de LeRobot. Sa table de compatibilité liste trois combinaisons fonctionnelles ; la plus récente associe Isaac Sim 5.1 à Isaac Lab v2.3.0, CUDA 12.8, PyTorch 2.7.0 et Python 3.11, et la documentation recommande Isaac Sim 5.0 ou plus récent pour les cartes de la série 50.

bash
git clone https://github.com/LightwheelAI/leisaac.git --recursive
conda create -n leisaac python=3.11 && conda activate leisaac
conda install -c "nvidia/label/cuda-12.8.1" cuda-toolkit
pip install -U torch==2.7.0 torchvision==0.22.0 \
  --index-url https://download.pytorch.org/whl/cu128
pip install "isaacsim[all,extscache]==5.1.0" --extra-index-url https://pypi.nvidia.com
sudo apt install cmake build-essential
cd leisaac/dependencies/IsaacLab && ./isaaclab.sh --install && cd ../..
pip install -e source/leisaac
pip install -e "source/leisaac[lerobot]"
pip install numpy==1.26.0
LeIsaac depuis les sources. L'épinglage de numpy est dans les instructions officielles, ce n'est pas une solution de contournement.

Une fois cela en place, le bras leader sur /dev/ttyACM0 pilote le suiveur simulé et enregistre directement au format HDF5. La boucle est la même que celle que vous connaissez déjà de l'enregistrement réel, seule la partie suiveuse est un corps rigide dans PhysX.

bash
python scripts/environments/teleoperation/teleop_se3_agent.py \
    --task=LeIsaac-SO101-PickOrange-v0 \
    --teleop_device=so101leader \
    --port=/dev/ttyACM0 \
    --num_envs=1 \
    --device=cuda \
    --enable_cameras \
    --record \
    --dataset_file=./datasets/dataset.hdf5
ID d'environnementDescription de la tâcheRobot
LeIsaac-SO101-PickOrange-v0Prendre trois oranges et les déposer dans l'assiette, puis ramener le bras à l'état de reposSingle-arm SO101 follower
LeIsaac-SO101-LiftCube-v0Soulever le cube rougeSingle-arm SO101 follower
LeIsaac-SO101-CleanToyTable-v0Prendre deux objets en forme de lettre 'e' et les déposer dans la boîte, puis ramener le bras à l'état de reposSingle-arm SO101 follower
LeIsaac-SO101-CleanToyTable-BiArm-v0La même tâche avec deux brasBi-arm SO101 follower
LeIsaac-SO101-FoldCloth-BiArm-v0Plier le tissu, puis ramener le bras à l'état de repos. Seule la variante DirectEnv prend en charge check_successBi-arm SO101 follower
LeIsaac-LeKiwi-CleanupTrash-v0Ramasser les déchets de mouchoirs sur le sol et les jeter dans la poubelleLeKiwi

La plupart de ces identifiants existent également en tant que variante -Direct-v0, et python scripts/environments/list_envs.py affiche la liste actuelle. Vous pouvez également ignorer entièrement le détour par HDF5 et écrire au format LeRobot pendant la téléopération en ajoutant trois drapeaux. Deux mises en garde proviennent de la documentation elle-même : l'enregistreur ignore automatiquement les 5 premières images de chaque épisode pour éviter l'instabilité due aux états initiaux, et cela peut entraîner de légers retards en téléopération, ce qui est exactement le genre de chose qui modifie subtilement le caractère de vos démonstrations. Il ne vide également que les épisodes que la tâche a marqués comme réussis.

bash
python scripts/environments/teleoperation/teleop_se3_agent.py \
    --task=LeIsaac-SO101-PickOrange-v0 \
    --teleop_device=so101leader \
    --port=/dev/ttyACM0 \
    --num_envs=1 --device=cuda --enable_cameras --record \
    --use_lerobot_recorder \
    --lerobot_dataset_repo_id=<your-user>/<dataset-name> \
    --lerobot_dataset_fps=30

L'étape de multiplication s'exécute ensuite sur ces enregistrements. LeIsaac encapsule Isaac Lab Mimic en quatre commandes, car Mimic généralise les trajectoires à partir des poses de l'effecteur et de l'objet : convertir les actions de l'espace articulaire en actions basées sur l'IK, annoter, générer, puis reconvertir en espace articulaire.

bash
python scripts/mimic/eef_action_process.py \
  --input_file ./datasets/mimic-lift-cube-example.hdf5 \
  --output_file ./datasets/processed_mimic-lift-cube-example.hdf5 \
  --to_ik --headless

python scripts/mimic/annotate_demos.py --device cuda \
  --task LeIsaac-SO101-LiftCube-Mimic-v0 \
  --input_file ./datasets/processed_mimic-lift-cube-example.hdf5 \
  --output_file ./datasets/annotated_mimic-lift-cube-example.hdf5 \
  --enable_cameras

python scripts/mimic/generate_dataset.py --device cuda \
  --num_envs 1 --generation_num_trials 10 \
  --input_file ./datasets/annotated_mimic-lift-cube-example.hdf5 \
  --output_file ./datasets/generated_mimic-lift-cube-example.hdf5 \
  --enable_cameras

python scripts/mimic/eef_action_process.py \
  --input_file ./datasets/generated_mimic-lift-cube-example.hdf5 \
  --output_file ./datasets/final_generated_mimic-lift-cube-example.hdf5 \
  --to_joint --headless

Ensuite, convertissez vers LeRobot. C'est l'étape où la règle de format de la plateforme entre en jeu, et LeIsaac fournit exactement les deux convertisseurs dont vous avez besoin : isaaclab2lerobot.py écrit LeRobot v2, ce que les chargeurs GR00T utilisent, et isaaclab2lerobotv3.py écrit la v3 pour Pi0.5, SmolVLA et ACT. Les deux scripts prennent des arguments identiques mais épinglent des versions différentes de lerobot, et seuls les épisodes réussis sont convertis.

bash
pip install lerobot==0.3.3
pip install numpy==1.26.0

python scripts/convert/isaaclab2lerobot.py \
    --task_name=LeIsaac-SO101-PickOrange-v0 \
    --repo_id=<your-user>/so101_pick_orange_sim \
    --hdf5_root=./datasets \
    --hdf5_files=dataset.hdf5
Sortie LeRobot v2 pour GR00T. Remplacez par isaaclab2lerobotv3.py, avec lerobot 0.4.2, pour les entraîneurs v3.
Il existe une échappatoire sans GPU

LeIsaac documente l'exécution de l'ensemble de la pile sur NVIDIA Brev : déployez, cliquez sur le lien du port 80 pour ouvrir un serveur VS Code basé sur navigateur, et exécutez les quatre scénarios préinstallés avec --kit_args="--no-window --enable omni.kit.livestream.webrtc", en visualisant le rendu à la même adresse avec /viewer ajouté. Si vous n'avez pas de carte graphique de station de travail sous votre bureau, c'est un moyen moins coûteux de vérifier si la version simulée de votre tâche est même proche avant de vous engager sur du matériel.

Deux approches pour une politique entraînée

Vous construisez la scène, générez les données, louez le GPU et configurez le service vous-même. C'est le bon choix si la tâche nécessite une variation d'environnement que vous ne pouvez pas simuler physiquement, ou si vous souhaitez une évaluation reproductible.

  1. Installez Isaac Sim 5.1 et Isaac Lab, ou la pile LeIsaac si votre robot est un SO-101.
  2. Modélisez ou importez la scène. C'est l'étape que personne ne budgétise et c'est généralement la plus longue.
  3. Enregistrez environ 10 démonstrations propres via le suiveur simulé.
  4. Annotez les sous-tâches, exécutez generate_dataset.py, et acceptez que les échecs soient écartés.
  5. Convertissez HDF5 au format LeRobot, en choisissant v2 pour GR00T et v3 pour les autres.
  6. Enregistrez quand même des épisodes réels sur le bras physique, puis co-entraînez sur le mélange.
  7. Louez un GPU, exécutez le fine-tuning, servez le checkpoint à côté du bras.
RessourceCe que les sources indiquent
GPU de simulation localeLe blueprint de manipulation synthétique de NVIDIA requiert Ubuntu 22.04 et une NVIDIA RTX A6000 avec 48 Go de VRAM
Nœud de modèle du mondeLe même blueprint requiert un H100 ou supérieur avec 80 Go, sur un nœud séparé de la simulation Isaac Lab
Versions des conteneursIsaac Lab 2.0.2 sur Isaac Sim 4.5.0 à l'intérieur de cette image blueprint
Débit de générationIsaac Lab rapporte 1000 démos de pick-and-place GR1T2 en 18 à 40 minutes, 19 minutes sur une RTX ADA 6000 avec 80 % de succès
Coût de la trajectoire neuronaleGR00T N1 rapporte environ 105 000 heures GPU L40, soit environ 1,5 jour sur 3 600 L40, pour ses 827 heures de rêves
Le coût réel est le temps calendaire, pas le temps GPU

Générer 1000 trajectoires prend un après-midi. Obtenir votre scène, vos extrinsèques de caméra, vos maillages d'objets et votre modèle de servomoteur suffisamment précis pour que ces trajectoires soient transférables, c'est là que les semaines s'écoulent. Budgétisez la modélisation, pas l'échantillonnage.

Modèles du monde vidéo : la couche la plus récente et la moins mesurée

L'idée derrière DreamGen est qu'un modèle génératif vidéo, adapté à l'incarnation du robot cible, peut imaginer des épisodes plausibles dans des scènes que vous n'avez jamais visitées. Le pipeline comporte quatre étapes : affiner le modèle du monde vidéo, générer des vidéos de robots synthétiques photoréalistes, récupérer des séquences de pseudo-actions avec un modèle d'action latente ou un modèle de dynamique inverse, puis entraîner la politique du robot sur le résultat. Le dépôt GR00T-dreams de NVIDIA implémente exactement cela.

Le résultat principal est réel et mérite d'être pris au sérieux : les données de téléopération provenant d'une seule tâche de prise et de dépose dans un seul environnement ont produit 22 nouveaux comportements sur un humanoïde, dans des environnements vus et non vus. La mise en garde est tout aussi réelle et se situe à la troisième étape.

Les modèles de monde vidéo comme source de données
Avantages
  • Ils s'adaptent le long de l'axe qui est réellement coûteux dans le monde réel : nouvelles scènes, nouvelles dispositions d'objets, nouvelles formulations de l'instruction.
  • GR00T-dreams liste quatre incarnations prises en charge pour ses scripts d'extraction d'actions et de réglage fin : franka, gr1, robocasa et so100. Ce n'est pas une technique réservée aux humanoïdes.
  • Cosmos-Transfer1 s'attaque directement à la moitié photométrique de l'écart, en mappant un exemple synthétique de robotique à plusieurs exemples réalistes à partir de la segmentation, de la profondeur ou du conditionnement des bords. Isaac Lab lui-même fournit des outils d'invite pour cela sous scripts/tools/cosmos.
  • Le travail DreamGen fournit DreamGen Bench, un banc d'essai de génération vidéo qui montre une forte corrélation entre les performances du banc d'essai et le succès de la politique en aval, afin que vous puissiez filtrer les générations avant de les entraîner.
Compromis
  • Les actions sont récupérées par un modèle, non mesurées par un encodeur. Une vidéo qui semble correcte peut contenir une trajectoire articulaire que votre bras ne peut pas exécuter.
  • La génération est coûteuse. GR00T N1 rapporte deux minutes pour générer une seconde de vidéo sur un L40, soit environ 105 000 heures GPU L40, environ 1,5 jour sur 3 600 GPU L40, pour ses 827 heures de trajectoires neuronales.
  • Le gain mesuré est à un chiffre : 4,2, 8,8 et 6,8 points sur RoboCasa à travers les trois régimes de données, et 5,8 points en moyenne sur 8 tâches réelles GR-1, en plus d'un modèle qui disposait déjà des données réelles.
  • Aucune recette publiée ne valide cela pour un bras à servomoteur de loisir de 7,4 V de bout en bout. Vous feriez un portage, pas un suivi.
Ne jamais alimenter un STS3215 avec 12 V

Sans rapport avec la simulation, mais cela arrive chaque fois que quelqu'un passe d'un bras simulé à un bras réel et improvise une alimentation électrique. Les bras SO-100, SO-101 et LeKiwi utilisent tous des servomoteurs Feetech STS3215 à 7,4 V. Les alimenter en 12 V les détruit, et le LeKiwi est un piège particulier car son rail de base est de 12 V. Consultez la page matérielle du SO-100 avant de câbler quoi que ce soit.

Le co-entraînement est la recette qui montre réellement des gains

S'il y a une leçon opérationnelle à retenir de la littérature, c'est celle-ci. L'étude de co-entraînement sim-et-réel (Maddukuri et collègues, 2025) visait à trouver une recette simple pour utiliser les données de simulation afin de résoudre des tâches de manipulation robotique basées sur la vision, dans deux domaines, un bras robotique et un humanoïde, et sa conclusion est que l'on s'entraîne sur un mélange. Les données de simulation ont amélioré la performance des tâches du monde réel de 38 pour cent en moyenne, et l'article est explicite sur le fait que cela s'est maintenu même avec des différences notables entre les données de simulation et celles du monde réel.

Cette dernière clause est plus importante que les 38 pour cent. Cela signifie que la simulation n'a pas besoin d'être un jumeau numérique parfait pour être utile, à condition que les données réelles soient présentes dans le mélange pour l'ancrer. Le transfert uniquement par simulation est la voie coûteuse : le même article indique que l'entraînement d'une politique uniquement en simulation et son transfert vers le monde réel exigent souvent un effort humain substantiel pour combler l'écart de réalité. Le co-entraînement évite la majeure partie de cet effort en ne demandant jamais à la politique de combler l'écart par elle-même.

Le tableau de comparaison des politiques AY-Robots montrant les paramètres, le niveau de GPU, la latence d'inférence et les épisodes minimum pour GR00T N1.7, GR00T N1.5, Pi0.5, SmolVLA et ACT.
Les cinq politiques entraînables à /policies. La colonne « épisodes minimum » est le nombre qui détermine si les données synthétiques sont un plus ou le seul moyen d'atteindre un ensemble de données entraînable.

En pratique, sur cette plateforme, le co-entraînement signifie une chose : placez les deux ensembles d'épisodes dans le même LeRobot dataset avec des clés de caméra cohérentes, un ordre d'articulations cohérent et des unités cohérentes, puis exécutez un réglage fin. Il n'y a pas de bouton de poids de mélange dans le formulaire d'entraînement. Si vous voulez un rapport sim-à-réel de 3:1, vous l'exprimez par le nombre d'épisodes de chaque que vous mettez dans l'ensemble de données.

Le gain le moins cher de la simulation n'est pas les données d'entraînement

C'est l'évaluation. Exécuter des dizaines d'essais réels par tâche pour comparer deux représente une journée de temps de bras, et le bras dérive entre les essais. SIMPLER (Li et collègues, 2024) a construit des environnements simulés dont le but est d'évaluer des politiques réelles plutôt que de les entraîner, puis a mesuré la précision avec laquelle le classement de la simulation prédit le classement réel. Un seul environnement SIMPLER rend à 3 500 étapes de simulation par seconde sur une RTX 4090 grand public à une résolution de 640 par 512, ce qui, sous une fréquence de simulation de 500 Hz, représente une accélération de 7x par rapport à l'évaluation réelle.

Protocole d'évaluationMMRV (plus bas est mieux)Pearson r (plus haut est mieux)
Validation MSE0.3750.308
SIMPLER, agrégation de variantes0.1430.778
SIMPLER, correspondance visuelle0.0560.924

Ce sont des moyennes sur trois groupes de tâches Google Robot pour six points de contrôle open-source courants : trois points de contrôle RT-1 à différentes étapes d'entraînement, RT-1-X, RT-2-X et Octo-Base. Le côté réel n'est pas un nombre d'essais uniforme, ce qu'il est bon de savoir avant de le citer : 75 essais pour ramasser une canette de Coca, 60 pour déplacer à proximité, 54 pour les tâches d'ouverture et de fermeture de tiroir et 27 pour la tâche plus longue de tiroir et de pomme. La comparaison avec le MSE de validation est la partie utile. La sélection de modèle par perte de validation classe mal ces points de contrôle, et un Pearson r de 0,924 sous correspondance visuelle signifie que si un point de contrôle obtient un meilleur score dans SIMPLER, il obtient très probablement un meilleur score sur le banc. C'est un tableau de bord reproductible du jour au lendemain, et cela ne vous oblige pas à croire quoi que ce soit sur le transfert d'entraînement de la simulation vers le réel.

Le classement de l'Arena AY-Robots, un tableau triable de 85 modèles vision-langage-action avec 332 résultats de benchmark, chaque valeur étant liée à son article source ou à sa fiche modèle.
L'Arena à /arena rassemble 332 résultats de benchmark sur 85 modèles. Presque tous sont des benchmarks simulés, ce qui est précisément le point de l'argument SIMPLER : la simulation est un bon tableau de bord bien avant d'être une bonne source de données.

Si vous souhaitez un contexte plus large sur ce que ces chiffres de benchmark vous disent et ne vous disent pas à propos d'un , nous l'avons détaillé séparément dans .

Où cette plateforme ne vous aide pas

Être clair sur les limites fait gagner du temps à tout le monde. AY-Robots est une plateforme d'enregistrement, d'entraînement et de service. Elle ne contient aucun simulateur.

  • Pas d'Isaac Lab, pas de MimicGen, pas de modèle de monde, pas d'authoring de scène. Si vous voulez des données générées, vous les générez ailleurs et apportez le résultat.
  • Les entraîneurs consomment des jeux de données LeRobot et rien d'autre. Un export de simulateur doit être converti avant de pouvoir être utilisé comme entrée, et il doit être de la bonne version : v2.0 ou v2.1 pour GR00T N1.5 et N1.7, v3.0 pour Pi0.5, SmolVLA et ACT.
  • Le point d'entrée de fine-tuning de GR00T est une CLI tyro qui n'expose pas de seed, donc les exécutions de GR00T ne sont pas reproductibles bit-par-bit. Si vous effectuez une ablation minutieuse sim-versus-réel, c'est une réelle limitation. La seed par défaut de lerobot est 1000, et les formulaires ACT, SmolVLA et Pi0.5 exposent un champ de seed.
  • L'accumulation de gradient n'est réellement appliquée que pour les deux entraîneurs GR00T. Pour Pi0.5 et SmolVLA, le champ existe dans le formulaire mais lerobot 0.5.1 n'a pas un tel flag, donc cela ne fait rien.
  • L'inférence doit être située à proximité des servomoteurs pour les tâches rapides. La boucle de contrôle est de 20 à 485 ms par étape d'action selon le modèle, et l'ajout d'allers-retours sur l'internet public transforme une politique fonctionnelle en une politique hésitante. L'inférence à distance est viable pour le pick-and-place lent, pas pour le mouvement réactif rapide.
Ce que vous pouvez faire ici et qui est vraiment difficile ailleurs

Enregistrez la moitié réelle d'un mélange de co-entraînement sans posséder de bras. /live diffuse un SO-100 physique sans inscription, basé sur une file d'attente, et le programme opérateur existe parce que quelqu'un doit les piloter. Si votre goulot d'étranglement est que vous avez un simulateur et pas d'épisodes réels, c'est le fossé que cette plateforme comble.

Un budget que vous pouvez défendre

Mettez les deux chemins côte à côte avec les chiffres que chacun publie réellement, et la décision se prend généralement d'elle-même pour un projet à tâche unique sur un bras à faible coût.

ÉlémentSimulation d'abordEnregistrement d'abord
Modélisation initialeScène, maillages, placement de la caméra, modèle de servomoteur. Jours à semainesAucun
Collecte de donnéesEnviron 10 démos en simulation, puis génération30 à 50 épisodes réels, quelques heures de téléopération
Matériel à posséderCarte de 48 Go pour le plan Isaac Lab, 80 Go pour la scène CosmosUn bras et un ordinateur portable
Coût de l'entraînementIdentique à la colonne de droite, l'entraîneur ne se soucie pas de la provenance des données1 à 3 USD sur le niveau 4090, 4 à 12 USD sur le niveau A100 ou H100
Meilleure preuve de rentabilitéGain moyen de 38 % en conditions réelles lors du co-entraînement, 4 à 9 points grâce aux trajectoires neuronalesLa référence par rapport à laquelle tout ce qui précède est mesuré
Échoue lorsqueVotre tâche dépend du contact, des déformables ou de la conformité du servomoteurVous avez besoin d'une variation d'environnement que vous ne pouvez pas physiquement mettre en scène

Pour une première politique sur un SO-100, enregistrez. Le et la vous mènent à un point de contrôle servi pour le prix d'un café, et vous aurez la moitié réelle de tout futur mélange de co-entraînement. Utilisez le simulateur lorsque vous avez une base de référence fonctionnelle et un échec de généralisation spécifique que vous pouvez nommer, comme une politique qui .

Pas encore de bras sur votre bureau ?

Pilotez un véritable SO-100 dans le navigateur, basé sur une file d'attente, sans inscription, et voyez à quoi ressemble réellement un épisode avant de passer un week-end à en modéliser un dans un simulateur.

Piloter un bras réel

Une recette qui respecte les preuves

  1. 1
    Enregistrez d'abord la base de référence réelle

    30 épisodes pour SmolVLA, 50 pour ACT, GR00T N1.7 et Pi0.5. Entraînez une seule fois. Tout ce que cette politique ne parvient pas à faire constitue votre spécification pour les données synthétiques.

  2. 2
    Nommez l'échec de généralisation

    Pose de l'objet ? Éclairage ? Hauteur de la table ? Distracteurs ? Un libellé différent de l'instruction ? Les données synthétiques sont efficaces pour exactement un de ces éléments à la fois, et inutiles si vous ne pouvez pas dire lequel.

  3. 3
    Choisissez la famille la moins chère qui le couvre

    Variation de pose et de disposition : multiplication de trajectoires. Éclairage et texture : augmentation d'image d'abord, modèle du monde ensuite. Scènes entièrement nouvelles : simulations physiques, et acceptez le coût de modélisation.

  4. 4
    Générez, puis éliminez agressivement

    Les tentatives de génération échouent, et le taux de succès des candidats d'Isaac Lab varie de 70 % à moins de 1 % selon la tâche. Ne conservez que les trajectoires réussies et complétant la tâche, et examinez visuellement un échantillon sous forme de vidéo avant de faire confiance au lot.

    bash
    python scripts/mimic/generate_dataset.py --device cuda \
        --num_envs 8 --generation_num_trials 500 \
        --input_file ./datasets/annotated.hdf5 \
        --output_file ./datasets/generated.hdf5 --enable_cameras
  5. 5
    Co-entraînez, ne remplacez pas

    Fusionnez les épisodes générés avec les épisodes réels dans un seul jeu de données LeRobot avec des clés de caméra et un ordre d'articulations identiques. Le chiffre de 38 % est un chiffre de co-entraînement.

  6. 6
    Évaluez sur le bras réel, et seulement là

    L'évaluation simulée est un bon signal de classement (Pearson r 0.924 dans la configuration de correspondance visuelle de SIMPLER) mais ce n'est pas le test d'acceptation. Exécutez le point de contrôle sur le banc avant d'y croire.

Si vous préférez commencer par une liste de contrôle pour les enregistrements réels eux-mêmes, le guide de collecte de données couvre le placement de la caméra, le découpage d'actions les implications et les modes de défaillance qui rendent un jeu de données d'apprentissage par imitation inutilisable. Les détails sur le format lui-même se trouvent dans la documentation des jeux de données, et la partie hyperparamètres dans la documentation d'entraînement.

Puis-je entraîner une politique de robot entièrement sur des données synthétiques ?

Pour une tâche de manipulation sur un bras réel, pas de manière fiable. Chaque résultat publié avec un chiffre solide est un résultat de co-entraînement ou d'augmentation de données réelles. La propre comparaison de MimicGen place 200 démos générées à 79 % contre 84 % pour 200 démos humaines sur la même tâche, et l'article de co-entraînement sim-et-réel de 2025 indique que l'entraînement uniquement en simulation et le transfert exigent souvent un effort humain substantiel pour combler le fossé de la réalité. RoboCasa montre des données générées battant les données humaines à 47,6 contre 28,8 %, mais seulement avec 72 000 démos générées contre 1 250 démos humaines, à l'intérieur du simulateur qui a produit les deux.

Combien d'épisodes réels ai-je encore besoin si je génère des épisodes synthétiques ?

Sur AY-Robots, les entraîneurs ont besoin d'un minimum de 30 épisodes pour SmolVLA et de 50 pour ACT, GR00T N1.5, GR00T N1.7 et Pi0.5, quelle que soit la provenance des épisodes. La documentation Mimic d'Isaac Lab indique qu'environ 10 démonstrations humaines réussies sont nécessaires comme graine pour la génération. Ce sont des chiffres différents répondant à des questions différentes : 10 est ce dont le générateur a besoin, 30 à 50 est ce dont l'entraîneur a besoin.

Les données simulées doivent-elles être au format LeRobot ?

Pour s'entraîner sur cette plateforme, oui. Isaac Lab et LeIsaac produisent tous deux des fichiers HDF5 de type robomimic. Le cœur d'Isaac Lab ne contient pas de convertisseur LeRobot, mais LeIsaac fournit isaaclab2lerobot.py pour LeRobot v2 et isaaclab2lerobotv3.py pour v3, et IsaacLab-Arena fournit un convert_hdf5_to_lerobot.py ciblé pour GR00T, piloté par une configuration YAML. Attention à la version : GR00T N1.5 et N1.7 utilisent LeRobot v2.0 ou v2.1, tandis que Pi0.5, SmolVLA et ACT utilisent v3.0. Un jeu de données v3.0 fait planter le chargeur GR00T et doit être converti en v2.1.

Isaac Gym est-il toujours la bonne chose à apprendre en 2026 ?

Non. La page produit de NVIDIA est intitulée "Isaac Gym - Maintenant Obsolète" et indique qu'il s'agit d'un logiciel hérité, que les développeurs peuvent le télécharger et continuer à l'utiliser mais qu'il n'est plus pris en charge, et désigne Isaac Lab comme son remplaçant. Isaac Lab fournit des guides de migration depuis IsaacGymEnvs, OmniIsaacGymEnvs et Orbit, de sorte qu'un environnement existant est portable plutôt que perdu.

Puis-je mettre un SO-100 ou un SO-101 dans Isaac Lab ?

Le SO-101, oui, correctement. Le dépôt TheRobotStudio fournit des fichiers URDF et MJCF pour le SO-101, générés avec onshape-to-robot à partir du modèle CAO Onshape, et LeIsaac propose des tâches Isaac Lab prêtes à l'emploi telles que LeIsaac-SO101-PickOrange-v0 avec téléopération depuis le bras leader physique SO101. Pour le SO-100, ce même dépôt ne fournit qu'un seul URDF et aucun modèle MuJoCo. Soyez conscient des limites que le README du SO-101 indique de toute façon : les maillages de collision de base ont été supprimés en raison d'un comportement de collision problématique, les propriétés du moteur STS3215 ont été adaptées du projet Open Duck Mini plutôt que d'être identifiées sur un SO-101, et la convention de préhension 0-fermé à 100-ouvert n'est pas encore reflétée dans les fichiers de modèle.

La plateforme exécute-t-elle la simulation pour moi ?

Non. AY-Robots enregistre des jeux de données LeRobot à partir de la téléopération réelle, affine les cinq politiques prises en charge sur des GPU loués, et renvoie le point de contrôle résultant au bras. Il n'y a pas de simulateur, pas de génération de données synthétiques et pas d'édition de scène. Si vous générez des données ailleurs et les convertissez en un jeu de données LeRobot valide, les entraîneurs les accepteront exactement comme des enregistrements réels.

Sources

Ready for high-quality robotics data?

AY-Robots connects your robots to skilled operators worldwide.

Get Started