


Pour les robots, La planification des tâches est un problème inévitable.
Si vous souhaitez accomplir une tâche du monde réel, vous devez d'abord savoir combien d'étapes sont nécessaires pour installer un éléphant dans le réfrigérateur.
Même la tâche relativement simple de lancer une pomme contient plusieurs sous-étapes Le robot doit d'abord observer la position de la pomme. Si ne voit pas la pomme, il doit continuer à regarder. , puis approchez-vous de la pomme , attrapez la pomme et trouvez et approchez-vous de la poubelle .
Si la poubelle est fermée , vous devez d'abord l'ouvrir , puis y jeter les pommes et fermer la poubelle .
Mais les détails spécifiques de mise en œuvre de chaque tâche ne peuvent pas tous être conçus par des humains. Comment générer des séquences d'action via une seule commande devient un problème difficile.
Utiliser la commande pour générer une séquence ? N'est-ce pas exactement le travail du Language Model ?
Dans le passé, les chercheurs ont utilisé de grands modèles de langage (LLM) pour évaluer le prochain espace d'action potentiel en fonction des instructions de tâche d'entrée, puis générer des séquences d'action. Les instructions sont décrites en langage naturel et ne contiennent pas d'informations de domaine supplémentaires.
Mais de telles méthodes doivent soit énumérer toutes les prochaines actions possibles pour la notation, soit le texte généré n'a aucune restriction de forme, qui peut contenir des actions qui sont impossibles pour un robot spécifique d'entreprendre dans l'environnement actuel.
Récemment, l'Université de Californie du Sud et NVIDIA ont lancé conjointement un nouveau modèle ProgPrompt, qui utilise également un modèle de langage pour effectuer la planification des tâches sur les instructions de saisie. Il contient une structure d'invite programmée, de sorte que le plan généré. peut être utilisé dans différentes situations. Il peut jouer un rôle dans l'environnement, des robots avec différentes capacités et différentes tâches.
Afin d'assurer la standardisation des tâches, les chercheurs utilisent générer du code de style python pour demander au modèle de langage quelles actions sont disponibles, quels objets se trouvent dans l'environnement et quels programmes sont exécutables.
Par exemple, saisir la commande "lancer la pomme" peut générer le programme suivant. Le modèle
ProgPrompt a atteint des performances sota sur des tâches virtuelles à domicile, et les chercheurs ont également déployé le modèle sur un bras robotique physique pour les tâches de bureau.
Modèle de langage fantastiqueAccomplir les tâches ménagères quotidiennes nécessite à la fois une compréhension sensée du monde et une connaissance de la situation de l'environnement actuel.
Afin de créer un plan de tâche de « préparation du dîner », les connaissances minimales que l'agent doit connaître comprennent : Fonction des objets, tels que les cuisinières et les micro-ondes, peuvent être utilisés pour le chauffage ; , avant d'ajouter des aliments Le four doit être préchauffé au préalable ; et les tâches de corrélation des objets et des actions, comme chauffer et trouver les ingrédients sont les premières actions liées au « dîner ».
Mais sansretour d'état, ce genre de raisonnement ne peut pas être réalisé.
L'agent doit savoiroù se trouve la nourriture dans l'environnement actuel, par exemple s'il y a du poisson dans le réfrigérateur ou s'il y a du poulet dans le réfrigérateur. Un grand modèle de langage autorégressif formé sur un grand corpus peut générer des séquences de texte sous condition d'invites de saisie, avec d'importantes capacités de généralisation multitâches. Par exemple, si vous saisissez « préparer le dîner », le modèle de langage peut générer des séquences ultérieures, comme ouvrir le réfrigérateur, ramasser le poulet, ramasser le soda, fermer le réfrigérateur, allumer l'interrupteur, etc. . La séquence de texte générée doit être mappée sur l'espace d'action de l'agent. Par exemple, l'instruction générée est « tendre la main et ramasser un pot de cornichons », et l'action exécutable correspondante peut être « ramasser le jar", puis le modèle calculera la valeur du score de probabilité de l'action. Mais en l'absence de retour environnemental, s'il n'y a pas de poulet dans le réfrigérateur et que vous choisissez quand même l'action « ramasser le poulet », la tâche échouera, car « préparer le dîner » ne contient aucune information sur le état du monde. Le modèle ProgPrompt exploite intelligemment les constructions du langage de programmation dans la planification des tâches, car les modèles de langage à grande échelle existants sont généralement pré-entraînés sur des corpus de didacticiels de programmation et de documents de code. ProgPrompt fournit au modèle de langage un en-tête de programme Pythonic comme invite, important l'espace d'action disponible, les paramètres attendus et les objets disponibles dans l'environnement. Ensuite définir des fonctions telles que make_dinner, throw_away_banana, etc. dont le corps est une séquence d'action qui opère sur l'objet, puis affirmer les prérequis prévus , comme avant d'essayer de ouvrez le réfrigérateur Incorporez les commentaires d'état dans l'environnement en restant près du réfrigérateur et en utilisant des actions de récupération en réponse aux échecs d'assertion. Le plus important est que le programme ProgPrompt comprend également des annotations écrites en langage naturel pour expliquer les objectifs de l'action, améliorant ainsi le taux de réussite de l'exécution des tâches du planificateur généré. Avec l'idée complète, le flux de travail global de ProgPrompt est clair, qui comprend principalement trois parties, Construction de fonctions Python, invites de langage de programmation construites, génération et exécution du plan de tâches. 1. Exprimez le plan du robot sous forme de fonction pythonique La fonction de planification comprend des appels API aux primitives d'action, résumant les actions et ajoutant des commentaires, ainsi que le suivi de l'assertion d'exécution. Chaque primitive d'action nécessite un objet comme paramètre. Par exemple, la tâche "Mettre le saumon au micro-ondes" inclut un appel à find(salmon), où find est une primitive d'action. Utilisez les commentaires dans le code pour fournir des résumés en langage naturel des séquences d'action ultérieures. Les commentaires aident à diviser les tâches de haut niveau en sous-tâches logiques, à savoir « attraper le saumon » et « mettre le saumon au micro-ondes ». Les annotations peuvent également permettre au modèle de langage de comprendre l'objectif actuel et de réduire la possibilité de résultats incohérents, incohérents ou répétés, semblable à une chaîne de penséegénérant des résultats intermédiaires. Les Assertions fournissent un mécanisme de rétroaction environnementale pour garantir que les conditions préalables sont vraies et mettre en œuvre la récupération des erreurs lorsqu'elles ne sont pas vraies. Par exemple, avant l'action de saisie, le plan affirme que l'agent s'est approché du saumon, sinon le plan affirme que l'agent s'est approché du saumon. agent L'action de recherche doit être exécutée en premier. 2. Construction d'une invite de langage de programmation l'invite doit fournir des informations sur l'environnement et les principales actions du modèle de langage, y compris des observations, des primitives d'action, des exemples, et génère une invite Pythonique pour le langage. Achèvement du modèle. Ensuite, le modèle de langage prédit Dans la tâche de passer le saumon au micro-ondes, la première étape que LLM peut générer et est raisonnable est de retirer le saumon, mais est responsable de L'agent exécutant le plan peut ne pas avoir une telle primitive d'action. Pour que le modèle de langage comprenne les primitives d'action de l'agent, importez-les via l'instruction d'importation dans l'invite, ce qui limite également la sortie aux fonctions disponibles dans l'environnement actuel. Pour modifier l'espace de comportement de l'agent, il vous suffit de mettre à jour la liste des fonctions importées. La variable objets fournit tous les objets disponibles dans l'environnement sous forme de liste de chaînes. prompt comprend également des plans de programme entièrement exécutables à titre d'exemples, chaque exemple de tâche montre comment effectuer une tâche donnée en utilisant les actions et les objectifs disponibles dans un environnement donné, tels que throw_away_lime 3. du plan de tâche Après une tâche donnée, le plan est complètement déduit par le modèle de langage basé sur l'invite ProgPrompt, puis le plan généré peut être exécuté sur l'agent virtuel ou le système de robot physique, un interprète est requis pour exécuter chaque commande d’action contre l’environnement. Pendant l'exécution, la vérification des assertions se produit en boucle fermée et fournit des commentaires basés sur l'état actuel de l'environnement. Dans la partie expérimentale, les chercheurs ont évalué la méthode sur la Plateforme de simulation Virtual Home (VH). Le statut de VH comprend un ensemble d'objets et d'attributs correspondants, tels que le saumon à l'intérieur du four à micro-ondes (in), ou à proximité (agent_close_to), etc. L'espace d'action comprend saisir, pousser, remettre, marcher, trouver, ouvrir, fermer, etc. Au final, 3 environnements VH ont été expérimentés, chaque environnement comprenait 115 objets différents. Les chercheurs ont créé un ensemble de données contenant 70 tâches ménagères, avec un haut niveau d'abstraction, et les commandes étaient toutes telles que "Microwave Salmon". , et créez une séquence d'action de vérité terrain pour cela. Après avoir évalué le programme généré sur la famille virtuelle, les indicateurs d'évaluation incluent le taux de réussite (SR), le rappel conditionnel cible (GCR) et l'exécutabilité (Exec). D'après les résultats, on peut voir que ProgPrompt est nettement meilleur que). la ligne de base et LangPrompt, le tableau montre également comment chaque fonctionnalité améliore les performances. Les chercheurs ont également mené des expériences dans le monde réel, en utilisant un robot panda Franka-Emika doté de griffes parallèles, et ont émis l'hypothèse qu'une stratégie de placement pourrait être obtenue. Cette stratégie prend en entrée deux nuages de points d'un objet cible et d'un conteneur cible, et effectue des opérations de sélection et de placement pour placer l'objet sur ou à l'intérieur du conteneur. L'implémentation du système introduit un modèle de détection d'objets à vocabulaire ouvert ViLD pour identifier et segmenter les objets dans la scène et créer une liste d'objets disponibles dans l'invite. Contrairement à l'environnement virtuel, ici la liste d'objets est une variable locale de chaque fonction de planification, ce qui permet plus de flexibilité pour s'adapter à de nouveaux objets. Le plan généré par le modèle de langage contient des appels de fonction sous la forme de grab et de putin. En raison des incertitudes du monde réel, l'option en boucle fermée basée sur les assertions n'a pas été implémentée dans la configuration expérimentale . On peut voir que dans la tâche de classification, le robot a pu identifier les bananes et les fraises comme des fruits et générer des étapes de planification pour les placer dans l'assiette et les bouteilles dans la boîte. ProgPrompt
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Introduction Supposons qu'il y ait un fermier qui observe quotidiennement les progrès des cultures dans plusieurs semaines. Il regarde les taux de croissance et commence à réfléchir à la hauteur de ses plantes de plus en plus dans quelques semaines. De th

