EigenData: A Self-Evolving Multi-Agent Platform for Function-Calling Data Synthesis, Auditing, and Repair

Le papier présente EigenData, une plateforme multi-agents auto-évolutive qui automatise la synthèse, l'audit et la réparation des données d'appel de fonctions, permettant de corriger le benchmark BFCL-V3 et d'établir une évaluation axée sur le succès des tâches qui correspond mieux aux jugements humains.

Jiaao Chen, Jingyuan Qi, Mingye Gao, Wei-Chen Wang, Hanrui Wang, Di Jin

Publié Mon, 09 Ma
📖 5 min de lecture🧠 Analyse approfondie

Each language version is independently generated for its own context, not a direct translation.

Imaginez que vous voulez construire un robot très intelligent capable de réserver des billets d'avion, de gérer des commandes de restaurant ou de réparer des logiciels. Pour que ce robot apprenne à bien faire son travail, il a besoin de milliers d'exemples réels : des scénarios où il doit utiliser des outils, des bases de données pour vérifier les informations, et des conversations complètes avec des humains.

Le problème, c'est que créer ces exemples à la main est lent, cher et plein d'erreurs. C'est là qu'intervient EigenData, présenté dans cet article.

Voici une explication simple de ce projet, utilisant des analogies de la vie quotidienne.

🏗️ EigenData : L'Usine Autonome de "Leçons" pour Robots

Pensez à EigenData non pas comme un simple logiciel, mais comme une usine de formation ultra-sophistiquée et autonome. Au lieu d'avoir des humains qui écrivent manuellement chaque exercice pour le robot, cette usine s'organise elle-même pour créer, vérifier et réparer les cours.

L'usine est dirigée par un Chef d'Orchestre (appelé EigenCore) qui gère trois équipes spécialisées, un peu comme dans un grand restaurant :

1. Le Cuisinier de Données (DatabaseAgent)

  • Son rôle : Il prépare les ingrédients.
  • L'analogie : Imaginez que vous voulez apprendre à un robot à gérer un hôtel. Avant de lui donner des ordres, il faut créer un hôtel virtuel avec des chambres, des réservations, des prix, etc. Le DatabaseAgent construit cet hôtel numérique. Il s'assure que les prix sont réalistes, que les chambres ne sont pas surbookées et que tout est cohérent. Si le robot doit vérifier si une chambre est libre, il doit y avoir une chambre réelle (virtuelle) à vérifier !

2. Le Mécanicien de Code (CodingAgent)

  • Son rôle : Il construit les outils et les machines.
  • L'analogie : Une fois l'hôtel créé, il faut installer les téléphones, les systèmes de réservation et les clés électroniques. Le CodingAgent écrit le code qui permet au robot d'interagir avec l'hôtel. Mais il ne se contente pas d'écrire : il est un mécanicien perfectionniste. Il écrit le code, puis il lance des tests (comme des essais sur piste). Si un bouton "Réserver" ne fonctionne pas, il le répare, re-teste, et répète ce cycle jusqu'à ce que tout soit parfait. Il s'assure que les outils fonctionnent vraiment avant de les donner au robot.

3. Le Scénariste et Entraîneur (DataAgent)

  • Son rôle : Il crée les exercices et les conversations.
  • L'analogie : Maintenant que l'hôtel et les outils sont prêts, il faut entraîner le robot. Le DataAgent joue le rôle d'un scénariste et d'un coach. Il imagine des situations : "Un client fâché veut annuler sa réservation", "Un client veut changer de chambre". Il génère des milliers de conversations entre un client (simulé) et le robot.
  • La touche spéciale : Ce scénariste est "évoluant". Si le robot fait une erreur, le scénariste analyse pourquoi, améliore ses propres instructions (ses "prompts") et réessaie. Il apprend de ses propres erreurs pour créer des exercices de plus en plus difficiles et réalistes.

🔍 Le Cas Réel : Réparer le "Berkeley Function-Calling Leaderboard" (BFCL)

Pour prouver que leur usine fonctionne, les auteurs ont utilisé EigenData pour auditer et réparer un test très célèbre utilisé pour évaluer les robots intelligents (le BFCL-V3).

Le problème initial :
Imaginez que vous passez un examen de conduite, mais que les questions sont mal écrites, les panneaux de signalisation sont faux, et le correcteur note mal. C'est ce qui se passait avec ce test :

  • Parfois, la question demandait un nombre entier, mais la réponse attendue était un texte.
  • Parfois, le code du test contenait des bugs qui faisaient échouer le robot même s'il avait raison.
  • Parfois, la "bonne réponse" fournie par les créateurs du test était elle-même fausse.

L'intervention d'EigenData :
L'usine s'est mise au travail pour réparer ce test :

  1. Le Mécanicien a trouvé et réparé les bugs dans le code du test.
  2. Le Cuisinier a vérifié que les données de base (les "ingrédients" du test) étaient cohérentes.
  3. Le Scénariste a corrigé les mauvaises réponses et a créé de nouvelles règles de notation.

Le résultat surprenant :
Avant la réparation, le classement des robots (les modèles d'IA) était faussé. Certains robots semblaient excellents parce qu'ils savaient "tricher" avec les erreurs du test, tandis que d'autres, pourtant très intelligents, étaient pénalisés injustement.
Après la réparation par EigenData, le classement a changé ! Les robots qui avaient vraiment de bonnes capacités ont pris la tête, et ceux qui avaient de la chance grâce aux bugs du test sont descendus.

💡 La Leçon Principale

L'idée centrale de ce papier est simple : Pour avoir de bons robots, il faut d'abord avoir de bons exercices.

Si vous entraînez un élève avec des manuels remplis d'erreurs, il échouera à l'examen final, même s'il est intelligent. EigenData est une usine autonome qui s'assure que les manuels (les données), les outils (le code) et les examens (les évaluations) sont impeccables, cohérents et réalistes.

En résumé, EigenData ne se contente pas de générer des données ; il audit, répare et améliore tout l'écosystème nécessaire pour que l'intelligence artificielle apprenne vraiment à faire ce qu'on lui demande, sans se tromper à cause de bugs dans son manuel d'instructions.