Catastrophic Backtracking
[AI]
(Résumé: Jean-Michel, CTO d’une jeune entreprise du numérique a décidé de remplacer l’équipe de développement de son prochain produit par une IA, et de nommer Jérémie, son Tech Lead le plus chevronné, Prompting Chief Officer. C’est aujourd’hui qu’a lieu la première démo auprès des sponsors. C’est Mathilda, CEO de la compagnie, qui se prête au jeu des premiers tests. L’ambiance est à son comble).
Mathilda : Qu’est-ce que je suis en train de regarder, là ?
Jean-Michel : C’est le formulaire de paramétrage des calculs de tracés.
Mathilda : Ça a l’air bien compliqué tous ces champs…
Jean-Michel : Pas pour l’IA. Imagine toi qu’il a fallu seulement 4 heures de travail pour générer toutes ces fonctionnalités.
Mathilda : Pas mal ! Alors allons-y pour les tests. Je rentre les caractéristiques ici, c’est ça ?
Jean-Michel : C’est ça.
Mathilda saisit une dizaines de paramètres. L’application entérine les entrées. Les contrôles contraignent la saisie. Le comportement est fluide, coloré, rassurant.
Mathilda : Et donc là si j’entre, par exemple XXXXXXXXXXXXXXXXXXXXXX dans la formule ?
Jean-Michel : Vas-y.
L’application : …
Mathilda : Il a validé ?
L’application : …
Jean-Michel : Laisse-lui un peu de temps. C’est un formulaire complexe.
L’application : …
Mathilda : Bon.
L’application : …
Mathilda : On dirait que ça ne marche pas. Je rafraîchis la page ?
Jean-Michel : Euh, non, attends encore un peu.
L’application : …
Mathilda : OK. Visiblement il reste du travail. On va s’arrêter là pour aujourd’hui.
Jean-Michel : On va regarder de quoi il en retourne et on te tient informée.
Trois heures plus tard, dans le bureau de Jean-Michel, débrief avec Jérémie, PCO de la compagnie.
JM : Alors qu’est-ce qui s’est passé ?
J : Le formulaire part en vrille à la validation, c’est dû au contrôle sur la formule.
JM : Pourquoi le contrôle sur la formule plante le formulaire ?
J : La formule saisie par Mathilda est, volontairement ou non, erronée.
JM : Oui mai pourquoi le contrôle ne le détecte pas au lieu de partir en vrille ?
J : L’expression régulière utilisée pour le contrôle provoque un retour arrière catastrophique.
JM : Un quoi ?
J : Catastrophic backtracking, regarde (Jérémie écrit l’E.R. au tableau) : (X+X+)+Y+
JM : C’est le contrôle de la formule, ça ?
J : Non. Ça devrait être (X+Z+)+Y+, et non pas (X+X+)+Y+
JM : Bon. Je te crois sur parole. D’où vient cette erreur ? C’est l’IA ?
J : Non, c’est une erreur de spécification dans ce qui a été donné à l’IA.
JM : Et personne n’a relu le code du formulaire ?
J : Je l’ai relu avec Clara, mais rapidement. C’est assez touffu, faut dire, le code généré par l’IA.
JM : Et personne n’a testé, évidemment ?
J : On a fait quelques tests, mais sur les valeurs nominales. Ça semblait marcher…
JM : Jérémie, on ne peut pas se contenter d’à peu près. “Ça semblait marcher” ça ne suffit pas !
J : J’entends.
JM : Et l’IA n’a rien remarqué de bizzare ?
J : J’avoue je ne lui pas posé la question.
(à suivre)
![]()