Taux de réussite de 91 %. Gate au vert. Déployé. La pire régression de tous les temps.
Nous avons atteint un taux de réussite de 91 % sur un test de classification d'intentions. Le seuil était de 90 %. Nous avons franchi la barre. Nous avons déployé le code.
C'était notre pire régression du trimestre.
Le problème venait de nos calculs. Notre score d'évaluation est resté à 96 % ou 97 % pendant des semaines. Puis, un changement a cassé une tranche spécifique : les demandes de remboursement ambiguës. Cette tranche est passée de 98 % à 74 %.
Cette tranche représente 4 % de notre trafic total. Comme nous nous basions sur la moyenne, le score total n'est tombé qu'à 91 %. La validation est restée au vert.
Les agrégats cachent les échecs dans le bruit.
Les utilisateurs de cette tranche n'ont pas vu 91 %. Ils ont vu 74 %. Un seuil statique vous indique si l'ensemble du système s'effondre. Il ne vous indique pas si une partie de votre système est en train de mourir. Si 96 tranches vont bien et qu'une seule plante, une moyenne élevée masque le crash. Vous découvrez l'erreur via les tickets de support au lieu de vos outils de test.
Nous avons changé de stratégie. Nous avons cessé de valider sur des chiffres absolus. Désormais, nous validons par rapport à la dernière exécution réussie.
Nous utilisons deux règles. Les deux doivent être respectées :
- Aucune tranche individuelle ne doit chuter de plus de 3 points par rapport à la référence.
- L'agrégat total ne doit pas chuter de plus de 1,5 point par rapport à la référence.
Lors de notre récent échec, la tranche des remboursements a chuté de 24 points. La première règle l'aurait détectée immédiatement.
Attention aux pièges de la validation par delta. Si votre référence se met à jour à chaque exécution, vous risquez de dériver vers l'échec. Une chute de 0,5 point chaque jour passe tous les tests. Vous glissez lentement vers un produit de mauvaise qualité.
Suivez ces étapes pour corriger vos tests :
- Ne mettez à jour votre référence que lorsque votre branche principale est au vert.
- Exigez qu'un humain approuve toute baisse intentionnelle des scores.
- Votre référence doit être un enregistrement de ce qui fonctionne, pas seulement de ce qui s'est passé en dernier.
- Vérifiez la variance de vos 5 dernières exécutions au vert. Si une tranche fluctue plus que votre seuil, votre seuil est du bruit.
- Testez votre plus petite tranche. Demandez-vous jusqu'à quel point elle peut chuter avant que l'agrégat ne s'en aperçoive. Si la réponse est un nombre élevé, votre agrégat cache des erreurs.
Communauté d'apprentissage optionnelle : https://t.me/GyaanSetuAi
