Skip to main content

A tokenfalon túl: miért romlik az AI-társak kontextusa?

A legtöbb AI-társ élesen kezd, aztán elmosódik. Nem arról van szó, hogy a modell elveszti az érdeklődését — egyszerűen a beszélgetés kicsúszik abból az ablakból, amit még lát.

A memória illúziója

Egy átlagos AI-társsal töltött első óra szinte hátborzongató. Felveszi a fonalat, emlékszik a testvéred nevére, visszautal a két jelenettel korábbi vitátokra. Olyan érzés, mintha ismerne téged.

Aztán valahol a harmincadik üzenet környékén sodródni kezd. Olyasmire kérdez rá, amire már válaszoltál. Egy szereplő, aki elhagyta a szobát, hirtelen megszólal. A tegnapi seb begyógyult anélkül, hogy bárki ellátta volna.

Semmi nem romlott el. Egyszerűen elérted annak a határát, amit a modell még látni tudott.

Egy nyelvi modellnek nincs hívások közötti memóriája. Minden forduló új kérés, amely magával viszi az egész beszélgetést, ennek pedig van egy méretkorlátja: a kontextusablak. Ha túlnősz rajta, a legrégebbi anyag kiesik. Az első jelenetek lecsúsznak a végén, és a modell szemszögéből meg sem történtek.

Így néz ki valójában a kontextusromlás

A legtöbb társalkalmazásban a hiba ritkán látványos. A részletek lassú elvesztéséről van szó, ezért olyan könnyű arra fogni, hogy a modell „lusta”.

  • Elmosódnak a nevek. Két mellékszereplő eggyé olvad, vagy egy korábbi nevet kap valaki más.
  • Elpárolognak az ígéretek. A szereplő, aki megesküdött, hogy találkozik veled a kikötőben, fogalma sincs, miről beszélsz.
  • Lenullázódik a történet tétje. Az adósság, a sérülés, a titok, amelyet valaki őriz — a cselekmény észrevétlenül visszasimul a semleges állapotba.
  • Megfordulnak a rögzített tények. Úszni nem tudó szereplő megy el úszni.

Külön-külön mindegyikre csak legyintene az ember. Együtt azonban ezek jelentik a különbséget egy történet és kellemes, egymástól elszigetelt jelenetek sora között — és ezért fullad ki olyan gyakran a hosszú szerepjáték ahelyett, hogy véget érne.

Négy módszer a múlt megőrzésére

Négy megközelítés terjedt el, és mindegyik máshol mond csődöt.

MegközelítésHogyan őrzi meg a múltat?Hol törik el?
Csúszó ablakAz utolsó N üzenet, szó szerintMinden régebbi egyszerűen eltűnik. Tökéletes felidézés az ablakon belül, teljes amnézia azon kívül.
Rendkívül nagy ablakTízezrek vagy százezrek tokenben, szó szerintA költség és a válaszidő minden fordulóval nő, a figyelem pedig elvékonyodik a hosszú kontextus közepén — a modell láthat egy részletet, mégsem tulajdonít neki kellő súlyt.
Vektoros visszakeresés (RAG)A korábbi üzenetek beágyazása és hasonlóság szerinti kereséseOlyan szöveget ad vissza, amely relevánsnak hangzik. Nem tudja, mi igaz jelenleg, ezért egy tény és annak későbbi helyesbítése egyformán jó találatnak tűnik.
Strukturált történetállapotA tények, szereplők, kapcsolatok és események feljegyzése, ahogy megtörténnekValódi munkát igényel a karbantartása, és csak annyira jó, amennyire pontosan vezetik — ami nincs rögzítve, az elveszik.

Nem nagyobb ablakot akartam. Olyan világot akartam, amely feljegyzi, mi történik — egy társ, aki elfelejti, hogy már a harmadik közös estéteken vagytok túl, valójában sosem volt igazán jelen.

A projectDigo alapítója

Miért nem megoldás a nagyobb ablak?

