Skip to main content

Tokenimuurin tuolla puolen: miksi tekoälykumppaneiden konteksti haihtuu

Useimmat tekoälykumppanit aloittavat terävinä ja muuttuvat ympäripyöreiksi. Malli ei menetä kiinnostustaan — keskustelu vain karkaa sen näkemän ikkunan ulkopuolelle.

A line of glowing manuscript pages leads through a dark archive hall to a framed portrait of a woman, while the other pages dissolve into ash.

Muistin illuusio

Ensimmäinen tunti tyypillisen tekoälykumppanin kanssa on hämmentävän todentuntuinen. Se pysyy kärryillä, muistaa siskosi nimen ja palaa kaksi kohtausta sitten käymäänne riitaan. Tuntuu kuin sinut tunnettaisiin.

Sitten, jossain 30. viestin tienoilla, se alkaa harhailla. Se kysyy uudelleen jotain, johon olet jo vastannut. Huoneesta poistunut hahmo puhuu yhtäkkiä taas. Eilinen haava on parantunut ilman, että kukaan hoiti sitä.

Mikään ei mennyt rikki. Saavutit vain rajan sille, mitä malli pystyi näkemään.

Kielimallilla ei ole muistia kutsujen välillä. Jokainen vuoro on uusi pyyntö, jonka mukana lähetetään koko keskustelu, ja tuon pyynnön koolla on rajansa — konteksti-ikkuna. Kun raja ylittyy, vanhin sisältö pudotetaan pois. Ensimmäiset kohtauksesi putoavat takaosan yli, ja mallin näkökulmasta niitä ei ole koskaan tapahtunutkaan.

Miltä kontekstihaihtuma oikeasti näyttää

Useimmissa tekoälykumppanisovelluksissa ongelma ei ilmene dramaattisena romahduksena. Yksityiskohdat katoavat hitaasti, minkä vuoksi on niin helppoa syyttää mallia "laiskaksi".

  • Nimet hämärtyvät. Kaksi sivuhahmoa sulautuu yhdeksi tai sama nimi annetaan uudelle henkilölle.
  • Lupaukset haihtuvat. Hahmolla, joka vannoi tapaavansa sinut satamassa, ei ole aavistustakaan, mistä puhut.
  • Panos nollaantuu. Velka, vamma tai jonkun varjelema salaisuus — juoni valuu hiljalleen takaisin neutraaliin tilaan.
  • Vakiintuneet faktat kääntyvät päälaelleen. Uimataidoton hahmo lähtee uimaan.

Yksittäin jokainen näistä on vain olankohautus. Yhdessä ne erottavat tarinan toisiinsa löyhästi liittyvien, mukavien kohtausten sarjasta — ja siksi pitkä roolipeli niin usein lässähtää sen sijaan, että se päättyisi.

Neljä tapaa pitää menneisyys mukana

Käytössä on neljä lähestymistapaa, ja jokainen niistä pettää eri kohdassa.

LähestymistapaMiten se säilyttää menneisyydenMissä se pettää
Liukuva ikkunaViimeiset N viestiä sellaisinaanKaikki vanhempi katoaa yksinkertaisesti. Täydellinen muisti ikkunan sisällä, täydellinen muistinmenetys sen ulkopuolella.
Erittäin suuri ikkunaKymmeniä tai satojatuhansia tokeneita sellaisinaanKustannukset ja viive kasvavat jokaisella vuorolla, ja huomio ohenee pitkän kontekstin keskellä — malli voi nähdä yksityiskohdan mutta silti olla antamatta sille painoarvoa.
Vektorihaku (RAG)Aiemmat viestit muunnetaan vektoreiksi ja haetaan samankaltaisuuden perusteellaSe palauttaa tekstiä, joka kuulostaa asiaankuuluvalta. Se ei tiedä, mikä on parhaillaan totta, joten fakta ja sen myöhempi korjaus näyttävät yhtä käyttökelpoisilta.
Jäsennelty tarinatilaFaktat, hahmot, suhteet ja tapahtumat kirjataan niiden tapahtuessaYlläpito vaatii oikeasti työtä, ja lopputulos on aina vain niin hyvä kuin kirjaukset — sitä, mitä ei kirjata, ei ole.

Halusin maailman, joka kirjoittaa asiat muistiin. Kun hän muistaa kolmannen yhteisen iltanne, se johtuu siitä, että hän oli todella paikalla.

