Lost in the Middle
iaDéfinition
Le 'Lost in the Middle' est un phenomene de biais cognitif des LLMs documente par Liu et al. (Stanford, 2023) dans le paper 'Lost in the Middle: How Language Models Use Long Contexts'. Les LLMs ont tendance a mieux utiliser les informations situees au debut (primacy effect) et a la fin (recency effect) de leur fenetre de contexte, tandis que les informations situees au milieu sont systematiquement sous-utilisees, meme si elles sont pertinentes. L'etude mesure cet effet sur des taches de multi-document question answering : lorsque le passage pertinent est place au debut ou a la fin de 10-30 documents concatenes, le modele repond correctement dans 70-80% des cas. Quand le meme passage est place au milieu, la performance chute a 50-60% — une degradation significative qui persiste meme avec des modeles tres performants comme GPT-4. Les implications pratiques pour les systemes RAG sont importantes : meme avec une excellente qualite de retrieval, si les chunks les plus pertinents se retrouvent au milieu du contexte passe au LLM, la qualite des reponses sera systematiquement degradee. Des strategies de positionnement ('lost in the middle mitigation') consistent a placer les chunks les plus importants en debut et en fin de contexte. Le phenomene est attribue a plusieurs facteurs : la structure de l'attention causale dans les Transformers Decoder-Only (chaque token peut 'voir' tous les precedents, mais les premiers tokens du contexte ont plus de passes d'attention que les milieux), et les patterns d'entrainement qui exposent davantage le modele a des textes courts ou l'information utile est en debut/fin. Les modeles de raisonnement etende (o1, Claude Extended Thinking) semblent mieux resister au 'Lost in the Middle' car ils peuvent iterer plusieurs fois sur le contenu du contexte pendant leur phase de reflexion interne, compensant partiellement ce biais d'attention.
Strategies de mitigation dans le RAG
- Positionnement optimal : placer les chunks les plus pertinents au debut ET a la fin du contexte
- Contextual compression : extraire uniquement les phrases cles de chaque chunk pour reduire la dilution
- Maximal Marginal Relevance (MMR) : diversifier les chunks selectionnes pour couvrir la question sous differents angles
- Recency weighting : si les documents ont une dimension temporelle, placer les plus recents a la fin
Test 'Lost in the Middle' sur votre pipeline RAG
def test_position_sensitivity(query, relevant_chunk, filler_chunks, model, k=5):
# Tester differentes positions du chunk pertinent
positions = [0, k//2, k-1] # debut, milieu, fin
for pos in positions:
chunks = filler_chunks[:pos] + [relevant_chunk] + filler_chunks[pos:k-1]
context = '\n---\n'.join([c['content'] for c in chunks])
response = model.generate(f'Contexte:\n{context}\n\nQuestion: {query}')
score = evaluate_answer(response)
print(f'Position {pos}/{k-1}: score={score:.2f}')
Articles liés
Expert en cybersécurité offensive et intelligence artificielle. Pentest, audit et développement IA sur-mesure.
Services
- Audit Infrastructure
- Audit Kubernetes
- Audit Microsoft 365
- Audit Sécurité Réseau
- Analyse de Risques
- Audit Active Directory
- Audit Application Web
- Audit Cloud (AWS/Azure/GCP)
- Audit Messagerie
- Audit API (OWASP Top 10)
- Audit DevSecOps & CI/CD
- Audit Code Source (SAST)
- Audit Postes de Travail
- Audit Sauvegarde & Résilience
- Audit OT/SCADA (IEC 62443)
- Développement IA
- Formations
Ressources
Projets & Outils
© 2026 Ayi NEDJIMI Consultants. Tous droits réservés.
Un projet cybersécurité ?
Expert dispo · Réponse 24h