Uitarea contextuală

From Systems analysis wiki
Jump to navigation Jump to search

Uitarea contextuală în modelele lingvistice de mari dimensiuni este un fenomen multifațetat prin care un model lingvistic de mari dimensiuni (LLM) pierde, ignoră sau utilizează ineficient informațiile furnizate anterior în cadrul unei singure interacțiuni[1]. Spre deosebire de memoria umană, LLM-urile nu dispun de un spațiu de stocare pe termen lung și se bazează exclusiv pe fereastra de context — volumul limitat de text (în tokeni) pe care modelul îl poate procesa la un moment dat. Această fereastră joacă rolul memoriei de scurtă durată sau a memoriei de lucru a modelului[2].

Cea mai cunoscută manifestare a acestei limitări este problema „pierderii în mijloc" (Lost in the Middle) — tendința modelelor de a procesa mai bine informațiile aflate la începutul și la sfârșitul unui context lung, și mai slab pe cele din mijloc[2]. Acest fenomen nu reprezintă o defecțiune, ci o proprietate fundamentală ce decurge din arhitectura transformer și din principiile de antrenare ale acestora.

Două tipuri de uitare: Contextuală și Catastrofică

Este important să se facă distincția între două tipuri fundamental diferite de „uitare" în LLM-uri: uitarea intra-contextuală și cea catastrofică.

Uitarea intra-contextuală (Pierderea în mijloc)

Acest tip de uitare apare în timpul unei singure sesiuni de interacțiune (inferență) cu un model deja antrenat. El este legat de limitările ferestrei de context. Atunci când volumul dialogului sau al documentului depășește dimensiunea ferestrei, modelul „uită" fragmentele cele mai vechi pentru a face loc celor noi. Chiar și în interiorul ferestrei, informațiile din mijlocul contextului pot fi utilizate mai puțin eficient. Aceasta reprezintă o limitare a memoriei de lucru a modelului[3]. În publicistică, acest fenomen mai este denumit și „sindromul degradării contextului" (Context Degradation Syndrome, CDS)[1].

Uitarea catastrofică (Deriva modelului)

Acest tip de uitare, cunoscut și sub denumirea de „deriva modelului" (model drift), apare în procesul de fine-tuning al modelului pe date noi. Atunci când un model pre-antrenat pe un corpus uriaș de cunoștințe generale este supus fine-tuning-ului pe un set de date înalt specializat (de exemplu, texte medicale), ponderile sale se modifică. Aceasta poate conduce la degradarea sau „ștergerea" cunoștințelor și abilităților asimilate anterior, care nu sunt legate de noua sarcină[4].

Cauze și mecanisme

Uitarea contextuală este o consecință directă a arhitecturii transformer și a geometriei spațiilor vectoriale.

Efectul „Pierderii în mijloc" (Lost in the Middle)

