PromptQuorumPromptQuorum
Accueil/Prompt Engineering/Fenêtres de contexte expliquées : Pourquoi l'IA oublie (et comment y remédier)
Fundamentals

Fenêtres de contexte expliquées : Pourquoi l'IA oublie (et comment y remédier)

·11 min read·Par Hans Kuepper · Fondateur de PromptQuorum, outil de dispatch multi-modèle · PromptQuorum

Les LLM n'ont pas de mémoire à long terme — ils ne "voient" que une fenêtre glissante de tokens récents. Découvrez pourquoi l'IA oublie le contexte, comment structurer les prompts pour rester dans les limites, et comment gérer les fenêtres de contexte entre les modèles cloud et locaux.

Fenêtres de contexte expliquées : Pourquoi l'IA oublie

Les LLM n'ont pas de mémoire à long terme — ils ne "voient" qu'une fenêtre glissante de tokens récents, et tout ce qui se trouve en dehors de cette fenêtre est oublié ou comprimé. Cet article explique ce que cela signifie pour vos prompts et comment fonctionner à l'intérieur (et autour de) ces limites.

Points clés

  • Fenêtre de contexte = le nombre maximal de tokens qu'un modèle peut traiter à la fois ; une fois que vous le dépassez, le contenu plus ancien est tronqué ou résumé
  • Tokens ≈ 4 caractères en moyenne ; une fenêtre de contexte de 4k ≈ 3 000 mots de texte brut
  • Les modèles ne "se souviennent" pas des chats précédents — chaque interaction recommence à zéro dans sa fenêtre de contexte
  • La surcharge de contexte augmente les hallucinations car le modèle comble les lacunes par des suppositions plausibles lorsque les détails originaux disparaissent de la vue
  • La structure des prompts est plus importante que la chance : placez les instructions critiques en avant, évitez la répétition, résumez les longs échanges avant de progresser
  • Pour les LLM locaux, les fenêtres de contexte plus grandes exigent plus de RAM — un modèle de contexte 128k sur un modèle de 7B paramètres peut nécessiter 32 Go+ de RAM

Qu'est-ce qu'une fenêtre de contexte ?

Une fenêtre de contexte est la quantité maximale de texte (mesurée en tokens) qu'un LLM peut prendre en compte lors de la génération de sa prochaine sortie.

Pensez-y comme le "texte visible" du modèle à tout moment donné. Lorsque vous envoyez un message à GPT-4o avec une fenêtre de contexte de 128k tokens, le modèle peut "voir" les 128 000 derniers tokens de conversation — environ 96 000 mots. Tout ce qui précède est invisible pour le modèle et n'influence pas sa réponse.

Tokens vs. mots : Un token n'est pas un mot. En moyenne, un token ≈ 4 caractères ou environ 0,75 mots. Une fenêtre de contexte de 4 000 tokens ≈ 3 000 mots de texte anglais brut. Pour le code dense ou les langues comme le japonais, le ratio est différent — le texte japonais nécessite environ 2 tokens par mot en raison de l'encodage des caractères.

Les tailles de fenêtre de contexte varient considérablement entre les modèles :

Le principe est identique pour tous les modèles : tout ce qui se trouve en dehors de la fenêtre est invisible.

Pourquoi l'IA "oublie"

Quand le nombre total de tokens dans une conversation (invite système + historique de chat + entrée utilisateur + outils + sortie attendue) dépasse la fenêtre de contexte, les parties plus anciennes sont tronquées, résumées ou supprimées entièrement.

Ce n'est pas une perte de mémoire comme l'oubli humain. Le modèle ne "pense pas puis oublie." Il ne voit tout simplement pas le texte tronqué — il n'existe plus dans l'espace d'entrée du modèle.

Symptômes courants du dépassement de la limite de contexte :

  • L'IA ignore ou contredit une instruction que vous avez donnée il y a 30 messages
  • Dans une longue histoire créative, le modèle oublie les noms de personnages, les détails ou les contraintes que vous avez établis plus tôt
  • Dans un chat de recherche sur plusieurs tours, les faits se mélangent ou le modèle réinvente l'information
  • L'IA change soudainement de ton ou viole vos contraintes d'origine sans explication

Ce qui se passe réellement

La plupart des interfaces de chat utilisent l'une de ces stratégies :

  1. 1Supprimer les messages les plus anciens — Les N messages les plus récents s'adaptent à la fenêtre ; les plus anciens sont entièrement supprimés
  2. 2Résumer la conversation antérieure — Le système comprime les premiers messages en un bref résumé ("Précédemment, vous avez discuté X, Y, Z…") pour préserver le contexte
  3. 3Épingler les prompts système/développeur — Le message système reste fixe tandis que les messages utilisateur tournent

Toutes ces méthodes préservent "l'essentiel" mais perdent des détails spécifiques. Quand le modèle ne voit plus l'instruction originale, il ne peut pas la suivre.

