Simple Science

La science de pointe expliquée simplement

# Informatique# Calcul et langage

Avancées dans les agents de navigation web utilisant des LLM

Un nouvel agent de navigation web basé sur le modèle ChatGLM3-6B améliore les performances des tâches.

― 13 min lire


Nouveau Agent deNouveau Agent deNavigation Web IA Dévoiléde la navigation sur le web.Un agent de pointe s'attaque aux défis
Table des matières

Les grands modèles de langage (LLMs) sont devenus des outils clés pour beaucoup de tâches impliquant des agents intelligents, surtout dans la navigation sur le web. Pourtant, les agents actuels rencontrent des défis quand ils interagissent avec des sites web réels. Ça vient de plusieurs facteurs, comme la large gamme d’actions possibles sur les Pages web, la masse énorme de contenu HTML qui dépasse ce que les modèles peuvent traiter, et la prise de décision compliquée nécessaire pour des tâches web à domaine ouvert.

Pour résoudre ces problèmes, on a développé un nouvel agent de navigation web automatisé basé sur le modèle ChatGLM3-6B, qui surpasse le GPT-4 sur certaines tâches. Notre approche s’inspire de la façon dont les humains naviguent sur le web. On a créé un algorithme qui simplifie le contenu HTML tout en gardant l’information essentielle intacte. Ça aide le modèle à mieux comprendre les pages web.

On a aussi utilisé un mélange de méthodes humaines et machine pour générer des données de navigation web pour l’entraînement. Pour améliorer encore la capacité du modèle à comprendre les pages web, à réaliser des actions de navigateur et à décomposer des tâches, on a utilisé des techniques d’Apprentissage par renforcement et d’échantillonnage de rejet.

Pour les tests, on a mis en place un benchmark Bilingue composé de tâches de navigation web réelles. Nos évaluations ont montré que même si notre modèle s’est amélioré, il a encore des lacunes par rapport à la performance humaine sur des tâches réelles difficiles.

Défis Principaux

Manque d'Espace d'action Unifié

Il n’y a pas d’espace d’action universel qui couvre toutes les tâches nécessaires en utilisant des navigateurs sur différents sites web. Ce manque rend difficile pour le modèle de performer de manière cohérente.

Manque de Méthode de Simplification des Pages Web

La complexité et la diversité des pages web, combinées à un excès de texte, compliquent la tâche des LLMs pour saisir le contenu et exécuter les opérations correctes. Certaines pages peuvent contenir plus de 30 000 tokens de contenu, ce qui dépasse largement ce que les modèles actuels peuvent gérer.

Manque de Trajectoires d'Entraînement de Haute Qualité

Les trajectoires de haute qualité pour entraîner des agents web basés sur des LLM puissants sont rares. Les agents existants ont souvent du mal avec des inférences précises et l’auto-vérification pendant les tâches web. Une fois que ces agents se retrouvent coincés dans une boucle, ils ont du mal à résoudre les problèmes rapidement.

Développement de l'Agent de Navigation Web

Dans ce travail, on présente un agent de navigation de page web déployable basé sur le modèle ChatGLM3-6B. Cet agent vise à aborder de manière autonome des tâches réelles en naviguant et en opérant dans des navigateurs web comme le font les humains.

On a proposé plusieurs stratégies de données pour créer rapidement un grand ensemble de données d'entraînement fiable, ce qui est essentiel puisque les modèles de pointe ont souvent des difficultés avec l'annotation des données.

On a entraîné notre modèle en utilisant l’apprentissage supervisé, l’apprentissage par renforcement, et l’échantillonnage de rejet pour un apprentissage tout au long de la vie dans des environnements web spécifiques. Ça aide l’agent à devenir plus compétent au fil du temps dans des tâches spécifiques.

On a aussi développé une extension Chrome permettant aux utilisateurs de voir des exemples de notre agent en action. Nos expériences montrent que l’agent peut raisonner et réaliser des actions sur divers sites web pour compléter les tâches des utilisateurs avec précision, ce qui le rend utile pour des applications réelles.

