En bref
Agent0 (Xia et al., 2025) est un framework d’entraînement autonome pour agents LLM : deux agents co-évoluent depuis le même modèle de base sans jamais utiliser de données annotées par des humains. Un agent “curriculum” génère des problèmes de plus en plus difficiles ; un agent “executor” apprend à les résoudre avec un interpréteur de code Python. Sur le modèle Qwen3-8B-Base, Agent0 obtient +18 % en raisonnement mathématique et +24 % en raisonnement général par rapport au modèle de base, en surpassant plusieurs méthodes concurrentes.
En clair : imaginez un coach d’échecs et un élève qui partagent le même cerveau de départ. Le coach invente des positions de plus en plus tordues, l’élève s’entraîne à les résoudre avec un boulier (l’interpréteur Python). Au fil des parties, le coach grimpe en difficulté pour rester juste au-dessus du niveau de l’élève — pas trop facile, pas impossible. Aucun maître humain n’a posé de problème : le couple s’élève seul.
Le problème que ça résout
L’entraînement classique d’agents LLM par reinforcement learning (RLHF, RLVR) dépend de données annotées à grande échelle : coûteuses, lentes à produire, et bornées par ce que des humains savent déjà décrire. Les approches d’auto-amélioration existantes contournent en partie cette contrainte, mais butent sur deux limites :
- Plafond de complexité : les tâches générées par le modèle dépassent rarement sa propre capacité actuelle — le curriculum stagne.
- Interactions à tour unique : la plupart des méthodes ne capturent pas la nature multi-étapes des problèmes réels.
Agent0 attaque les deux problèmes simultanément via une co-évolution symbiotique et l’intégration d’outils externes.
Architecture : deux agents, une boucle
Les deux agents sont initialisés depuis le même LLM de base (πbase). Ils partagent ensuite une boucle itérative :
L’agent curriculum
Son rôle : générer des problèmes qui se situent exactement à la frontière des capacités actuelles de l’executor. Il est entraîné par GRPO avec un signal de récompense composite :
- Récompense d’incertitude (Runc) : maximisée quand l’executor répond correctement à ~50 % des tentatives — ni trop facile ni impossible.
- Récompense d’usage outil (Rtool) : proportionnelle au nombre d’appels à l’interpréteur dans les réponses de l’executor — incite à générer des tâches nécessitant du code.
- Pénalité de répétition (Rrep) : réduit la récompense si les tâches générées dans le batch sont trop similaires entre elles (mesurée par BLEU).
L’agent executor
Son rôle : résoudre les problèmes générés. Il dispose d’un interpréteur Python en bac à sable : il peut écrire du code, recevoir le résultat d’exécution, corriger, et itérer avant de donner sa réponse finale.
L’entraînement de l’executor repose sur ADPO (Ambiguity-Dynamic Policy Optimization), une variante de GRPO conçue pour le cas où les pseudo-labels viennent du vote majoritaire — donc potentiellement bruités :
- Advantage scaling ambiguïté : on pondère le gradient à la baisse pour les tâches où le vote est le plus incertain (pseudo-label peu fiable).
- Trust region dynamique : pour les tâches ambiguës, le plafond de clipping est assoupli, laissant des mises à jour plus larges explorer des solutions hors-distribution.
Le dataset filtré
Après chaque mise à jour du curriculum, l’executor génère k=10 réponses par tâche candidate. Seules les tâches dont le score de self-consistency (proportion de réponses concordantes) tombe dans la fenêtre [0,25 ; 0,75] sont retenues pour l’entraînement — ni triviales ni insolubles.
En clair : la mécanique tient sur trois règles simples. Le coach invente des problèmes “à la frontière” (l’élève doit réussir une fois sur deux). Le coach gagne plus de points si ses problèmes obligent l’élève à coder. Et le coach perd des points si ses problèmes se ressemblent trop entre eux. Ces trois signaux suffisent à produire une difficulté qui monte sans plafonner.
Ce qui distingue Agent0 des autres approches sans données
| Méthode | Données externes | Outil | Multi-tour |
|---|---|---|---|
| R-Zero | Aucune | Non | Non |
| Absolute Zero | Aucune | Vérification uniquement | Non |
| SPIRAL | Aucune | Non | Oui (jeu à somme nulle) |
| Socratic-Zero | API externe (OpenAI) | Non | Oui |
| Agent0 | Aucune | Exécution + curriculum | Oui |
La différence clé avec Absolute Zero (qui utilise aussi un exécuteur de code) : Agent0 récompense explicitement le curriculum pour générer des tâches qui nécessitent l’outil, pas seulement pour vérifier les réponses avec lui. Sans cette récompense Rtool, les performances chutent de 7,2 % en moyenne selon l’ablation.
À ne pas confondre avec HyperAgents
HyperAgents (Darwin Gödel Machine) travaille sur le méta-niveau d’amélioration : l’agent peut modifier la façon dont il s’améliore lui-même, en modifiant son propre code d’amélioration de manière récursive. Le niveau d’abstraction est plus élevé, et la méthode suppose un agent déjà capable.
Agent0 travaille sur le bootstrapping : partir d’un LLM brut sans aucun entraînement spécialisé, et construire progressivement les capacités via un curriculum auto-généré. L’originalité est dans la co-évolution structurée et l’intégration de l’outil comme vecteur de progression — pas dans la récursivité méta-cognitive.
Les deux approches sont complémentaires : Agent0 traite “comment démarrer de zéro”, HyperAgents traite “comment aller plus loin une fois qu’on a déjà des capacités”.
Résultats empiriques
Sur Qwen3-8B-Base (3 itérations de co-évolution) :
- MATH : 78,0 → 82,4 (+4,4 pts)
- AIME25 : 16,7 → 24,8 (+8,1 pts)
- MMLU-Pro : 51,8 → 63,4 (+11,6 pts)
- BBEH : 8,6 → 13,7 (+5,1 pts)
La progression est monotone sur les trois itérations : l’agent curriculum génère des tâches de difficulté croissante mesurée objectivement (le taux de réussite d’un executor figé à l’itération 1 chute de 64 % à 51 % sur les datasets générés aux itérations 2 et 3). Le nombre moyen d’appels outil par tâche passe de 1,65 à 2,60 entre les itérations 1 et 3.
Les gains se transfèrent aux tâches générales non vues en entraînement (SuperGPQA, MMLU-Pro, BBEH), ce qui suggère que le raisonnement multi-étapes acquis sur les maths se généralise.
En clair : le coach et l’élève ne se contentent pas de progresser — ils inventent une école de plus en plus exigeante. Un examinateur extérieur (un agent figé à l’itération 1) chute de 64 % à 51 % de réussite quand on lui présente les problèmes des itérations suivantes. La difficulté monte vraiment, ce n’est pas un effet de score sur les mêmes tests.
Limites
- Domaine actuel : les évaluations portent exclusivement sur le raisonnement mathématique et académique. La généralisation à d’autres domaines (code, science, agentic tasks réelles) n’est pas démontrée.
- Validité des pseudo-labels : le vote majoritaire comme substitut aux labels humains introduit du bruit — ADPO en atténue l’impact mais ne l’élimine pas. Sur des tâches avec un espace de réponses large ou ambigu, la méthode pourrait renforcer des erreurs systématiques.
- Coût de co-évolution : chaque itération nécessite d’entraîner séquentiellement les deux agents. La complexité computationnelle est significativement supérieure à un entraînement standard.
- Juge externe : l’évaluation des réponses de l’executor utilise GPT-4o comme juge pour certains benchmarks — une dépendance externe que le framework d’entraînement lui-même évite, mais qui reste présente à l’évaluation [NON VÉRIFIÉ pour tous les benchmarks].
Ce qu’il faut retenir
- Agent0 co-évolue deux agents depuis un LLM brut sans aucune donnée annotée : un curriculum qui génère des tâches, un executor qui les résout avec un interpréteur Python.
- La clé n’est pas d’avoir un outil, mais de récompenser explicitement la génération de tâches qui nécessitent cet outil — ce qui distingue Agent0 de ses concurrents.
- ADPO remplace GRPO standard pour gérer le bruit des pseudo-labels issus du vote majoritaire.
- Les gains (+18 % maths, +24 % général sur Qwen3-8B) se maintiennent sur 3 itérations et se transfèrent à des tâches hors-distribution.
- La limite principale reste le domaine testé : uniquement le raisonnement formel, pas les tâches agentiques ouvertes.