Fenêtres de contexte et hallucinations

La surcharge de contexte amplifie les hallucinations car le modèle comble les lacunes par des suppositions plausibles quand l'information originale n'est plus visible.

Voici le schéma : Vous demandez à l'IA de se référer à quelque chose que vous avez mentionné il y a 50 messages. Mais ce message a basculé hors de la fenêtre de contexte. Le modèle n'a pas accès au fait réel, il génère donc une réponse qui semble plausible basée sur ce qu'il déduit du contexte actuel. Résultat : fabrication.

C'est pourquoi les chats longs et contextuels produisent souvent plus d'hallucinations que les échanges courts et focalisés. Le modèle ne perd pas sa capacité de raisonnement — il travaille avec des informations incomplètes.

L'interaction est directe : Moins de contexte → manque d'ancrage → risque accru d'hallucination.

Cet effet se renforce avec des paramètres de température et top-p plus élevés, qui augmentent déjà l'aléatoire. Voir Temperature and Top-P: Control AI Creativity pour comprendre comment l'ajustement des paramètres interagit avec l'hallucination.

Comment la conception de prompts vous aide à rester dans la fenêtre

Structurer vos prompts stratégiquement vous permet d'en accomplir plus dans un budget de contexte fixe.

Placer les instructions critiques en avant. Placez vos contraintes, règles et définitions les plus importantes dans l'invite système ou le tout premier message utilisateur. Elles sont moins susceptibles de sortir du contexte que les instructions enfouies 20 tours plus tard.

Éviter la répétition. Si vous avez déjà expliqué quelque chose une fois, ne le collez pas à nouveau. À la place, référencez-le : "Comme nous l'avons discuté dans le résumé ci-dessus…" Cela économise des tokens.

Récapituler explicitement. Demandez au modèle de résumer les décisions, contraintes ou faits clés jusqu'à présent. Construisez ensuite la réponse suivante sur ce résumé au lieu de vous fier à un contexte antérieur dispersé.

Garder les tours focalisés. Un long monologue multi-sujets utilise le contexte inefficacement. Divisez-le en échanges séparés et étroitement ciblés.

Travailler avec de longs documents

Coller des livres entiers ou des PDF de centaines de pages dans une seule fenêtre de contexte est inefficace, même pour la fenêtre de 1M tokens de Claude Opus, car le modèle ne peut pas se concentrer efficacement sur plusieurs sections disparates simultanément.

Un livre de 1 000 pages ≈ 250 000 tokens. Techniquement, Claude Opus peut l'ingérer. En pratique, le raisonnement du modèle se dégrade quand on lui demande de répondre à des questions à travers des sections très différentes — c'est comme demander à une personne de lire un roman entier en une seule séance, puis de se rappeler des détails spécifiques de la page 50, 200 et 400. Le souvenir devient flou.

Meilleures approches pour les longs documents :

  1. 1Traiter les sections séquentiellement. Extrayez et analysez un chapitre ou une section à la fois. Posez des questions focalisées par section : "Quelles sont les conclusions principales de la section 3 ?" Passez ensuite à la section suivante.
  2. 2Résumé hiérarchique. Extrayez les points clés des pages 1–10, puis des pages 11–20, puis combinez ces résumés en un résumé au niveau du chapitre. Ensuite, combinez les chapitres en un résumé au niveau du document. Cela réduit le document à ses faits essentiels tout en préservant les relations.
  3. 3Extraction structurée. Convertissez le document en tableaux, JSON ou listes à puces *avant* de poser des questions de niveau supérieur. Cela comprime l'information : au lieu de coller 50 pages de spécifications de produit, extrayez les spécifications dans un tableau structuré, posez ensuite des questions sur le tableau.
  4. 4Utilisez RAG (Retrieval-Augmented Generation). Pour des ensembles de documents vraiment volumineux (100+ pages), les systèmes basés sur la récupération fonctionnent mieux. Voir RAG Explained: How to Ground AI Answers in Real Data pour récupérer les sections pertinentes au lieu de tout charger à la fois.

Comment PromptQuorum vous aide à gérer le contexte

À partir de mon expérience en construisant PromptQuorum, j'ai trouvé que travailler près des limites de contexte est délicat parce que chaque modèle a des limites différentes, un comportement de troncature, une tarification et des exigences de RAM (pour les LLM locaux). PromptQuorum vous aide à rendre cela transparent et intentionnel.

Ajustement de la fenêtre de contexte pour les LLM locaux

Quand vous exécutez un modèle dans LM Studio ou Ollama, vous pouvez configurer la taille de la fenêtre de contexte. Par défaut, les outils la définissent souvent au maximum du modèle (par ex. 32k pour un modèle 7B). Mais c'est rarement ce dont vous avez besoin.