L'IA souple - définie comme des systèmes d'IA conçus pour effectuer des tâches spécifiques et étroites en utilisant un raisonnement approximatif, une reconnaissance de motifs et une prise de décision flexible - cherche à imiter la pensée humaine en adoptant l'ambiguïté. Mais qu'est-ce que cela signifie pour les activités

La réponse est claire - tout comme le cloud computing nécessitait un changement vers des outils de sécurité natifs du cloud, l'IA exige une nouvelle race de solutions de sécurité conçues spécifiquement pour les besoins uniques de l'IA. La montée des leçons de cloud computing et de sécurité apprises Dans

Entrepreneurs et utilisant l'IA et l'IA génératrice pour améliorer leurs entreprises. Dans le même temps, il est important de se souvenir de l'IA génératrice, comme toutes les technologies, est un amplificateur - ce qui rend le grand grand et le médiocre, pire. Une étude rigoureuse en 2024 o

Déverrouiller la puissance des modèles d'intégration: une plongée profonde dans le nouveau cours d'Andrew Ng Imaginez un avenir où les machines comprennent et répondent à vos questions avec une précision parfaite. Ce n'est pas de la science-fiction; Grâce aux progrès de l'IA, cela devient un R

Modèles de grande langue (LLM) et le problème inévitable des hallucinations Vous avez probablement utilisé des modèles d'IA comme Chatgpt, Claude et Gemini. Ce sont tous des exemples de modèles de grande langue (LLMS), de puissants systèmes d'IA formés sur des ensembles de données de texte massifs pour