En plus, on a créé un ensemble de données bilingue pour évaluer des tâches de navigation web en anglais et en chinois. C’est important puisque les sites web peuvent varier considérablement selon les régions.

Contributions

  1. On a conçu l’agent pour compléter efficacement les tâches de navigation web grâce à un mélange de techniques d’apprentissage qui améliorent sa compréhension du contenu web et des actions.
  2. On a construit un véritable ensemble de données d’opérations de navigation web avec environ 10 000 traces et créé un benchmark de navigation web bilingue.
  3. Nos expériences ont démontré que le modèle non seulement performe bien par rapport aux modèles avancés, mais atteint aussi un niveau utilisable pour les tâches web quotidiennes.

Architecture du Système

Notre système se compose de deux composants principaux : le cadre de navigation et l’agent modèle de langage. Le cadre de navigation organise le HTML et d’autres informations pour que le modèle de langage puisse prendre des décisions. Un programme automatisé exécute ensuite ces décisions.

L’agent modèle de langage apprend à partir de différentes sources de données et utilise l’apprentissage par renforcement pour améliorer ses capacités de navigation web.

Configuration du Problème

On voit les tâches de navigation web comme une séquence d’étapes de prise de décision. L’état inclut le statut actuel de la page web, comme le contenu HTML et l’URL. L’ensemble des actions contient toutes les opérations possibles, comme cliquer ou taper. Le processus continue jusqu'à ce que l'agent termine la tâche ou atteigne une limite prédéfinie d'interactions.

La prise de décision de l’agent est basée sur des informations historiques, les dernières actions effectuées, et le statut actuel de la page web.

Cadre

On traite les informations à l'aide d'une simplification HTML et d'un module OCR (reconnaissance optique de caractères). Cela donne une version simplifiée de la page web après avoir obtenu le contenu HTML et visuel. On identifie les éléments avec lesquels on peut interagir et fournit ces informations à l'agent.

L'agent commence à prédire des actions en combinant cette représentation avec des données supplémentaires. Une fois qu’il détermine une action, un programme automatisé exécute l'action. Ce cycle continue jusqu'à ce que la tâche soit terminée.

Espace d'Observation

Pour que le modèle comprenne et opère efficacement sur les pages web, il est crucial d’avoir un espace d'observation bien défini. Cet espace standardise diverses sources de données dans un format uniforme.

On a identifié quatre indicateurs clés pour les tâches de navigation web : description de la tâche, HTML simplifié, position actuelle, et dossiers d'opérations précédentes.

HTML

Les pages web contiennent souvent beaucoup d'informations inutiles, donc on simplifie le HTML avant de l'introduire dans le modèle. L'objectif est d'extraire les informations vitales et de garder la structure essentielle intacte pour un traitement plus facile par le modèle.

Position Actuelle

Fournir au modèle des informations sur la position de la fenêtre et la taille de la page web aide à améliorer sa compréhension de ce qui est visible et où cela se trouve sur la page.

Actions Précédentes

Donner à l'agent des détails explicites sur les opérations passées l'aide à éviter de répéter des actions infructueuses et améliore son adaptabilité dans des scénarios de navigation web complexes.

Espace d'Action

Notre focus est sur les opérations possibles lors de la construction de l'espace d'action pour l'agent modèle de langage. On a défini un espace d'action auto-consistant qui inclut divers appels opérationnels nécessaires pour interagir avec le navigateur web.

Préparation des Données

À cause de la disponibilité limitée de données de navigation web de haute qualité provenant de vrais utilisateurs, on a visé à créer un ensemble de données d'entraînement. Cependant, ce processus a rencontré plusieurs défis :

  • Collecte de Tâches : Acquérir une large gamme de requêtes de tâches d’utilisateurs réels sur plusieurs sites web est difficile.
  • Confidentialité et Sécurité : Les règles de confidentialité compliquent l'acquisition de séquences d'opérations directes des utilisateurs.
  • Annotation Objective : Rassembler les intentions des utilisateurs pour chaque étape de la tâche est laborieux et impraticable.
  • Limitations des Modèles : Les modèles actuels ont du mal avec des tâches complexes sur des sites variés, limitant la collecte de données automatisée.