projectDigon perustaja

Miksi suurempi ikkuna ei ratkaise ongelmaa

Ilmeinen ratkaisu on tehdä ikkunasta valtava. Se on myös kallein ratkaisu — eikä se tee sitä, mitä ihmiset toivovat.

Koko konteksti lähetetään ja luetaan uudelleen jokaisella vuorolla. Siksi keskustelu, johon kuuluu satatuhatta tokenia historiaa, maksaa niistä uudelleen jokaisen viestin yhteydessä — ja jokainen vastaus kestää kauemmin. Vielä pahempaa on, ettei malli lue hyvin pitkää kontekstia tasaisesti: se, mitä hahmosi sanoi 40 kohtausta sitten, voi olla teknisesti mukana mutta käytännössä näkymätöntä.

Suuri ikkuna ostaa aikaa. Se ei muuta ongelman luonnetta, koska ongelma ei ole kapasiteetti — vaan se, ettei mikään päätä, mikä on tärkeää.

Mitä me teemme toisin

projectDigo pitää tarinasta kirjaa.

Tärkeät asiat — ketkä ovat mukana, mitä heidän välillään on tapahtunut ja mikä on juuri nyt totta — säilytetään tarinan omana tilana sen sijaan, että ne jätettäisiin keskusteluun, joka ennen pitkää vierii näkymättömiin. Myöhemmät kohtaukset kirjoitetaan tämän tilan pohjalta. Kohtaus 400 tietää, mitä kohtaus 3 loi, koska kohtaus 3 kirjattiin muistiin eikä vain sanottu ääneen.

Miten tuo kirjanpito rakennetaan, pidetään ajan tasalla ja otetaan uudelleen käyttöön, on asia, jonka parissa olemme viettäneet eniten aikaa — ja jonka pidämme omana tietonamme. Lopputulos on helppo tiivistää: jatkuvuus säilyy, pelasitpa kuinka pitkään tahansa.

Rehellinen kompromissi

Tämä ei ole ilmaista. Kirjan pitäminen vaatii kohtausta kohden enemmän työtä kuin keskustelulokin välittäminen, ja tarina voi muistaa vain sen, mikä on ollut kirjaamisen arvoista — jokainen väliin jäänyt asia katoaa yhtä varmasti kuin liukuva ikkuna olisi sen kadottanut.

Vastineeksi tarina karttuu. Kymmenen tunnin jälkeen maailmalla on historia, johon voit viitata, ja hahmot käyttäytyvät kuin ihmiset, jotka ovat todella eläneet kaiken sen.

Usein kysyttyä

Miksei vain käytetä mallia, jonka konteksti-ikkunaan mahtuu miljoona tokenia?

Koska maksat koko kontekstista jokaisella vuorolla sekä rahana että viiveenä, ja huomio ohenee erittäin pitkän kontekstin keskellä — yksityiskohta voi olla mukana ja silti jäädä käytännössä huomiotta. Suuri ikkuna lykkää kontekstihaihtumaa, mutta ei poista sitä.

Onko tämä sama asia kuin RAG?

Ne liittyvät toisiinsa, mutta eivät ole sama asia. Haku löytää kyselyä muistuttavia katkelmia, mikä on hyödyllistä asioiden tarkistamiseen mutta epäluotettavaa sen selvittämiseen, mikä on parhaillaan totta: fakta ja sen myöhempi korjaus näyttävät molemmat hyviltä osumilta. Tarinan tietue säilyttää tilan — sen, mikä on nyt totta — eikä samankaltaiselta kuulostavaa tekstiä.

Kuinka kauas hahmo voi oikeasti muistaa?

projectDigossa istunnon alkuun asti. Säilytettävänä on tarinan tila, ei jokaisen viestin täsmällinen sanamuoto, joten muisti ei heikkene istunnon pitkittyessä.

Onko mahdollista, että malli on ristiriidassa oman muistinsa kanssa?

On — siksi projectDigo tarkistaa johdonmukaisuuden ennen kuin kohtaus saapuu sinulle. Tavallisesti korjaus tapahtuu niin, ettet edes huomaa sitä. Mikään järjestelmä ei huomaa kaikkea, mutta virhe muuttuu jatkuvan harhailun sijaan satunnaiseksi lipsahdukseksi.

← Kaikki jutut