Dégradation du contexte (Context Rot & Attention Decay)
Baisse systémique de la précision, du respect des instructions et de la cohérence logique des LLM à mesure que le bruit dialogique, les brouillons de code obsolètes et les sorties du compilateur s'accumulent dans la fenêtre contextuelle.
1. Vue d’ensemble du concept et problème systémique
L’émergence de modèles dotés de fenêtres contextuelles géantes (Claude 3.7 avec 200K, Gemini 2.5 avec plus d’un million de tokens) a engendré une illusion dangereuse chez les développeurs : l’idée qu’il est désormais possible de maintenir un seul chat indéfiniment, en y déversant des mégaoctets de logs, des fichiers complets et des brouillons de code.
En pratique, après 15 à 20 étapes de travail autonome, la dégradation rapide du comportement de l’agent s’amorce :
- Amnésie des règles : L’agent oublie soudainement l’interdiction d’utiliser
anyou commence à renvoyer des noms de fonctions inventés, malgré des restrictions claires dans le prompt système. - Répétition cyclique des erreurs (Negative Reasoning Transfer) : En observant dans son propre historique cinq tentatives échouées pour exécuter une commande, le modèle considère le paradigme erroné comme la norme et propose à nouveau les mêmes variantes de code obsolètes.
- Catastrophe économique : L’utilisateur paie pour la longueur totale du contexte (par exemple, 120 000 tokens d’entrée) à chaque réplique, simplement pour corriger une virgule dans un fichier.
Context Rot (Dégradation du contexte) est le tueur silencieux du vibe coding et des workflows agentic, transformant un assistant intelligent en générateur désorienté de spaghetti code.
2. Taxonomie architecturale et modèle mental
La dégradation de l’attention au sein du réseau neuronal évolue selon trois axes principaux :
- 1. Entropie des poids d’attention (Attention Dilution) : Dans la formule mathématique du transformer $\text{Softmax}(QK^T / \sqrt{d})$, le dénominateur somme les exponentielles de tous les tokens du contexte. Lorsque le nombre de tokens secondaires passe de 2 000 à 100 000, le poids d’attention attribué aux instructions système critiques se dilue de manière exponentielle.
- 2. Effet « Lost-in-the-Middle » : L’attention se répartit selon une courbe en U. Les informations situées entre 20 % et 80 % de la profondeur du contexte subissent le taux le plus élevé de distorsions et d’hallucinations.
- 3. Empoisonnement du contexte par les erreurs (Feedback Pollution) : Chaque sortie échouée du linter, erreur 404 ou bloc de code commenté devient partie intégrante de la distribution d’apprentissage pour la génération du token suivant. Le modèle commence inconsciemment à générer du code dans le style de ses propres tentatives infructueuses.
3. Pipeline technique et mécanique interne
Le cycle de vie de la dégradation du contexte et les contre-mesures :
- Inception & High Fidelity (Phase de démarrage propre, étapes 1–5) : Le contexte ne contient que les règles système pures et la tâche. La précision d’exécution est maximale, le modèle respecte strictement la structure.
- Accumulation & Intermediate Noise (Phase d’accumulation, étapes 6–15) :
Des stacktraces, des sorties
git statuset de longues réponses JSON apparaissent dans le contexte. Une dispersion initiale de l’attention se produit. - Attention Saturation & Drift (Phase de dégradation, étapes 16+) : Le modèle commence à perdre le fil du raisonnement, change de style de nommage, propose des bibliothèques obsolètes et répète les hallucinations précédentes.
- Compaction & Thread Reset (Protection ingénierie) :
- Rolling Compaction : Réduction automatique des anciens messages en un digest de 3 paragraphes.
- Clean Forking : Création d’une nouvelle session avec transfert uniquement de l’état final (Final Diff).
4. Scénarios d’ingénierie pratiques en production
01. Discipline des sessions dans Claude Code et Cursor
Les développeurs expérimentés ne maintiennent jamais un seul chat au-delà d’une étape logique. Une fois le module d’authentification écrit et testé, la session est fermée. Un nouveau chat pour le module de facturation est ouvert sur une base vierge, avec ajout de références aux fichiers fraîchement créés.
02. Assainissement strict de la sortie terminal (Stdout Truncation)
Lorsque l’agent lance une commande de build ou des tests, le runtime intercepte la sortie. Si npm run build génère 2000 lignes de logs, l’agent ne reçoit que les 20 dernières lignes contenant le texte de l’erreur réelle, évitant ainsi l’encombrement immédiat du contexte par le bruit.
03. Pipelines à deux étages dans RAG
Avant d’ajouter les pages web trouvées dans le prompt du générateur, elles passent obligatoirement par un stripper HTML-to-Markdown et un filtre de pertinence. Seuls les faits utiles sont injectés dans le contexte, sans barres de navigation ni footers de site.
5. Pièges, erreurs courantes et sécurité
- Piège des coûts irrécupérables (Sunk Cost Fallacy) : L’utilisateur continue de convaincre l’agent dans le même long chat : « Non, tu as encore oublié l’import ! Je te l’ai dit il y a 10 messages ! ». Il est plus simple d’appuyer sur
/clearou d’ouvrir un nouveau thread. - Entités zombies (Ghost Variables) : L’agent fait référence à des variables ou fonctions qu’il a créées à l’étape 3, mais que vous avez supprimées du code à l’étape 8, car elles persistent toujours dans l’historique de la conversation.
- Gaspillage financier incontrôlé : Travailler dans un contexte « périmé » de 150K tokens brûle le budget mensuel du développeur en une heure, sans aucun bénéfice pour le produit.
FAQ: Dégradation du contexte (Context Rot & Attention Decay)
Termes associés
Fenêtre de contexte (Context Window)
Volume maximal de tokens qu'un modèle linguistique peut maintenir simultanément dans le mécanisme d'auto-attention et la mémoire du cache KV lors du calcul d'une requête d'inférence.
Vibecoding
Nouveau paradigme d'ingénierie logicielle où l'humain agit en tant qu'architecte et vérificateur des intentions, tandis que les agents IA réalisent de manière autonome la syntaxe, les tests, la compilation et le débogage.
Tâches atomiques (Décomposition atomique des tâches)
Pratique d'ingénierie consistant à décomposer les exigences système complexes en unités de travail minimales, autonomes et déterministes, afin de minimiser la charge cognitive humaine et le risque de dégradation du contexte dans les LLM.
Hallucinations & Confabulations
Génération par un modèle linguistique d'informations factuellement fausses, inventées ou inexistantes (bibliothèques, méthodes API, citations), exprimées avec une forte probabilité de certitude.