Peut-on changer les instructions d’un robot en plein mouvement ?
LeRobot 0.7 introduit des exécutions interactives. Voici comment rediriger un robot en marche, séparer ses réponses visuelles des actes physiques et préparer un essai encadré.
Un robot trie des blocs de mousse quand le bac rouge se remplit. Le bloc suivant est déjà dans la pince. Une interface utile devrait permettre à la personne aux commandes de rediriger l’étape suivante, de demander ce que voit la caméra ou d’interrompre l’exécution. Ces actions ont des conséquences différentes dès que la pince porte un poids.
Le 5 novembre, Hugging Face a publié LeRobot 0.7.0, une nouvelle version de sa boîte à outils libre pour enregistrer des démonstrations robotiques, entraîner des politiques de commande et les exécuter sur le matériel. En mode interactif, la connexion au robot et la politique restent prêtes lorsque l’opérateur saisit de nouvelles instructions au terminal. Une politique compatible ou un planificateur externe peut aussi interpréter la scène et choisir une autre sous-tâche. La même version revoit la lecture en continu des jeux de données, l’entraînement et l’inférence distante. Les commandes interactives changent ce que l’opérateur peut faire au milieu d’une expérience. Annonce de LeRobot · Version v0.7.0
Les exemples suivants sont des scénarios de banc d’essai. Ils distinguent la demande au modèle, la commande effectivement envoyée et le résultat observable.

