Idée

L'attention d'un modèle se dégrade sur ce qu'on enfouit au milieu de son contexte

Idée principale

La fenêtre de contexte d'un modèle de langage est finie, ce que tout le monde sait. Ce qu'on suppose ensuite est faux : que dans cette limite, tout ce qui est fourni soit également disponible. Des chercheurs de Stanford l'ont mesuré dans Lost in the Middle (Liu et al., 2024) — une information placée au début ou à la fin du contexte est retrouvée nettement mieux que la même information enfouie au milieu.

La conséquence pratique porte sur un geste très répandu : charger un fichier de trois mille lignes en espérant que le modèle « comprenne tout ». Le modèle ne refuse pas, ne signale rien, et répond. Ce qui se dégrade n'est pas la forme de la réponse, c'est ce qu'elle a réellement pris en compte — et rien dans la sortie ne dit ce qui a été manqué.

Le remplissage n'est donc pas neutre. Chaque ligne ajoutée au contexte ne s'ajoute pas seulement à ce que le modèle sait : elle repousse vers le milieu ce qui s'y trouvait déjà.

Pourquoi c'est important

Cela transforme la taille de fenêtre annoncée par un éditeur en une capacité maximale et non en une capacité utile. Doubler la fenêtre ne double pas ce dont le modèle dispose réellement, et raisonner en nombre de jetons disponibles conduit à remplir jusqu'au bord.

Cela justifie aussi un travail qui paraîtrait sinon superflu : découper, hiérarchiser et sélectionner ce qu'on fournit, alors même que tout tiendrait techniquement.

Nuances et limites

L'effet est une propriété des modèles observés à un moment donné, et son ampleur varie d'une architecture et d'une génération à l'autre. Ce qui reste, c'est le principe — le remplissage a un coût de qualité — plus que le chiffre.

Et la position n'explique pas tout : une information mal formulée ou contredite ailleurs dans le contexte se perd aussi bien en tête de document.

Questions ouvertes

  • Comment détecter, sur une réponse plausible, qu'une information fournie au modèle n'a pas été mobilisée ?