Terme

Accumulation des erreurs d'un agent IA : pourquoi 95 % de réussite par étape ne suffisent pas

Mis à jour: · Skillaria.Top

L'accumulation des erreurs d'un agent IA (compounding error) est l'effet selon lequel la probabilité de réussite d'une longue tâche est égale au produit des probabilités de réussite de chaque étape. Avec 95 % de réussite par étape, une chaîne de 10 étapes aboutit dans environ 60 % des cas, et une chaîne de 20 étapes dans seulement 36 %. Le harnais combat ce phénomène en vérifiant chaque étape et en fixant l'état validé, pour que l'erreur ne se propage pas plus loin.

Qu'est-ce que l'accumulation des erreurs

Un agent ne résout pas une tâche en une seule action, mais en une chaîne : lire un fichier, modifier une fonction, lancer les tests, corriger un import. Si chaque étape est correcte avec une probabilité p, que les étapes sont indépendantes et qu'une erreur en casse la suite, la probabilité de réussite de toute la chaîne de n étapes vaut p à la puissance n. C'est ce qu'on appelle l'accumulation des erreurs d'un agent IA, en anglais compounding error.

L'intuition est trompeuse : 95 % par étape ressemble à une bonne fiabilité. Mais la puissance consomme vite cette marge.

Étapesp = 0,95p = 0,99
195 %99 %
10≈ 60 %≈ 90 %
20≈ 36 %≈ 82 %
50≈ 8 %≈ 61 %

Ce modèle est grossier : en pratique, les étapes ne sont pas tout à fait indépendantes, et certaines erreurs sont sans conséquence. Mais il indique correctement la tendance : plus une exécution autonome est longue sans contrôle, moins le résultat a de chances d'être juste.

Pourquoi les longues chaînes s'effondrent

Une erreur commise tôt ne reste pas en place. L'agent bâtit les modifications suivantes sur une base fausse, et au moment où quelque chose casse visiblement, une dizaine de couches de code reposent sur le bogue. Le pire est quand l'agent évalue lui-même le résultat : son jugement penche vers « tout va bien », si bien qu'un rapport « terminé, les tests passent » peut arriver alors que le code ne fonctionne qu'à moitié.

Ce que fait le harnais

On ne peut améliorer p que partiellement : le modèle ne deviendra pas infaillible. Le levier principal est d'empêcher l'erreur de passer à l'étape suivante. Le harnais ferme la boucle de rétroaction.

  • Un capteur après chaque étape. Une seule commande de vérification (par exemple make verify avec les tests et le linter) mesure le résultat honnêtement, au lieu de l'auto-évaluation de l'agent.
  • Un point de restauration. Une étape qui passe la vérification est enregistrée par un commit. La suite de la chaîne part alors d'un état validé, et le compteur d'erreurs repart en pratique de zéro.
  • Une correction minimale. Quand la vérification échoue, l'agent corrige la cause précise au lieu de tout réécrire : cela amortit les oscillations.
  • Des tâches courtes. Une tâche à la fois, de petites étapes, des vérifications fréquentes : au lieu de vingt étapes à l'aveugle, on obtient vingt chaînes d'une seule étape.

Dans Claude Code, on peut attacher la vérification à des hooks pour qu'elle se lance automatiquement, et non selon la bonne volonté du modèle.

En résumé

L'accumulation des erreurs d'un agent IA est une arithmétique simple : 0,95 à la puissance dix donne environ 0,60, à la puissance vingt environ 0,36. On la combat non pas avec un modèle « plus intelligent », mais avec le harnais : vérification de chaque étape, commit de l'état validé et tâches courtes. Le calcul de cette boucle et les lois qui la sous-tendent sont détaillés dans une leçon du cours.

Questions fréquentes

Cela signifie-t-il qu'un agent ne peut pas accomplir une tâche de 50 étapes ?

Sans contrôles intermédiaires, les chances sont effectivement faibles. Avec une vérification et un commit après chaque étape, la tâche devient une série de courtes chaînes, et le succès global ne dépend plus du produit de toutes les étapes.

Un modèle plus puissant aide-t-il ?

Oui : passer de 95 % à 99 % de réussite par étape fait monter le succès sur 20 étapes de 36 % à 82 %. Mais même 99 % sur 50 étapes ne donnent qu'environ 61 %, donc les contrôles restent indispensables.

Pourquoi l'agent est-il sûr de son résultat alors qu'il s'est trompé ?

Sans capteur externe, l'agent compare le résultat à sa propre attente, et non à la réalité. Sa confiance augmente indépendamment de la justesse du code.

Peut-on simplement demander à l'agent de se vérifier lui-même ?

Une consigne dans le prompt ne garantit pas son application. Il est plus fiable de rendre la vérification mécanique : une commande dédiée, un hook ou un contrôle dans la CI.

Apprenez ce sujet en vidéo

Ce sujet est traité en détail avec de la pratique dans le cours « Harness Engineering: инженерия надёжности AI-агентов ».

Voir le cours