9 points par bangdori1 9 일 전 | Aucun commentaire pour le moment. | Partager sur WhatsApp

En exploitant un outil interne de revue IA, voici le partage du processus suivi pour mesurer quantitativement la qualité et l’améliorer afin de répondre aux questions : « Peut-on faire confiance aux revues IA ? » et « Vérifient-elles vraiment bien les choses ? »

Contexte

  • Le code généré par IA présente 1,7 fois plus de problèmes par PR que le code humain, et 75 % plus d’erreurs de logique (CodeRabbit)
  • Après un incident causé par du code IA, Amazon a rendu obligatoire l’approbation des PR par un senior, et Shopify interdit le merge automatique des PR IA
  • Les revues IA ont été introduites dans ce contexte comme un moyen de validation pour détecter plus tôt les problèmes et erreurs
  • Mais comme la revue IA elle-même est non déterministe, il faut d’abord mesurer si « ce moyen de validation valide réellement bien »

Construction d’un benchmark interne

  • Remonter des PR de hotfix vers les PR d’origine pour mesurer si « au moment de la PR d’origine, la revue IA aurait pu détecter ce bug »
  • N’inclure que les cas pouvant être jugés à partir du seul diff de PR, et exclure ceux nécessitant un contexte externe
  • Notation via GPT-4o mini en mode LLM-as-a-Judge. Même si la valeur absolue est imprécise, cela suffit pour des comparaisons relatives
  • Premier score : 33. L’impression de « bien faire le travail » n’était qu’une illusion due à une poignée de cas de réussite

Échec 1 (orchestration de sous-agents)

  • Tentative d’une architecture où des sous-agents spécialisés par domaine sont pilotés par un agent principal
  • Résultat : taux de détection en baisse, coût multiplié par 1,5 à 3
  • Trois causes
    • Perte d’information due à la compression du contexte
    • Réduction du champ de vision à cause d’un périmètre d’attention trop limité
    • Angle mort sur les responsabilités transverses entre domaines

Échec 2 (contamination du benchmark)

  • En automatisant l’ajustement des prompts en boucle, cela a convergé vers une liste d’instructions du type « vérifier la division par zéro »
  • SWE-bench est lui aussi déjà contaminé
  • Confirmation qu’un benchmark externe ne permet pas de fonder solidement le choix d’un modèle

Nouveau métrique (Adoption Rate)

  • adopted : la revue a effectivement conduit à une modification du code
  • engaged : pas de modification, mais interaction via une réponse en commentaire (reconnaissance de la valeur de validation croisée)
  • noised : ni modification ni réponse
  • Méthode d’évaluation : comparaison entre le commit SHA au moment de la revue et le SHA au moment du merge, avec classification en adopted s’il y a une modification dans les ±3 lignes autour de la ligne commentée

A/B entre Opus 4.6 et GPT-5.2 Codex

  • Répartition des modèles selon la parité du numéro de PR, comparaison sur environ 100 PR
  • Opus 4.6 : rapide et créatif, mais manque de rigueur, approuve facilement
  • GPT-5.2 Codex : plus lent mais plus rigoureux, et formule encore des remarques utiles même au moment d’une nouvelle demande de revue
  • Après passage fixe à Codex, le taux hebdomadaire de prise en compte a atteint un pic de 60 %

Trois mesures qui ont amélioré le taux de prise en compte

  • Question : formuler en question au lieu d’une remarque quand le modèle n’est pas certain
  • Sections Intent/Decisions dans le modèle de PR
    • Intent : insertion, via la compétence create-pr, de réponses à la question « pourquoi est-ce nécessaire ? »
    • Decisions : extraction automatique des décisions prises dans la session de conversation via le hook Claude Stop
    • Baisse d’environ 29 % des faux positifs dus au manque de contexte côté reviewer
  • Résolution automatique des threads : l’IA ferme elle-même le thread lorsqu’elle confirme que la revue a été prise en compte

Résultats

  • Taux mensuel de prise en compte de 63 % atteint (au 2026-04-17)
  • Toutes les actions étant pilotées par les données, il devient aussi possible de décider des prochaines expérimentations sur une base solide
  • Il faut toutefois rester vigilant : l’Adoption Rate non plus ne garantit pas que « adopté = correct », et ce métrique peut lui aussi être contaminé

Aucun commentaire pour le moment.

Aucun commentaire pour le moment.