PromptQuorum s'intègre avec LM Studio et vous permet d'ajuster la fenêtre de contexte par tâche : choisissez 4k pour Q&A légers et rapides ; choisissez 32k pour l'analyse approfondie de documents ; choisissez 64k pour les longues conversations. Cela rend l'échange explicite au lieu de l'être caché dans les fichiers de configuration.

Vérifications automatiques du débordement de contexte

PromptQuorum vérifie *avant* que vous n'envoyiez : Compte tenu de l'invite système + historique de conversation actuel + votre nouvelle entrée + longueur de sortie attendue, cela s'adaptera-t-il à la fenêtre de contexte configurée pour chaque modèle ?

Si le débordement est probable, PromptQuorum vous avertit ou vous demande de rogner/résumer la conversation avant d'envoyer. Plus de troncature surprise. Plus de devinettes sur pourquoi l'IA "a oublié."

Fenêtre de contexte ↔ Échange de RAM

Pour les modèles locaux, les fenêtres de contexte plus grandes exigent exponentiellement plus de RAM. Un modèle de paramètres 7B avec une fenêtre de contexte de 4k a besoin d'environ 14 Go de RAM. Le même modèle avec une fenêtre de contexte de 128k a besoin de 32 Go+. Allez plus loin et le GPU manque de mémoire, plante ou revient à l'inférence CPU (ce qui est 10–100× plus lent).

PromptQuorum vous montre cette relation : "Cette taille de fenêtre de contexte utilisera environ 28 Go de RAM sur votre matériel. Vous avez 16 Go disponibles." Vous pouvez alors dimensionner correctement la fenêtre de contexte pour votre tâche et votre matériel au lieu de découvrir des plantages en cours d'inférence.

Conscience multi-modèle

Quand vous envoyez un prompt à GPT-4o (fenêtre 128k), Claude (fenêtre 200k) et un modèle 7B local (votre fenêtre choisie 32k), PromptQuorum maintient automatiquement votre prompt dans les trois limites. Un prompt, plusieurs modèles, sans réécriture manuelle.

Recettes pratiques pour la gestion du contexte

Recette 1 : Chat long sur un projet

Objectif : Maintenir une conversation multi-tours sur un seul projet sans perdre les décisions antérieures.

  1. 1Dans votre invite système, intégrez les contraintes clés du projet (portée, audience, ton, limites techniques) une fois. Ne les répétez pas.
  2. 2Après chaque 10–15 échanges, demandez au modèle de résumer l'état actuel : "Quelles sont les 5 décisions les plus importantes que nous avons prises jusqu'à présent ?"
  3. 3Utilisez ce résumé comme contexte de votre tour suivant au lieu de vous fier à des messages antérieurs dispersés.
  4. 4Dans PromptQuorum, définissez une fenêtre de contexte de 32k–64k et activez les avertissements de débordement pour savoir quand résumer.

Recette 2 : Analyse d'un long rapport

Objectif : Extraire des informations d'un document de 50–100 pages.

  1. 1Divisez le document en 3–5 sections (chapitres, parties).
  2. 2Pour chaque section, écrivez un prompt focalisé : "Résumez les conclusions clés de cette section en 5 points de balle."
  3. 3Collectez ces 5 résumés de chaque section.
  4. 4Dans un tour final, demandez : "Compte tenu de ces résumés de section, quelle est la conclusion générale ?"
  5. 5Vous êtes resté bien dans les limites de contexte et avez évité le problème "perdu dans un livre".

Recette 3 : Prompting à la limite de la fenêtre de contexte

Objectif : Utiliser presque la fenêtre de contexte complète sans débordement.

  1. 1Calculez votre budget : Taille de fenêtre de contexte − tokens d'invite système − tokens de sortie attendus = tokens disponibles pour votre entrée + historique.
  2. 2Exemple : fenêtre 128k, invite système 200-tokens, tampon de sortie 1k = 126,8k tokens disponibles.
  3. 3Avant d'envoyer, vérifiez dans PromptQuorum : "Combien de tokens cette entrée prend-elle ?"
  4. 4Si proche de la limite, rogner le tour le plus ancien ou le résumer avant de continuer.
  5. 5Cela vous maintient fonctionnant intentionnellement près de la limite, pas aléatoirement la frapper.

Recette 4 : LLM local avec RAM limité

Objectif : Exécuter un modèle local efficacement sans plantages.

  1. 1Commencez par une fenêtre de contexte conservatrice (8k–16k) pour la RAM de votre modèle.
  2. 2Dans les paramètres de PromptQuorum, notez l'exigence RAM à cette taille de fenêtre.
  3. 3Exécutez votre tâche. Si vous avez un débordement, résumez la conversation et redémarrez à partir du résumé.
  4. 4Si vous ne vous rapprochez jamais de la limite, augmentez lentement la fenêtre de contexte et testez à nouveau.
  5. 5Trouvez la fenêtre de contexte "dimensionnée correctement" de votre modèle pour votre matériel et vos tâches.

