Context Window
Une fenêtre de contexte est le nombre maximal de tokens qu'un modèle de langage peut traiter en un seul appel d'inférence, couvrant à la fois l'invite d'entrée et la sortie générée. Le dépasser provoque une troncature de l'entrée ou une erreur API ; les fenêtres plus grandes permettent l'analyse de documents complets sans systèmes de récupération externes.
La fenêtre de contexte définit la limite supérieure de la longueur de séquence à laquelle un modèle de langage basé sur un transformateur peut faire attention en une seule passe avant. Sa taille est déterminée au moment de l'entraînement par le schéma d'encodage positionnel et les longueurs de séquence sur lesquelles le modèle a été entraîné. Tout ce que le modèle peut voir simultanément — l'invite système, l'historique de conversation, les documents récupérés, les résultats des appels d'outils et la réponse générée en cours — doit tenir dans cette limite, mesurée en tokens.
Les transformers calculent l'attention sur tous les tokens du contexte, donc le calcul et la mémoire se mettent à l'échelle au carré avec la longueur du contexte dans l'implémentation naïve. Des techniques telles que l'attention clairsemée, l'attention à fenêtre glissante (utilisée dans Mistral 7B), Flash Attention 2 et 3 et l'attention annulaire ont rendu les contextes très longs pratiques. Les encodages positionnels (RoPE, ALiBi et autres) communiquent la position de chaque token dans la séquence ; les modèles entraînés avec RoPE peuvent souvent être extrapolés au-delà de leur longueur d'entraînement via des techniques de fine-tuning telles que YaRN, qui a étendu le contexte natif de 4k de LLaMA 2 à 128k dans les modèles communautaires. La mémoire du KV-cache croît linéairement avec la longueur du contexte, rendant les contextes très longs intensifs en mémoire GPU au moment de l'inférence.
La taille de la fenêtre de contexte détermine directement les tâches qu'un modèle peut exécuter sans augmentation de récupération. Une fenêtre de 4 096 tokens ne peut pas contenir un document de recherche complet ; une fenêtre de 1 000 000 tokens peut ingérer un référentiel logiciel entier ou un document de plusieurs centaines de pages, permettant de répondre à des questions dans le contexte sans base de données vectorielle externe. Les contextes plus longs permettent également de conserver les historiques de conversation complets, éliminant le besoin d'un résumé avec perte entre les tours.
Les fenêtres de contexte se sont étendues rapidement entre 2023 et 2026. GPT-4 a été lancé en 2023 avec 8k tokens (32k dans une variante séparée) ; en 2026, Claude 3.5/4 supporte jusqu'à 200k tokens, Gemini 1.5 Pro a établi 1M tokens comme une capacité de production en 2024, et Gemini 2.0 Flash supporte 1M tokens. Une limitation pratique persistante est l'effet « perdu au milieu » : les modèles ont tendance à faire plus attention au début et à la fin des contextes longs, ce qui fait que l'information au milieu de très longues séquences est sous-pondérée malgré le fait d'être techniquement dans la fenêtre.