Des recherches récentes ont montré que les aperçus de l'IA peuvent entraîner une baisse énorme de 15 à 64% du trafic organique, basé sur l'industrie et le type de recherche. Ce changement radical fait que les spécialistes du marketing reconsidèrent toute leur stratégie concernant la visibilité numérique. Le nouveau

Un récent rapport de l'imagination du Future Center de l'Université d'Elon a interrogé près de 300 experts en technologie mondiale. Le rapport qui en résulte, «Être humain en 2035», a conclu que la plupart concernaient l'adoption d'approfondissement des systèmes d'IA sur T


Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Télécharger la version Mac de l'éditeur Atom
L'éditeur open source le plus populaire

SublimeText3 Linux nouvelle version
Dernière version de SublimeText3 Linux

Dreamweaver CS6
Outils de développement Web visuel

mPDF
mPDF est une bibliothèque PHP qui peut générer des fichiers PDF à partir de HTML encodé en UTF-8. L'auteur original, Ian Back, a écrit mPDF pour générer des fichiers PDF « à la volée » depuis son site Web et gérer différentes langues. Il est plus lent et produit des fichiers plus volumineux lors de l'utilisation de polices Unicode que les scripts originaux comme HTML2FPDF, mais prend en charge les styles CSS, etc. et présente de nombreuses améliorations. Prend en charge presque toutes les langues, y compris RTL (arabe et hébreu) et CJK (chinois, japonais et coréen). Prend en charge les éléments imbriqués au niveau du bloc (tels que P, DIV),

Adaptateur de serveur SAP NetWeaver pour Eclipse
Intégrez Eclipse au serveur d'applications SAP NetWeaver.