Context Window (kontextové okno)

Context Window je limit, koľko textu (tvojich správ, systémových inštrukcií, priložených dát aj predchádzajúcej konverzácie) dokáže AI naraz „držať v hlave" pri generovaní odpovede. Keď ho prekročíš, niečo sa musí zahodiť alebo skrátiť — a ty to potom vidíš ako zabúdanie, halucinácie alebo zrazu menej presné odpovede.


1. Definícia

  • Kontextové okno: maximálny objem vstupného textu, ktorý model zohľadňuje v jednom behu.
  • Tokeny: kontext sa meria v tokenoch (nie v slovách). Token je kúsok textu — niekedy celé slovo, inokedy len jeho časť.
  • Analógia: predstav si pracovný stôl. Kým je na ňom poriadok, vidíš všetko dôležité. Keď ho zavalíš papiermi, začneš prehliadať detaily alebo ich musíš odložiť do šuflíka (ktorý sa do aktuálnej práce už nezapočíta).

2. Tokeny: prečo „strana" nie je jednotka

Modely nečítajú písmená ani slová, ale tokeny. Hrubé orientačné pravidlo pre angličtinu: 1 token ≈ 4 znaky ≈ ¾ slova. Slovenčina s diakritikou a dlhými slovami býva „drahšia". Rýchly odhad v kóde:

# hrubý odhad počtu tokenov (presné číslo dá tokenizer modelu)
def odhad_tokenov(text: str) -> int:
    return max(len(text) // 4, len(text.split()))

print(odhad_tokenov("Toto je krátka veta."))  # ~6

Preto sa limit udáva v tokenoch: 100 000 tokenov je inak veľa textu v slovenčine než v angličtine.


3. Ako to funguje a prečo k tomu dochádza

  • Jednorazové „počítanie" kontextu: pri odpovedi model spracuje celý dostupný kontext naraz. Nejde o nekonečnú pamäť, ale o limitovaný „buffer".
  • Vstup + výstup: do limitu často spadá nielen to, čo posielaš ty, ale aj to, čo model ešte vygeneruje.
  • Truncation (odrezanie): keď konverzácia narastie, staršie časti sa môžu automaticky odrezať. Ty to nevidíš priamo — len cítiš, že model „už nevie, čo ste riešili".
  • „Dlhý kontext" nie je magický: aj keď sa do okna zmestí veľa textu, model nemusí rovnako dobre využiť každý detail. Dôležité informácie sa „rozriedia" v šume.

4. Prečo veľké okno nie je zadarmo

Za schopnosťou držať dlhý kontext stojí attention mechanizmus, ktorého klasická náročnosť rastie kvadraticky s dĺžkou vstupu. Dvojnásobný kontext ≈ štvornásobok výpočtu. Preto:

  • veľké okno znamená vyššiu cenu (pri API) a latenciu,
  • optimalizácie ako FlashAttention tlačia túto cenu nadol, ale nezmiznú úplne,
  • platí jav „lost in the middle" — model si lepšie pamätá začiatok a koniec kontextu než stred.

5. Hlavné prejavy v praxi (čo si všimneš)

  • Zabúdanie požiadaviek: model prestane dodržiavať pravidlá uvedené skôr (štýl, formát, zákaz tabuliek).
  • Strata faktov: neudrží mená, čísla, rozhodnutia alebo „kto čo povedal" v dlhšej debate.
  • Zlá kontinuita: odpoveď pôsobí, akoby pokračovala v inom vlákne, alebo si odporuje.
  • Halucinácie pri preťažení: veľa textu a málo jasných kotiev → model „doplní" chýbajúce súvislosti.
  • Zhoršenie presnosti pri detailoch: pri veľkých dokumentoch sa ľahko pomýli v konkrétnom odseku, dátume či výnimke.

6. Prečo je to dôležité (riziká, dôsledky, prínos)

  • Kvalita odpovede: veľká časť „AI chýb" nie je o inteligencii, ale o tom, že model nemal v kontexte správne informácie — alebo ich mal priveľa.
  • Cena a latencia: väčší kontext = viac výpočtu, vyššia cena, pomalšia odozva.
  • Bezpečnosť: ak do kontextu dáš citlivé dáta „len aby to bolo kompletné", zvyšuješ riziko zbytočného zdieľania.
  • Praktický prínos: väčšie okno je super pri dlhom dokumente, špecifikácii či kóde — ale len keď vieš udržať štruktúru.

7. Ako to riešiť

  • Počítaj s tokenmi, nie so stranami.
  • Udržuj „brief" konverzácie: priebežne si pýtaj krátke zhrnutie a používaj ho ako hlavný kontext.
  • Segmentuj (chunking): veľké dokumenty dávaj po častiach, ku každej výťah, ďalej pracuj s výťahmi.
  • Hierarchické sumarizovanie: 10 kapitol → 10 zhrnutí → „zhrnutie zhrnutí".
  • Retrieval / RAG: namiesto tlačenia celého archívu do okna vytiahni iba relevantné pasáže podľa otázky.
  • Jednoznačné kotvy: názvy sekcií, identifikátory, „zdroj pravdy" („Toto je finálna verzia požiadaviek").
Pojem Čo to znamená v praxi
Context Window Koľko textu model naraz zohľadní pri odpovedi
Output limit Koľko textu dokáže naraz vygenerovať
Pamäť systému Čo si aplikácia dlhodobo ukladá mimo kontextu (ak vôbec)
RAG / vyhľadávanie Mechanizmus, ktorý do kontextu vloží len relevantné úryvky

8. Quick Reference

  • Čo to je: limit kontextu v tokenoch, ktorý model pri odpovedi vidí.
  • Prečo to bolí: po prekročení limitu sa staršie veci odrežú alebo stratia v šume.
  • Čo sledovať: nedodržiavanie pravidiel, zabúdanie detailov, horšia kontinuita.
  • Čo pomáha: priebežné zhrnutia, chunking, jasné kotvy, RAG.
  • Kedy riešiť hneď: dlhé projekty, špecifikácie, právne texty, veľké kódy a dlhé chat vlákna.

Zhrnutie

  • Context Window určuje, koľko informácií má model reálne k dispozícii pri odpovedi — nie je to nekonečná pamäť.
  • Veľké okno stojí výpočet (kvadraticky cez attention) a trpí javom „lost in the middle".
  • Keď kontext narastie, prejaví sa zabúdanie, slabšia kontinuita a viac omylov v detailoch.
  • Najlepšie funguje vedomá práca s kontextom: zhrnutia, segmentácia, hierarchické výťahy a RAG.