A kontextus-ablak az a maximális szövegmennyiség, amit egy nyelvi modell egyszerre lát és feldolgoz: a kérdés, a beemelt dokumentumok és a saját készülő válasza együtt. Mérete tokenben mérhető, nem karakterben és nem szóban.
Hogyan működik
Egy LLM (nagy nyelvi modell) nem úgy olvas, mint te. Nincs memóriája a korábbi oldalakról. Minden válasznál csak azt ismeri, ami az ablakba éppen bekerült. Ami kimarad, az számára nem létezik.
A mai modellek ablaka jellemzően 128 000 és 1 000 000 token között mozog. Magyar szövegnél egy token nagyjából 2-3 karakter. Ugyanaz a mondat magyarul több tokent fogyaszt, mint angolul.
Miért szűkebb a gyakorlatban
Az ablak sosem a te oldaladé egyedül. Osztozik rajta a rendszerutasítás, a beszélgetés előzménye, a többi forrás szövege és a generált válasz. Egy generatív keresőben a te oldalad tipikusan néhány ezer tokent kap, nem többet.
Ez a néhány ezer token a teljes HTML-ből lesz kivonatolva. Ha a látható szöveg felét menü, süti-sáv, kapcsolati blokk és lábléc viszi el, a lényeg kiszorul. Erről szól a tartalmi zaj (a fő tartalom aránya) és részben az oldalméret (HTML-méret) is.
Mikor számít igazán
- Hosszú szolgáltatásoldalaknál, ahol az ár és a folyamat a szöveg végén van.
- Webshop-kategóriáknál, ahol 60 termék listája elnyomja a leíró részt.
- RAG-alapú rendszereknél, ahol az oldaladat darabokra vágják, és csak 1-2 darab jut be.
A hosszú ablak nem egyenletes minőségű. A modellek az eleje és a vége felé pontosabbak, a közepére szorult részleteket gyakrabban hagyják ki. Ezért nyer az az oldal, amelyik az első bekezdésben megmondja a lényeget.
Röviden: nem az a kérdés, mekkora az ablak, hanem hogy a te lényeged belefér-e az első pár ezer tokenbe.
Technikai példa
Gyors becslés arra, mennyi token marad az oldaladból:
# Teljes HTML mérete bájtban
curl -s https://pelda.hu/szolgaltatas | wc -c
# Látható szöveg a tagek nélkül
curl -s https://pelda.hu/szolgaltatas \
| sed -e 's/<script[^>]*>.*<\/script>//g' -e 's/<[^>]*>//g' \
| tr -s ' \n' ' ' | wc -c
A második szám osztva 3-mal nagyjából a magyar tokenszám. Ha 420 000 bájt HTML-ből 3 000 karakter szöveg marad, az körülbelül 1 000 token. Ennyiből kell a modellnek megértenie téged.
Így néz ki egy ablakbarát oldalkezdés:
<main>
<h1>Ipari padlóburkolás Debrecenben</h1>
<p><strong>Epoxi és poliuretán ipari padlót építünk</strong> csarnokokba,
üzemekbe és raktárakba, Hajdú-Bihar megyében. 2008 óta dolgozunk,
400 négyzetméter a legkisebb vállalt méret.</p>
</main>
Ez a két mondat önmagában megválaszolja, hogy mit csinálsz, hol és kinek. Ha csak ennyi fér be, az is elég egy pontos idézethez.
Gyakori kérdések
Ha a modellnek 1 millió tokenes ablaka van, akkor ez már nem probléma?
De igen. Az ablak mérete a modell kapacitása, nem az, amit az oldaladnak adnak belőle. Egy generatív kereső több forrásból dolgozik, és mindegyikből csak részletet emel be. A te oldalad így is néhány ezer tokent kap.
Rövidebbre kell vágnom a szövegeimet?
Nem, a sorrenden múlik a dolog. Hosszú oldal is működik, ha az eleje összefoglalja a lényeget. A részletek maradhatnak lentebb, mert azok a kiegészítő információk.
Hány token egy magyar szó?
Modellenként eltér, de magyar szövegnél egy szó jellemzően 2-4 token. Ez rosszabb arány, mint az angolnál, mert a tokenizálók főleg angol szövegen tanultak. A ragozott alakok több darabra esnek szét.
A képek és a strukturált adatok is fogyasztják az ablakot?
A képek általában nem kerülnek be szöveges idézésnél, az alt szövegük viszont igen. A JSON-LD blokk is tokent fogyaszt, ha a rendszer beemeli. Cserébe sűrű és pontos információt ad, tehát jó befektetés.
Honnan tudom, hogy az oldalamból mi ment át a modellnek?
Közvetlenül nem látod, mert ez a szolgáltató oldalán dől el. Közelítésként kérdezd meg egy chatbottól az oldal URL-jével, hogy mit csinál a cég. Amit visszamond, az nagyjából az, ami bekerült az ablakba.