Pour relever ces défis, on propose une méthode hybride de construction de données humain-AI.

Reconnaissance Web

Le but ici est d'aider le modèle à comprendre les structures des pages web et les rôles des différents éléments web. On commence par collecter des URLs de sites populaires et utilise un parseur HTML pour identifier les composants cliquables et les tailles pertinentes.

On génère ensuite des tâches qui aident le modèle à reconnaître les éléments web et leurs fonctions.

Opération de Tâches Simples

Pour cet ensemble de données, on souhaite entraîner le modèle à réaliser des opérations basiques sur les pages web. On rassemble divers sites web et décompose les tâches par type d'opération pour s'assurer que toutes les fonctionnalités de base sont couvertes.

Pour construire l'ensemble de données, on utilise des règles au lieu de se fier uniquement aux techniques de génération de modèles, garantissant que les tâches générées sont exécutables.

Construction d'Opérations de Tâches Complexes

Pour des tâches web complexes, on a développé un ensemble de données permettant au modèle de mieux planifier et raisonner. Chaque entrée consiste en une tâche complexe réelle et la séquence d'actions correspondante nécessaire pour l'accomplir.

On a initialement conçu un ensemble de tâches complexes et sélectionné celles qui étaient réalisables après une évaluation manuelle. Pour capturer les actions, on a utilisé un plug-in de navigateur pour enregistrer les opérations pendant l’exécution des tâches.

Procédure d'Entraînement

On entraîne le modèle en trois étapes principales :

Étape 1 : Apprentissage par Curriculum

Dans la première étape, on mélange nos données construites pour aider le modèle à apprendre à interpréter les pages web et à exécuter des opérations basiques avec précision. Commencer par des tâches plus simples et progresser vers des tâches plus complexes s'aligne avec la façon dont les humains apprennent et s'est avéré efficace pour l'entraînement du modèle.

Étape 2 : Apprentissage par Renforcement

Après l'entraînement initial, le modèle montre une certaine capacité à opérer le navigateur. Cependant, il oublie parfois l'état de la page web et les actions précédentes, ce qui entraîne des erreurs. On aborde cela par un apprentissage par renforcement d’auto-échantillonnage et conserve les échantillons qui montrent des erreurs pour un entraînement supplémentaire.

Étape 3 : Affinage par Échantillonnage de Rejet

Dans cette étape, on se concentre sur l'optimisation du modèle pour des environnements web spécifiques. On mène des expériences dans des paramètres contrôlés pour s’assurer que notre modèle peut apprendre efficacement de ses erreurs et développer ses compétences dans des contextes de navigation réels.

Évaluation de Performance

On a établi un benchmark bilingue pour évaluer la performance de notre agent sur différentes tâches en anglais et en chinois. De plus, on a effectué des tests extensifs sur divers benchmarks connus pour la navigation web.

On mesure la performance en utilisant le Taux de Réussite des Étapes (SSR) et on le compare à d'autres modèles de navigation web établis.

Résultats

Nos évaluations révèlent que notre modèle excelle à prédire des opérations courantes des utilisateurs et s'aligne étroitement avec les actions des utilisateurs. D'autres modèles qui manquent d'entraînement adéquat ont du mal à s'adapter efficacement aux scénarios réels.

Analyse des Erreurs

Bien que notre système fonctionne bien à travers diverses tâches, on a identifié des erreurs courantes lors de l’opération. Celles-ci se répartissent en catégories comme les hallucinations, la mauvaise reconnaissance graphique, la mauvaise interprétation du contexte de la tâche, et les interruptions dues aux pop-ups.

Distribution des Erreurs

