Quand ça plante, colle l’erreur brute dans l’agent (ne la résume pas)
Tu codes avec une IA. Ton programme plante. Et là, t’as le réflexe — on l’a tous eu — de te tourner vers le modèle et de lui écrire : « ça marche pas, j’ai une erreur avec mon prix ».
Arrête ça tout de suite.
Le gros bloc rouge que ton terminal vient de cracher, celui que tu trouves illisible et que tu veux résumer pour « aider » l’IA ? C’est exactement ce dont elle a besoin pour te débloquer.
Pas ta version. Le bloc complet, brut, copié-collé tel quel.
Je te montre pourquoi, et comment le faire proprement.
Le réflexe qui te coûte du temps
Quand on débute avec un assistant IA, on a tendance à le traiter comme un humain pressé : on lui mâche le travail. On lit l’erreur, on en garde « l’essentiel », et on lui résume la situation avec nos mots.
Le problème, c’est que cette traduction te fait perdre exactement l’information qui compte.
Une erreur brute, ce n’est pas du bruit. C’est une carte. Elle contient :
- le type d’erreur (
TypeError,KeyError,NullReferenceException…) — qui dit quelle catégorie de problème tu as ; - le message exact — souvent la moitié de la réponse est déjà là ;
- la pile d’appels (stack trace) — la liste des fonctions traversées, avec le fichier et le numéro de ligne précis où ça a cassé ;
- les valeurs en jeu, parfois, quand le langage est bavard.
Quand tu résumes par « ça plante sur mon prix », tu jettes tout ça. L’IA n’a plus de ligne, plus de type, plus de pile. Elle devine. Et une IA qui devine, ça hallucine une cause plausible mais fausse — et toi tu pars corriger au mauvais endroit.
Ce qui se passe quand tu colles le bloc complet
Prends un cas concret, celui de la vidéo. Un programme calcule un total et plante. La version résumée, ce serait : « mon calcul de prix marche pas ». Bonne chance.
La version brute, c’est ça :
Traceback (most recent call last):
File "panier.py", line 42, in calculer_total
total += article["prix"]
TypeError: unsupported operand type(s) for +=: 'int' and 'str'
Là, l’IA n’a plus rien à deviner. Elle lit line 42, elle lit 'int' and 'str', et elle
remonte à la source en une étape : ton prix est resté en texte ("19.99") au lieu d’être un nombre (19.99). Tu essaies d’additionner un mot et un chiffre. Elle te propose la conversion, et ça corrige enfin — du premier coup.
La différence n’est pas une question d’intelligence du modèle. C’est une question de matière première. Tu lui as donné la source au lieu d’une rumeur.
Comment copier l’erreur brute (Windows et Mac)
L’erreur s’affiche presque toujours dans la sortie d’erreur (stderr), pas forcément là où tu regardes. Voici comment la récupérer en entier.
Dans un terminal (Windows — PowerShell ou Terminal) :
- Sélectionne tout le bloc rouge à la souris, puis
Ctrl + C(ou clic droit → Copier). - Pour ne rien manquer, tu peux aussi rediriger la sortie complète dans un fichier :
python panier.py 2>&1 | Tee-Object erreur.txt— tu copieras le fichier ensuite.
Dans un terminal (Mac — Terminal ou iTerm) :
- Sélectionne le bloc, puis
Cmd + C. - Version fichier :
python panier.py 2>&1 | tee erreur.txt.
Dans VS Code / un IDE :
- Le panneau Terminal (ou Debug Console) contient le bloc complet. Clic droit → Select All → Copy. Ne te limite pas à la dernière ligne : la première ligne du traceback et celles du milieu portent le chemin de fichier et la ligne exacte.
La règle : du premier Traceback / Error jusqu’à la fin du bloc. Tout. Pas la dernière ligne seule, pas un extrait « représentatif ».
Ce que ça change concrètement
En collant l’erreur brute plutôt qu’un résumé, tu gagnes trois choses :
- Moins d’allers-retours. L’IA localise la cause au lieu de te poser trois questions pour reconstituer ce que tu lui as caché.
- Moins d’hallucinations. Avec le type et la ligne, elle s’appuie sur des faits, pas sur une interprétation de ta phrase.
- Reproductibilité. Le même bloc, recollé plus tard ou dans une autre conversation, redonne le même diagnostic. Ton résumé, lui, change à chaque fois que tu le réécris.
C’est le genre de petit geste qui sépare quelqu’un qui « se bat avec l’IA » de quelqu’un qui travaille avec.
Le piège à éviter : les secrets
Une mise en garde, parce qu’elle est importante. Les erreurs affichent parfois plus que du code :
une URL de base de données, un jeton d’API, une variable d’environnement, un chemin qui contient ton nom d’utilisateur.
Avant de coller, passe le bloc en revue et masque ce qui est sensible :
- remplace une clé
sk-abc123...parsk-***; - remplace une chaîne de connexion
postgres://user:motdepasse@...parpostgres://***; - enlève les jetons, mots de passe et adresses internes.
Tu gardes la structure de l’erreur — type, ligne, pile — tu retires juste les valeurs secrètes. L’IA n’a pas besoin de ton mot de passe pour comprendre que ta connexion échoue.
En résumé
Le prochain coup que ça plante :
- ne résume pas l’erreur, ne la reformule pas ;
- copie le bloc complet, du premier
Error/Tracebackjusqu’au bout ; - masque les secrets avant de coller ;
- laisse l’IA lire la source — et regarde-la remonter au vrai problème.
Colle l’erreur brute, laisse-le lire la source. Essaie-le au prochain bug.
Cet article reprend, en version écrite, ma vidéo « colle l’erreur brute » publiée sur TikTok.
Si tu veux la version 30 secondes, elle est ici.
Tu veux d’autres réflexes concrets pour coder avec une IA ? Abonne-toi au blog et sur TikTok — je partage ce que j’utilise vraiment, ratés compris.