Support de caméra au poignet sur SO-101, photographié par The Robot Studio. La photo montre un exemple de placement pour ce matériel et provient du projet SO-ARM100 sous licence Apache 2.0. Telli.sh a redimensionné l’image et ajouté une marge.
Trois commandes donnent trois rôles à l’opérateur
Commandes interactives et rôle de chacune. Illustration originale de Telli.sh.
Un rollout est une session pendant laquelle une politique reçoit des observations et produit des actions. Elle peut recevoir des images et des positions mesurées des articulations. Dans la version 0.7, ajouter --interactive=true à une session lerobot-rollout configurée maintient la connexion, les poids de la politique et les composants de traitement entre les instructions. La version présente cinq commandes terminal. Entre /start et /stop figurent trois façons de piloter ou d’interroger la session en cours. Annonce de LeRobot · Documentation des rollouts v0.7.0
| Commande terminal | Intention de l’opérateur | Résultat à observer |
|---|---|---|
/subtask | Remplacer l’instruction de la politique d’action | Le mouvement visible suivant suit la nouvelle cible ou l’opérateur intervient |
/vqa | Demander ce que voit le robot | Le système renvoie une réponse à comparer avec la scène |
/autosteer | Déléguer un objectif et laisser le système choisir ses sous-tâches | Le système choisit des étapes et l’opérateur peut reprendre la main |
L’annonce cite FineART-VLA et Wall-OSS-0.5 parmi les politiques capables de produire le texte nécessaire aux questions et aux objectifs. Un modèle vision-langage externe compatible peut fournir cette capacité à une politique qui ne génère pas de texte. La version décrit une API compatible OpenAI pour le planificateur, qu’elle soit hébergée ou locale. Le planificateur peut répondre aux questions visuelles et transmettre des instructions à la politique. C’est toujours la politique d’action qui traduit une sous-tâche en mouvements du robot. Rollouts interactifs et planificateur externe · Documentation des rollouts v0.7.0
La distinction se voit sur un banc encombré. Si la caméra ne voit pas le bord du bac, une réponse fluide sur le bac reste mal étayée. Si le planificateur choisit correctement le bloc bleu et que la pince glisse, le langage a fait son travail et la tentative physique a échoué. En séparant la question, l’action de la politique et le résultat, vous pouvez décider de déplacer la caméra, de revoir l’instruction ou de travailler la prise.
Changez la cible et gardez la tâche simple
Prenez deux bacs de couleur, trois blocs mous et un bras pris en charge. Commencez par une tâche connue, comme saisir un bloc rouge. Choisissez une deuxième cible que la politique a déjà atteinte dans des conditions proches. Pour le premier essai, demandez la modification avant le contact. Une fois la redirection visible, repartez d’un état neuf et demandez-la plus tard dans le mouvement. Une instruction envoyée pendant le déplacement pose un autre problème qu’une instruction donnée après la fermeture de la pince.
Observez le premier mouvement vers la nouvelle cible et la position finale du bloc. Un repère vidéo peut dater la redirection visible. L’heure du terminal indique quand vous l’avez saisie. Les deux donnent un délai interprétable, même lorsque le logiciel a accepté l’entrée et que le changement de mouvement est difficile à voir. Une condition d’arrêt définie à l’avance évite d’attendre une correction qui pourrait ne jamais arriver.
Un autre exemple consiste à remettre en ordre le poste après un essai. Laissez un objet mal placé et demandez ce qui reste sur la table. Essayez une vue dégagée et une vue masquée avant de faire vider le poste. Si la réponse change avec l’angle de caméra, vous avez une raison de revoir la scène ou de réduire l’objectif. Donnez une seule action familière au robot à la fois pour apprendre le comportement de sa politique.
Au troisième essai, donnez à /autosteer un objectif comme ranger deux blocs de mousse dans un plateau. Consignez les choix intermédiaires du système. Il peut choisir un premier objet plausible et demander de l’aide pour finir si le second est hors de portée. La délégation est surtout utile quand on peut comparer chaque étape à une suite simple attendue. La trace permet de voir si le planificateur a choisi une mauvaise étape ou si le robot a eu du mal à exécuter une bonne étape.
L’arrêt logiciel et l’arrêt à la machine se testent séparément
La session interactive rapproche les instructions de la personne qui observe le robot. Elle crée aussi un intervalle où cette personne peut croire la nouvelle instruction appliquée alors qu’elle regarde encore l’ancien mouvement. Un pilote utile consigne quatre événements séparément. Notez l’envoi, l’accusé de réception du moteur s’il est disponible, le premier changement visible et l’état final du robot. Si l’accusé manque, laissez la colonne vide. Les trois autres restent utiles.
La documentation de déploiement de LeRobot décrit un maintien logiciel dans le parcours de correction des robots pris en charge. Il renouvelle la dernière position cible appliquée par le pilote. Un bras chargé peut encore se stabiliser vers cette cible, et le comportement de la pince doit être vérifié sur la machine. L’interface de langage est au-dessus de ces mécanismes. Conservez les procédures d’arrêt physique et de surveillance de votre matériel. Vérifiez leur effet sur un espace dégagé avant d’ajouter des changements en cours de mouvement. Documentation des rollouts v0.7.0
Notez quand la redirection est envoyée, quand le mouvement change et comment le robot termine. Illustration originale de Telli.sh.
Cela change l’interprétation d’un essai qui semble réussi. Un bloc arrivé dans le bon plateau peut cacher deux mauvais mouvements que l’opérateur a dû interrompre. Relevez les interventions et les cas où une reprise reste possible depuis l’état atteint. Une politique capable de reprendre après un échec banal ne demande pas la même supervision qu’une politique qui exige de repartir de zéro à chaque erreur. Comparez des exécutions avec le même espace et les mêmes objets.
FineART intègre les étapes intermédiaires aux données d’entraînement
La version change aussi la manière d’enregistrer une démonstration. Si l’enregistrement montre seulement un départ propre et une fin réussie, il peut être difficile de savoir quel comportement la politique doit apprendre lorsqu’une instruction change. Les annotations de sous-tâches renseignent davantage l’entraînement sur les transitions, comme saisir, poser ou passer à l’objet suivant.
Hugging Face et Scale AI rapportent plus de 40 000 épisodes bimanuels, 1 718 heures et plus de 533 000 annotations de sous-tâches pour FineART. Leur publication du 5 novembre situe les données à 1,9 To au format LeRobot. FineART-VLA repose sur π0.5 et ajoute une tête de langage capable de prédire une sous-tâche verbale avant que le composant d’action produise le mouvement. Les chiffres décrivent les données des auteurs, et la séparation langage-action décrit leur architecture. Une pince de forme différente, un champ de caméra étroit ou des objets absents de l’entraînement changent toujours l’évaluation à faire. Annonce et présentation de FineART · Documentation FineART-VLA
Quand vous collectez quelques corrections, décidez ce que vous devrez pouvoir reproduire. Gardez la nouvelle instruction, la vue utile, l’état au moment du changement et le résultat observé. « Le bac rouge est plein » n’a pas le même rôle que « Place le prochain bloc rouge dans le plateau vide ». La première phrase décrit l’état. La seconde indique une action à la politique. Conservez les deux si l’expérience le demande. Gardez aussi les échecs pour éprouver une future politique sur l’événement à l’origine du travail.
Un premier pilote tient sur un seul banc
-
Fixez la version et choisissez une combinaison prise en charge. Installez LeRobot 0.7.0 avec la documentation de cette version. Vérifiez le robot, les caméras et la politique sur une tâche connue. Les notes du 5 novembre indiquent que les distributions PyTorch Linux par défaut utilisent désormais CUDA 13 et demandent un pilote NVIDIA 580.65 ou plus récent dans cette configuration. Les anciens pilotes exigent l’installation alternative documentée. Traitez séparément les changements de pilote et le comportement du robot. Documentation d’installation · Version v0.7.0
-
Exécutez une référence avant de rediriger. Prévoyez une table dégagée, un mouvement limité et la surveillance requise pour le bras. Conservez la pose de départ et la cible, et notez si la politique termine. Gardez le placement de la caméra, la lumière et les objets pour comparer la référence à l’essai redirigé. Documentation de configuration SO-101
-
Ajoutez le mode interactif à l’exécution qui fonctionne. Lancez la session au terminal, donnez une sous-tâche, changez-la une fois et terminez. Voici les commandes de session présentées par la version avec des formulations données à titre d’exemple. Documentation des sessions interactives
Texte brut/start /subtask move the red block to the tray /subtask move the blue block to the tray /stop -
Ajoutez les questions visuelles et un petit objectif délégué lorsque la référence est répétable. Choisissez une politique qui produit du texte ou configurez le planificateur externe comme indiqué. Commencez par une question vérifiable depuis la même caméra. Testez un objectif dont la fin est visible et documentez ce qui se passe si le planificateur est indisponible ou ne propose pas de sous-tâche utile. Un point de terminaison externe change aussi le lieu de traitement des observations, ce qui compte si la caméra filme plus que le banc. Documentation du planificateur externe
-
Comparez les reprises autant que les réussites. Faites quelques essais comparables et gardez chaque échec. Notez si l’opérateur a vu ce qui s’est passé, choisi la bonne intervention et confirmé l’état final. Quelques répétitions aident à affiner le dispositif. Une affirmation de fiabilité exige beaucoup plus de preuves dans les conditions réelles d’utilisation.
La version 0.7.0 remplace aussi l’ancienne interface d’inférence asynchrone par un serveur de politiques et un mode de rollout distant. Si vous passez à un serveur GPU, refaites les mesures de durée et d’interruption sur la connexion réelle. Le serveur peut fournir plus de calcul, tandis que le réseau ajoute une dépendance entre la nouvelle observation et l’action suivante. Une connexion lente ou indisponible mérite un essai dédié. Changements incompatibles de v0.7.0 · Documentation de l’inférence distante
Le meilleur test se déroule en cours de tâche
Le moment intéressant d’une démonstration arrive quand l’étape prévue n’a plus de sens. Un bac est plein, un objet bouge ou l’opérateur remarque ce que la caméra a manqué. Les commandes de LeRobot permettent d’en faire un élément de l’expérience. Reste à savoir si la personne qui supervise voit ce qui a changé, redirige l’action suivante et peut confirmer elle-même le résultat.
Sources
-
Photo du support de caméra SO-101 par The Robot Studio et licence du dépôt
-
Déploiement de politiques et sessions interactives de LeRobot v0.7.0
Pour retrouver les décisions et les expériences qui ont guidé votre travail, créez un compte Telli.sh.