Bien que moins fréquentes, ces erreurs sont importantes pour les améliorations en cours. En analysant ces erreurs, on peut cibler des domaines spécifiques qui nécessitent des ajustements.

Travaux Connus

Créer un agent de navigation web complet nécessite plusieurs composants, comme un modèle de langage pour la prise de décision et un parseur HTML pour comprendre l'environnement. Des critères d'évaluation efficaces sont également essentiels.

Modèles de Langage

Les LLM existants, comme GPT-4 et d'autres, ont montré leur force dans diverses tâches. Cependant, en raison des coûts, des modèles plus petits et open-source deviennent des choix préférés dans des scénarios spécifiques.

Benchmarks de Navigation Web

Plusieurs ensembles de données d'évaluation de navigation web fournissent des métriques qui aident à évaluer la performance des agents. Ces benchmarks vont de modèles simples qui vérifient des interactions web basiques à des évaluations plus complexes qui mesurent l'accomplissement de tâches réelles.

Agents pour l'Automatisation Web

Des initiatives passées ont combiné des LLMs avec des environnements web principalement pour le question-réponse. Cependant, les efforts récents se concentrent davantage sur l'exécution de tâches complexes et d'interactions.

Conclusion

En résumé, on a proposé un agent basé sur un modèle de langage avancé qui démontre de fortes performances dans diverses tâches de navigation web. En abordant les défis actuels rencontrés par les LLMs et en simplifiant les pages web, on améliore la compréhension et les capacités d'interaction du modèle.

On a utilisé une combinaison de techniques d'entraînement pour améliorer sa capacité à comprendre et à opérer dans des environnements web. De plus, le benchmark de navigation web bilingue que nous avons créé établit une base solide pour des recherches futures dans ce domaine.

Notre travail montre des avancées significatives dans l'utilisation des grands modèles de langage pour des agents intelligents capables de naviguer dans des environnements web complexes.

Source originale

Titre: AutoWebGLM: A Large Language Model-based Web Navigating Agent

Résumé: Large language models (LLMs) have fueled many intelligent web agents, but most existing ones perform far from satisfying in real-world web navigation tasks due to three factors: (1) the complexity of HTML text data (2) versatility of actions on webpages, and (3) task difficulty due to the open-domain nature of the web. In light of these challenges, we develop the open AutoWebGLM based on ChatGLM3-6B. AutoWebGLM can serve as a powerful automated web navigation agent that outperform GPT-4. Inspired by human browsing patterns, we first design an HTML simplification algorithm to represent webpages with vital information preserved succinctly. We then employ a hybrid human-AI method to build web browsing data for curriculum training. Finally, we bootstrap the model by reinforcement learning and rejection sampling to further facilitate webpage comprehension, browser operations, and efficient task decomposition by itself. For comprehensive evaluation, we establish a bilingual benchmark -- AutoWebBench -- for real-world web navigation tasks. We evaluate AutoWebGLM across diverse web navigation benchmarks, demonstrating its potential to tackle challenging tasks in real environments. Related code, model, and data are released at \url{https://github.com/THUDM/AutoWebGLM}.

Auteurs: Hanyu Lai, Xiao Liu, Iat Long Iong, Shuntian Yao, Yuxuan Chen, Pengbo Shen, Hao Yu, Hanchen Zhang, Xiaohan Zhang, Yuxiao Dong, Jie Tang

Dernière mise à jour: 2024-10-12 00:00:00

Langue: English

Source URL: https://arxiv.org/abs/2404.03648

Source PDF: https://arxiv.org/pdf/2404.03648

Licence: https://creativecommons.org/licenses/by/4.0/

Changements: Ce résumé a été créé avec l'aide de l'IA et peut contenir des inexactitudes. Pour obtenir des informations précises, veuillez vous référer aux documents sources originaux dont les liens figurent ici.

Merci à arxiv pour l'utilisation de son interopérabilité en libre accès.

Plus d'auteurs

Articles similaires