Le bot AI de Google utilise des modèles de langage pour écrire du code

L’écriture de code de travail peut être difficile. Même les langages relativement simples comme HTML nécessitent que le codeur comprenne une syntaxe spécifique et les outils disponibles. L’écriture de code pour contrôler des robots est encore plus compliquée et implique souvent plusieurs étapes : code pour détecter des objets, code pour activer des actionneurs qui déplacent les membres du robot, code pour déterminer quand une tâche est terminée, etc. il y a Quelque chose d’aussi simple que de programmer un robot pour ramasser un bloc jaune au lieu d’un bloc rouge est impossible si vous ne connaissez pas le langage de codage dans lequel le robot fonctionne.

Mais les chercheurs en robotique de Google explorent un moyen de résoudre ce problème. Ils ont développé un robot capable d’écrire son propre code de programmation basé sur des instructions en langage naturel. Au lieu d’aller dans les fichiers de configuration du robot pour changer le block_target_color de #FF0000 à #FFFF00, vous pouvez simplement taper “take yellow block” et le robot fera le reste.

Code as a Policy (ou CaP en abrégé) est un modèle de langage spécifique au codage développé à partir du Pathways Language Model (PaLM) de Google pour interpréter les instructions en langage naturel et les transformer en code exécutable. Les chercheurs de Google ont formé le modèle en lui donnant des exemples d’instructions (formatées sous forme de commentaires de code écrits par les développeurs pour expliquer ce que le code fait à quiconque le révise) et le code correspondant. Après cela, il pourrait recevoir de nouvelles instructions et “générer de manière autonome un nouveau code qui refactorise les appels d’API, synthétise de nouvelles fonctions et exprime des boucles de rétroaction pour collecter de nouveaux comportements lors de l’exécution”, ont expliqué les ingénieurs de Google dans un article de blog publié cette semaine. . En d’autres termes, étant donné une requête de type commentaire, elle peut générer du code de bot probable. Lire une impression de leur travail ici.

IA Google

Pour amener CaP à écrire un nouveau code pour des tâches spécifiques, l’équipe lui a fourni des “indices” tels que les API ou les outils disponibles et plusieurs instructions liées au code. Après cela, il pourrait écrire un nouveau code pour de nouvelles instructions. Pour ce faire, il utilise la “génération de code hiérarchique”, qui l’encourage à “définir de manière récursive de nouvelles fonctions, à collecter ses propres bibliothèques au fil du temps et à auto-architecturer une base de code dynamique”. Cela signifie qu’une fois donné un ensemble d’instructions, il peut générer du code qu’il peut ensuite utiliser pour des instructions similaires.

[Related: Google’s AI has a long way to go before writing the next great novel]

CaP peut également utiliser des opérations arithmétiques et la logique de langages spécifiques. Par exemple, un modèle formé en Python peut utiliser les boucles if/else et for/while appropriées selon les besoins, et utiliser des bibliothèques tierces pour des fonctionnalités supplémentaires. Il peut également convertir des descriptions vagues telles que “plus vite” et “gauche” en valeurs numériques précises nécessaires pour accomplir la tâche. Parce que CaP est construit sur le modèle de langage standard, il possède plusieurs fonctionnalités qui n’ont pas à voir avec le code, comme la compréhension des emojis et des langues autres que l’anglais.

Pour l’instant, ce que le CaP peut faire est encore très limité. Il s’appuie sur le modèle de langage sur lequel il est basé pour donner un contexte à ses instructions. Impossible d’écrire du code s’il n’a pas de sens ou s’il utilise des paramètres qu’il ne prend pas en charge. De même, il ne peut probablement gérer que quelques paramètres dans une seule requête ; Une séquence d’actions plus complexe nécessitant des dizaines de paramètres n’est tout simplement pas possible. Il y a aussi des soucis de sécurité : programmer un robot pour qu’il écrive son propre code, c’est un peu comme Skynet. S’il pense que la meilleure façon d’accomplir une tâche est de se retourner rapidement avec son bras tendu et que quelqu’un se trouve à proximité, quelqu’un pourrait se blesser.

Pourtant, il s’agit d’une étude incroyablement passionnante. L’une des tâches les plus difficiles avec les robots est de généraliser leur comportement entraîné. Programmer un robot pour jouer au tennis de table ne le rend pas capable de jouer à d’autres jeux comme le baseball ou le tennis. Bien que CaP soit encore à des kilomètres d’applications aussi vastes dans le monde réel, il permet à un robot d’effectuer un large éventail de tâches robotiques complexes sans formation spécifique à la tâche. C’est un grand pas vers la capacité d’apprendre un jour à un robot capable de jouer à un jeu comment jouer à un autre sans avoir à tout décomposer en un nouveau code écrit par l’homme.

Leave a Reply

Your email address will not be published. Required fields are marked *