Making Failure Safe: A Constrained, Verifiable Agent Framework for Open-Web Data Collection
Cet article propose un cadre d'agent contraint et vérifiable qui remplace la génération de code non fiable en texte libre par des LLM par des configurations de collecteurs JSON typées et des pipelines d'exécution statiques afin de parvenir à une collecte de données sur le web ouvert déterministe, à bas coût et réutilisable.
Article original sous licence CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Ceci est une explication générée par l'IA de l'article ci-dessous. Elle n'a pas été rédigée ni approuvée par les auteurs. Pour une précision technique, consultez l'article original. Lire la clause de non-responsabilité complète
Imaginez que vous deviez embaucher un robot pour sortir et collecter des informations spécifiques sur des milliers de sites web différents chaque jour. Vous pourriez simplement dire au robot : « Va chercher les infos », en espérant qu'il comprenne comment faire. Mais comme l'explique l'article, cette approche de « foire d'empoigne » est comme envoyer un enfant dans une bibliothèque sans instructions ; il pourrait attraper les mauvais livres, trébucher sur des chaises ou revenir avec un mélange confus de pages.
Cet article propose une nouvelle façon de construire ces robots de collecte de données (appelés « agents ») qui rend l'échec sûr, prévisible et facile à corriger. Voici comment cela fonctionne, décomposé en concepts simples :
1. Le Problème : Le « Far West » du Web Scraping
Actuellement, si vous demandez à une IA d'écrire un code pour extraire les données d'un site web, elle essaie souvent d'écrire un tout nouveau script à partir de zéro à chaque fois.
- Le Problème : Les sites web sont désordonnés et changent souvent. Si l'IA se trompe sur l'emplacement d'une étiquette de prix sur une page, tout le script casse.
- Le Résultat : Vous obtenez des erreurs, des données brisées ou des scripts qui cessent de fonctionner dès qu'un site web met à jour sa mise en page. C'est comme essayer de construire une maison en devinant où placer chaque brique à chaque fois que vous en posez une.
2. La Solution : L'approche « Kit LEGO »
Au lieu de laisser l'IA écrire du code libre (comme écrire un roman), les auteurs la forcent à remplir un formulaire structuré (comme remplir une fiche d'instructions LEGO).
La Taxonomie (Les 6 types) : Le système demande d'abord : « Quel genre de tâche est-ce ? ». Il catégorise les tâches en six types spécifiques, comme un menu :
- Recherche (Search) : Trouver des liens basés sur des mots-clés.
- Liste (List) : Parcourir des pages d'articles (comme une archive de presse).
- Détail (Detail) : Lire le contenu complet d'une seule page.
- API : Demander directement des données à un ordinateur (comme commander à la carte).
- Interactif (Interactive) : Cliquer sur des boutons ou taper sur des pages dynamiques.
- Fichier (File) : Télécharger des PDF ou des fichiers Excel.
- Analogie : Au lieu de dire à un chef « fais à manger », vous lui dites « tu prépares une soupe », et il n'utilise que les outils et les recettes pour la soupe. Cela l'empêche d'essayer de faire un gâteau quand vous vouliez une soupe.
Les Contraintes (Les garde-fous) : L'IA n'est pas autorisée à inventer du nouveau code. Elle doit choisir dans une bibliothèque approuvée de « fonctions utilitaires » (outils pré-construits) et remplir les blancs d'un modèle.
- Analogie : Pensez à un jeu de « Mad Libs » où l'IA peut seulement remplir les espaces vides prévus, plutôt que d'écrire toute l'histoire elle-même. Cela garantit que la sortie est toujours dans un format compréhensible par l'ordinateur.
3. Le Processus : La boucle de « Test Drive »
Le framework ne lance pas le robot immédiatement. Il utilise une boucle stricte « Générer → Vérifier → Corriger » :
- Générer : L'IA crée un fichier de configuration (un plan JSON) basé sur la requête de l'utilisateur.
- Test Drive (Validation) : Avant de lancer la tâche complète, le système effectue un petit test peu coûteux sur seulement quelques pages.
- Le Contrôle Qualité (L'arbitre) : Un système basé sur des règles (et non une IA) vérifie les résultats. Il demande : « Avons-nous obtenu les bons champs ? Les données sont-elles vides ? Est-ce que ça a planté ? »
- Point crucial : Si le test échoue, le système ne dit pas simplement « réessaie ». Il crée une « liste noire » spécifique de ce qu'il ne faut pas faire (ex : « Ne pas chercher le prix dans le pied de page »).
- Corriger : L'IA réessaie, mais cette fois, elle est contrainte d'éviter les erreurs qu'elle vient de commettre.
- Passage à l'échelle : Ce n'est que lorsque le test drive réussit que le système lance la collecte complète.
4. Les Résultats : Vitesse vs Perfection
Les auteurs ont testé cela sur 138 tâches de collecte de données différentes. Voici ce qu'ils ont trouvé :
- Qualité en un coup (One-Shot) : Si vous voulez juste récupérer des données une seule fois maintenant, les autres méthodes qui laissent l'IA écrire du code libre peuvent obtenir des résultats légèrement meilleurs immédiatement (environ 70 % de succès contre 50 % pour cette méthode).
- Le Compromis : Cependant, la méthode des auteurs est beaucoup plus rapide et beaucoup moins chère à exécuter de manière répétée.
- La Magie : Une fois le plan établi, la collecte réelle s'exécute sans utiliser aucune IA. Elle exécute simplement le plan pré-établi.
- Analogie : Les autres méthodes sont comme embaucher un traducteur humain pour chaque phrase lue. Cette méthode est comme embaucher un traducteur une fois pour écrire un dictionnaire, puis utiliser ce dictionnaire pour toujours.
- Fiabilité : Lorsque le système échouait, il ne tombait pas en panne silencieusement. Il produisait un rapport d'erreur clair, permettant à la boucle de « Correction » de rectifier le tir. Dans leurs tests, cette boucle de rétroaction a transformé un système défaillant (0 % de taux de réussite) en un système parfait (100 % de taux de réussite).
Résumé
Cet article soutient que nous ne devrions pas essayer de rendre l'IA « parfaite » pour deviner comment extraire des données du web. Au lieu de cela, nous devrions contraindre l'IA à suivre des règles strictes, à utiliser des outils pré-construits et à effectuer un « test drive » avant le travail réel.
En échangeant un peu de perfection initiale contre un système vérifiable, réutilisable et peu coûteux, ce framework rend la collecte automatisée de données suffisamment fiable pour un usage programmé dans le monde réel (comme rassembler des actualités ou des données gouvernementales chaque matin) sans avoir besoin d'un humain pour corriger le code à chaque fois qu'un site web change.
Noyé(e) sous les articles dans votre domaine ?
Recevez des digests quotidiens des articles les plus récents correspondant à vos mots-clés de recherche — avec des résumés techniques, dans votre langue.