Un studiu realizat de Universitatea Stanford în 2023, intitulat „Lost in the Middle", a demonstrat clar că performanța LLM-urilor la extragerea informațiilor dintr-un context lung urmează o curbă în formă de U[2]. Acuratețea răspunsurilor este maximă atunci când informația relevantă se află la începutul (efectul de primație) sau la sfârșitul (efectul de recență) contextului, și scade semnificativ atunci când aceasta este „ascunsă" în mijloc. Cauzele acestui fenomen:

  • Mecanismul de atenție: Arhitectura transformer acordă prin natura sa o atenție disproporționat de mare tokenilor inițiali (așa-numiții „ancore de atenție" sau attention sinks) pentru menținerea coerenței globale, precum și contextului local, ceea ce duce la slăbirea „focusului" pe zona de mijloc[5].
  • Datele de pre-antrenare: Modelele sunt cel mai adesea antrenate pe texte relativ scurte, unde informațiile importante se află rareori la zeci de mii de tokeni distanță față de început, ceea ce le împiedică să utilizeze eficient contexte foarte lungi[6].

Manifestări și consecințe

  • Sindromul degradării contextului: În cadrul dialogurilor îndelungate, modelul începe să „piardă firul conversației", să repete răspunsuri, să contrazică fapte stabilite anterior și să ofere răspunsuri din ce în ce mai generale și mai vagi[1].
  • Eșecuri în sarcinile cu mai mulți pași: În sarcinile în care condițiile sunt precizate pe parcursul mai multor replici, modelul poate „se agăța" de o presupunere inițială greșită și poate ignora clarificările ulterioare, ceea ce duce la incapacitatea totală de a rezolva sarcina[7].
  • Nesiguranța analizei documentelor: La analizarea rapoartelor lungi sau a documentelor juridice, LLM-ul poate omite fapte-cheie aflate în secțiunile centrale, ceea ce îl face un instrument nesigur pentru astfel de sarcini.

Strategii de atenuare și prevenire

Cercetătorii și dezvoltatorii aplică mai multe abordări pentru a rezolva problema uitării contextuale.

Extinderea ferestrei de context

Cea mai directă abordare este mărirea dimensiunii ferestrei de context. Modelele moderne, precum Claude 3 (200 mii de tokeni) și Gemini 1.5 Pro (până la 2 milioane de tokeni), au extins semnificativ această limită[8][9]. Cu toate acestea, cercetările arată că simpla mărire a ferestrei nu garantează utilizarea ei eficientă, iar problema „pierderii în mijloc" persistă[2].

Ingineria avansată a prompt-urilor

Structurarea adecvată a prompt-urilor poate îmbunătăți considerabil performanța. Compania Anthropic propune următoarele practici[10]:

  • Plasarea documentelor la început: Introduceți textele lungi la începutul prompt-ului, înaintea instrucțiunilor și a întrebării.
  • Utilizarea tagurilor XML: Înfășurați documentele în taguri `<document>` pentru o delimitare clară.
  • Fundamentarea răspunsurilor cu citate: Oferiți modelului instrucțiunea de a extrage mai întâi citatele relevante, iar apoi de a formula răspunsul pe baza acestora.

Externalizarea memoriei: Retrieval-Augmented Generation (RAG)

O abordare fundamental diferită constă nu în includerea tuturor informațiilor în fereastra de context, ci în externalizarea acestora într-un sistem extern (o bază de date vectorială) și furnizarea lor la cerere.

  1. Extragerea (Retrieve): Atunci când sosește o solicitare, sistemul caută informații relevante în baza de date externă.
  2. Augmentarea (Augment): Fragmentele găsite sunt adăugate la solicitarea inițială.
  3. Generarea (Generate): LLM-ul generează un răspuns pe baza contextului furnizat.

RAG permite lucrul cu volume de date practic nelimitate și asigură accesul la informații actuale și verificate, ceea ce reduce riscul halucinațiilor și reprezintă cea mai fiabilă soluție disponibilă în prezent[11].

Referințe

  • Lost in the Middle: How Language Models Use Long Contexts — studiul original al Universității Stanford.
  • Anunțul Claude cu o fereastră de context de 100K tokeni de la Anthropic.

Bibliografie

  • Liu, N. F. et al. (2023). Lost in the Middle: How Language Models Use Long Contexts. arXiv:2307.03172.
  • An, C. et al. (2024). Why Does the Effective Context Length of LLMs Fall Short?. arXiv:2410.18745.
  • Ding, J. et al. (2023). LongNet: Scaling Transformers to 1,000,000,000 Tokens. arXiv:2307.02486.
  • Yang, A. et al. (2024). Context Parallelism for Scalable Million-Token Inference. arXiv:2411.01783.
  • Chen, S. et al. (2023). Extending Context Window of Large Language Models via Positional Interpolation. arXiv:2306.15595.
  • Ding, Y. et al. (2024). LongRoPE: Extending LLM Context Window Beyond 2 Million Tokens. arXiv:2402.13753.
  • Li, S. et al. (2023). Functional Interpolation for Relative Positions Improves Long Context Transformers. arXiv:2310.04418.
  • Dong, Z. et al. (2024). Exploring Context Window of Large Language Models via Decomposed Positional Vectors. arXiv:2405.18009.
  • Laban, P. et al. (2025). LLMs Get Lost in Multi-Turn Conversation. arXiv:2505.06120.
  • Li, R. et al. (2024). Extending Context Window in Large Language Models with Segmented Base Adjustment for Rotary Position Embeddings. Applied Sciences, 14(7), 3076. DOI:10.3390/app14073076.
  • Yang, A. & Reizenstein, J. (2024). Exploring Context Window of LLMs via Decomposed Positional Vectors (NeurIPS Poster). NeurIPS 2024.

Note

  1. 1.0 1.1 1.2 Howard, James. «Context Degradation Syndrome: When Large Language Models Lose the Plot». jameshoward.us. [1]
  2. 2.0 2.1 2.2 2.3 Liu, Nelson F.; et al. «Lost in the Middle: How Language Models Use Long Contexts». arXiv. [2]
  3. Liu, Nelson F.; et al. «Lost in the Middle: How Language Models Use Long Contexts». ACL Anthology. [3]
  4. Greyling, Cobus. «Catastrophic Forgetting In LLMs». Medium. [4]
  5. «Exploring Context Window of Large Language Models via Decomposed Positional Vectors». NeurIPS Proceedings. [5]
  6. An, Chenxin; et al. «Why Does the Effective Context Length of LLMs Fall Short?». arXiv. [6]
  7. «LLMs Get Lost In Multi-Turn Conversation». arXiv. [7]
  8. «Introducing the next generation of Claude». Anthropic. [8]
  9. «Google's Gemini 1.5 Pro - Revolutionizing AI with a 1M Token Context Window». Medium. [9]
  10. «Long context prompting tips». Anthropic Documentation. [10]
  11. «What is Retrieval-Augmented Generation (RAG)?». Google Cloud. [11]