A kézenfekvő megoldás az ablak hatalmasra növelése. Egyben ez a legdrágább megoldás is, és nem azt nyújtja, amit remélünk tőle.

A teljes kontextust minden egyes fordulónál újra elküldik és újra beolvassák, ezért egy százezer tokennyi előzményt cipelő beszélgetés minden üzenettel ismét kifizeti ezt az egész történetet — és minden válaszra tovább kell várni. Ráadásul egy nagyon hosszú kontextust a modell nem egyenletesen olvas: amit a karaktered negyven jelenettel korábban mondott, technikailag még jelen lehet, a gyakorlatban azonban láthatatlanná válik.

A nagy ablak időt vásárol. A probléma alakján nem változtat, mert nem a kapacitás a gond — hanem az, hogy semmi nem dönti el, mi fontos.

Mi mást csinálunk?

A projectDigo nem próbálja továbbcipelni a beszélgetés teljes előzményét. Ehelyett magát a történetet tartja nyilván.

Ami számít — kik léteznek, mi történt közöttük, és mi igaz éppen most — a történet saját állapotaként marad meg, nem egy olyan beszélgetésben, amely előbb-utóbb kicsúszik a látható részből. A későbbi jelenetek erre az állapotra épülnek. A négyszázadik jelenet tudja, mit fektetett le a harmadik, mert a harmadikat rögzítettük, nem csupán kimondtuk.

Ennek a nyilvántartásnak a felépítésével, naprakészen tartásával és újbóli használatával töltöttük a legtöbb időt, és ezt a részét nem részletezzük nyilvánosan. A célja azonban egyszerű: olyan folytonosság, amely nem vékonyodik el attól, hogy egyre tovább játszol.

Az őszinte kompromisszum

Ennek ára van. Egy nyilvántartás vezetése jelenetenként több munkát igényel, mint az előzmények továbbküldése, és egy történet csak arra emlékezhet, amit érdemes volt rögzíteni — ami kimarad, ugyanúgy elveszik, ahogy a csúszó ablakban elveszett volna.

Cserébe a történet felhalmozódik. Tíz óra elteltével a világnak már van története, amelyre rá tudsz mutatni, a szereplők pedig úgy viselkednek, mint akik valóban ott voltak, amikor mindez megtörtént.

Gyakori kérdések

Miért nem használunk egyszerűen egymillió tokenes kontextusablakkal rendelkező modellt?

Mert minden fordulónál kifizeted a teljes kontextus árát — pénzben és válaszidőben is —, ráadásul a figyelem elvékonyodik egy nagyon hosszú kontextus közepén: egy részlet jelen lehet, mégis gyakorlatilag figyelmen kívül maradhat. A nagy ablak csak elodázza a kontextusromlást, nem szünteti meg.

Ez ugyanaz, mint a RAG?

Kapcsolódik hozzá, de nem ugyanaz. A visszakeresés a kérdéshez hasonló részeket talál, ami hasznos, ha valamit ki akarsz keresni, de megbízhatatlan annak eldöntésében, mi igaz éppen most: egy tény és annak későbbi helyesbítése egyaránt jó találatnak látszik. A történet nyilvántartása állapotot őriz — azt, ami most igaz —, nem pedig hasonlóan hangzó szöveget.

Meddig visszamenőleg képes ténylegesen emlékezni egy szereplő?

A projectDigóban a munkamenet kezdetéig. Ami megmarad, az a történet állapota, nem minden üzenet pontos megfogalmazása, ezért az emlékezet nem romlik a munkamenet hosszával.

Előfordul, hogy a modell ellentmond a saját emlékeinek?

Előfordulhat — ezért ellenőrzi a projectDigo a következetességet, mielőtt a jelenet eljut hozzád. A szokásos eredmény egy olyan javítás, amelyet észre sem veszel. Semmi nem szűr ki mindent, de a hibázás állandó sodródás helyett alkalmi botlássá válik.

← Összes írás