Erreurs courantes avec les fenêtres de contexte

  • "Le modèle se souvient de tous mes chats précédents." Ce n'est pas le cas. Chaque nouvelle conversation commence avec zéro contexte des chats antérieurs. Même dans un chat, une fois que votre échange dépasse la fenêtre de contexte, c'est parti.
  • "Je vais juste coller le même long contexte à chaque tour." Cela gaspille des tokens et n'aide pas — le modèle ne peut toujours pas raisonner efficacement sur 300 pages. À la place, résumez et référencez le résumé.
  • "Je vais mélanger cinq projets différents en une longue conversation." Chaque projet concurrence les tokens. Quand le contexte se remplit, les détails sont tronqués. Utilisez des conversations séparées par projet.
  • "L'IA est mauvaise au raisonnement — doit être température ou top-p." Peut-être. Mais d'abord, vérifiez la fenêtre de contexte. Si le modèle ne voit plus la contrainte originale, ce n'est pas un problème de paramètre ; c'est une information manquante.
  • "Je vais maximiser la fenêtre de contexte sur mon LLM local." Puis vous manquez de RAM, le processus plante et l'inférence revient au mode CPU lent. Définissez plutôt le contexte pour correspondre à votre matériel.
  • "L'application m'a averti du débordement, mais j'ai quand même envoyé." Faites confiance à l'avertissement. Le débordement entraîne une troncature silencieuse, des hallucinations cachées et des tokens gaspillés. Résumez d'abord.

FAQ

Le modèle se souvient-il de mes chats précédents ?

Non. Chaque nouvelle session de conversation commence avec zéro historique. Le modèle ne voit que des tokens dans la fenêtre de contexte actuelle. Si vous voulez faire référence à un chat précédent, vous devez copier les parties pertinentes dans la conversation actuelle.

Pourquoi l'IA a-t-elle ignoré une instruction que j'ai donnée il y a 20 messages ?

Cette instruction a probablement glissé hors de la fenêtre de contexte. Le modèle ne la voit plus, il ne peut donc pas la suivre. Solution : Répétez les instructions critiques dans votre invite système ou demandez au modèle de récapituler et de réintégrer l'instruction en cours de conversation.

Une fenêtre de contexte plus grande est-elle toujours mieux ?

Non. Une fenêtre plus grande vous permet d'inclure plus de contenu, mais elle augmente également les coûts (plus de tokens à traiter) et, pour les modèles locaux, l'utilisation de RAM. Choisissez une fenêtre de contexte adaptée à votre tâche : 4k pour Q&A simple, 32k pour les longues conversations, 128k+ pour l'analyse de documents. Plus grand n'est pas "mieux" — *approprié* est mieux.

Comment savoir quand j'ai atteint la limite de contexte ?

Les réponses du modèle changent de ton, contredisent les instructions antérieures ou perdent la trace des détails que vous avez définis plus tôt. Utilisez la vérification du débordement de contexte de PromptQuorum avant d'envoyer — elle vous avertit si vous vous approchez de la limite.

Comment la taille de la fenêtre de contexte affecte-t-elle la RAM pour les modèles locaux ?

Les fenêtres de contexte plus grandes utilisent plus de RAM grossièrement proportionnellement : doubler la fenêtre de contexte double grossièrement l'utilisation de RAM. Un modèle 7B au contexte 4k ≈ 14 Go de RAM ; au contexte 32k ≈ 28 Go de RAM. Vérifiez la calculatrice RAM de PromptQuorum pour connaître le plafond de votre matériel.

Les outils comme PromptQuorum peuvent-ils prévenir le débordement de contexte ?

Oui. PromptQuorum vérifie le nombre de tokens de votre prompt, votre fenêtre de contexte configurée et la limite réelle de votre modèle, puis vous avertit avant d'envoyer si le débordement est probable. Vous pouvez ensuite rogner ou résumer avant de continuer.

Les différents modèles gèrent-ils le contexte long différemment ?

Oui. Claude 3.5 Sonnet maintient bien la focalisation sur 200k tokens. GPT-4o est solide à 128k. Les modèles plus petits (par ex. LLaMA 2 7B) perdent parfois la cohérence du raisonnement au-delà de 8k–16k, même si leur fenêtre de contexte est techniquement plus grande. L'approche la plus sûre : testez votre modèle spécifique et votre tâche.

Lectures connexes

Sources

Appliquez ces techniques simultanément sur plus de 25 modèles d'IA avec PromptQuorum.

Essayer PromptQuorum gratuitement →

← Retour au Prompt Engineering

Fenêtres de contexte expliquées : Pourquoi l'IA oublie (et comment y remédier) | PromptQuorum