Waarom vergeet een fictieve chatbot zijn instellingen na een lang gesprek? Een gids met vijf controles
Als een chatbot met een fictief personage na veel beurten de ingestelde kenmerken niet meer volgt, laat die verandering op zichzelf niet zien waarom. Een vergeten detail kan buiten de bruikbare gesprekscontext zijn gevallen, niet zijn teruggehaald uit een ophaalsysteem, verloren zijn gegaan of veranderd zijn in een samenvatting, in conflict zijn gekomen met een andere instructie, of nooit als blijvend geheugen zijn opgeslagen. Gebruik de vijf onderstaande controles met onschadelijke fictieve details om de mogelijkheden te verfijnen. Ze kunnen patronen aan het licht brengen, maar zonder toegang tot de logboeken of het ontwerp van de chatbot kunnen ze niet bewijzen hoe een bepaalde app werkt.
Onderscheid eerst het symptoom van de mogelijke oorzaak
Kies één detail dat stabiel moet blijven en makkelijk te controleren is. Bijvoorbeeld: “Mira, een fictieve vuurtorenwachter, bewaart een koperen kompas in de groene bureaulade.” Gebruik tijdens alle controles hetzelfde feit en stel een gerichte vraag, zoals “Welke kleur heeft de lade?” Gebruik geen persoonlijke informatie of details die buiten de test van belang zijn.
Noteer de exacte prompt, het antwoord, de geschatte gesprekslengte en of je een nieuw gesprek bent gestart. Als je de chatbot van iemand anders test, gebruik dan alleen instellingen en testgesprekken waartoe je toegang hebt. Trek geen conclusie op basis van één antwoord: antwoorden kunnen variëren, en één misser laat niet zien of het feit wel aanwezig was maar over het hoofd werd gezien, of ontbrak in de informatie die aan het model werd verstrekt.
Onderzoek leert ons voorzichtig te zijn bij het interpreteren van fouten in lange gesprekken. Liu en collega's ontdekten dat de prestaties bij het ophalen van informatie konden variëren afhankelijk van de positie van het relevante detail in een lange invoer, en vaak afnamen als het detail in het midden stond. Hun experimenten gaan over vraagbeantwoording en het ophalen van sleutel-waardeparen, niet over fictief rollenspel of een specifieke app. Een onderzoek uit 2026 van Luz de Araujo en collega's bekeek rechtstreeks hoe trouw persona's blijven in langere dialogen en rapporteerde dat die trouw afnam naarmate de dialoog langer werd, bij de modellen die ze evalueerden. Geen van beide onderzoeken stelt de oorzaak vast van een fout van een bepaalde chatbot. (Liu et al., “Lost in the Middle,” 2024; De Araujo et al., “Persistent Personas?”, 2026)
1. Controleer op een limiet van het contextvenster
Vraag in het bestaande gesprek naar het kompas en de lade. Open vervolgens een nieuw gesprek, geef de personage-instellingen opnieuw aan het begin op en stel dezelfde vraag. Als het antwoord in het nieuwe gesprek klopt, maar laat in het oude gesprek niet, wordt een beperking bij lange contexten aannemelijker. Het opgegeven detail is mogelijk niet langer in dezelfde vorm beschikbaar, of het model kan het minder goed gebruiken naarmate het gesprek langer wordt.
Dit patroon stelt geen precieze grens van het contextvenster vast. Het nieuwe gesprek verandert ook andere omstandigheden: het plaatst het feit dicht bij het begin en haalt latere instructies weg die ermee kunnen concurreren. Een contextvenster is de hoeveelheid gesprek en andere invoer die een systeem tegelijk kan verwerken; dat is niet noodzakelijk hetzelfde als opgeslagen geheugen dat tussen gesprekken behouden blijft. Leid geen aantal tokens af uit één fout, tenzij de dienst zijn limieten documenteert.
2. Controleer of het ophalen van informatie faalt
Als de dienst een gedocumenteerde zoek-, herinnerings- of gespreksgeschiedenisfunctie biedt, test dan of die de exacte instellingstekst kan vinden. Je kunt de chatbot ook vragen het feit op te halen uit de eerdere relevante uitwisseling, als dat een ondersteunde functie is. Vergelijk het resultaat met dat van het nieuwe gesprek.
Als de instelling nog aanwezig is in een toegankelijke geschiedenis of geheugenregistratie, maar de chatbot die niet gebruikt, is een fout bij het ophalen of selecteren een mogelijkheid. Het kan ook komen door de positie in de context, een zwak antwoord of een functie die anders werkt dan verwacht. Zonder te zien welke informatie voor dat antwoord aan het model is verstrekt, kun je deze mogelijkheden niet met zekerheid onderscheiden. Ga er niet van uit dat een chatbot alle eerdere berichten doorzoekt alleen omdat de interface het volledige transcript toont.
3. Controleer op een verouderde of onvolledige samenvatting
Sommige systemen kunnen eerdere beurten samenvatten in een kortere tekst. Als de app die samenvatting toont, controleer dan of er nog in staat dat de lade groen is en het kompas van koper. Staat er alleen dat Mira “een kompas in de buurt bewaart”, stel dan een gerichte vraag over de weggelaten kleur en vergelijk het antwoord met dat van de versie waarin je de instelling expliciet hebt opgegeven.
Een onjuiste of onvolledige samenvatting maakt het aannemelijk dat de inkorting heeft veranderd wat werd meegenomen. Maar een samenvatting die jij kunt zien, is mogelijk niet de samenvatting die het systeem gebruikte; bovendien kun je niet aannemen dat er een onzichtbare samenvatting bestaat. Beschouw deze controle alleen als bewijs wanneer het product de relevante registratie of documentatie daadwerkelijk beschikbaar maakt.
4. Controleer op een conflict tussen persona en instructies
Houd het feit hetzelfde en let vervolgens op latere instructies die invloed kunnen hebben op het antwoord. In een fictieve scène kan bijvoorbeeld staan: “Mira twijfelt vandaag en gokt dat de lade blauw is.” Dat is in strijd met een instelling die zegt dat de lade groen is. Stel een neutrale feitelijke vraag en stel daarna een vraag binnen de scène. Als de chatbot anders antwoordt, kunnen de formulering of de prioriteit van instructies het antwoord beïnvloeden.
Voor een zuiverdere test verwijder of wijzig je één conflicterende instructie en laat je de rest van de fictieve instellingen ongewijzigd. Als de chatbot de instelling daarna weer volgt, is het conflict een sterkere verklaring dan gewoon vergeten. De chatbot kan een instructie ook verkeerd begrijpen of improviseren; een verandering na het bewerken laat de interne prioriteitsregels van het systeem niet zien. Onderzoek naar persona's in langere dialogen toont dat zowel trouw aan een persona als het volgen van instructies tijdens lange interacties kan worden geëvalueerd, maar kan niet vertellen welke regel een bepaalde dienst voorrang geeft. (“Persistent Personas?”)
5. Controleer of blijvend geheugen bedoeld is om dit detail op te slaan
Een detail in het huidige gesprek, een opgeslagen personageprofiel en geheugen dat tussen gesprekken wordt gedeeld, zijn verschillende dingen. Raadpleeg de instellingen of documentatie van het product om te zien of het blijvende personage-informatie ondersteunt, of opslaan moet worden ingeschakeld of bevestigd, en of het geselecteerde item bedoeld is om in andere gesprekken beschikbaar te blijven. Test dit in een nieuw gesprek alleen als de dienst zegt dat de functie daar werkt.
Als het product geen gedocumenteerde manier biedt om dit soort personagedetails op te slaan, bewijst het niet terughalen ervan in een ander gesprek niet dat opgeslagen geheugen is gewist. Heeft het product zo'n functie wel, controleer dan het zichtbare opgeslagen item en de reikwijdte ervan voordat je conclusies trekt. Een opgeslagen notitie kan “groene lade” bewaren zonder dat elk eerder bericht in het actieve gesprek hoeft te blijven staan, maar beweer niet dat een bepaalde app zo werkt zonder productspecifiek bewijs.
Lees het patroon, niet alleen het laatste antwoord
Gebruik de waarnemingen als aanwijzingen en houd elke interpretatie beperkter dan het patroon zelf:
Waarneming: Nieuw gesprek met opgegeven instellingen werkt; laat in oud gesprek werkt het niet. Mogelijke interpretatie: Gevoeligheid voor lange context of positie. Het bewijst niet: Een exacte grens van het contextvenster.
Waarneming: Een gedocumenteerde geschiedenis of geheugen bevat het feit, maar het antwoord mist het. Mogelijke interpretatie: Fout bij ophalen of gebruiken. Het bewijst niet: Dat alleen het ophalen de misser veroorzaakte.
Waarneming: Een getoonde samenvatting laat het detail weg of verandert het. Mogelijke interpretatie: Verlies of verandering in de samenvatting. Het bewijst niet: Dat de werkelijke invoer van het model die samenvatting gebruikte.
Waarneming: Het verwijderen van een conflicterende scène-instructie zorgt ervoor dat de chatbot de instelling weer volgt. Mogelijke interpretatie: Conflict tussen instructies of interpretatie. Het bewijst niet: De interne instructiehiërarchie van de app.
Waarneming: Een detail ontbreekt in een nieuw gesprek en opslaan tussen gesprekken is niet gedocumenteerd. Mogelijke interpretatie: Er is geen aangetoond pad voor blijvend geheugen. Het bewijst niet: Dat bestaand geheugen is verwijderd.
Nieuw gesprek met opgegeven instellingen werkt; laat in oud gesprek werkt het niet — mogelijke interpretatie: Gevoeligheid voor lange context of positie; dit bewijst geen exacte grens van het contextvenster.
Een gedocumenteerde geschiedenis of geheugen bevat het feit, maar het antwoord mist het — mogelijke interpretatie: Fout bij ophalen of gebruiken; dit bewijst niet dat alleen het ophalen de misser veroorzaakte.
Een getoonde samenvatting laat het detail weg of verandert het — mogelijke interpretatie: Verlies of verandering in de samenvatting; dit bewijst niet dat de werkelijke invoer van het model die samenvatting gebruikte.
Het verwijderen van een conflicterende scène-instructie zorgt ervoor dat de chatbot de instelling weer volgt — mogelijke interpretatie: Conflict tussen instructies of interpretatie; dit bewijst niet de interne instructiehiërarchie van de app.
Een detail ontbreekt in een nieuw gesprek en opslaan tussen gesprekken is niet gedocumenteerd — mogelijke interpretatie: Er is geen aangetoond pad voor blijvend geheugen; dit bewijst niet dat bestaand geheugen is verwijderd.
Overlappende patronen interpreteren
Als er meerdere patronen optreden, kunnen oorzaken elkaar overlappen. Een samenvatting kan bijvoorbeeld de kleur van de lade weglaten terwijl een latere instructie ook een blauwe lade introduceert. Houd elke test klein, wijzig één omstandigheid tegelijk en bewaar de exacte formulering zodat de vergelijking bruikbaar blijft.
Houd deze controle gescheiden van stem en correctiegedrag
Een personage dat anders klinkt, is een ander symptoom dan het vergeten van een specifiek instellingsfeit. Consistentie van de stem gaat over stijl, woordkeuze of manier van spreken; de bovenstaande controles gaan over de vraag of een concreet fictief detail beschikbaar is en wordt gevolgd. Een update van een model of dienst kan de stijl veranderen, maar tenzij de dienst een wijziging documenteert of vergelijkbare informatie over het model verstrekt, bewijst een verandering in de stem niet dat er een update heeft plaatsgevonden.
Ook betekent het accepteren van een correctie in één antwoord niet automatisch dat die correctie blijvend is. Test dit eerst in hetzelfde gesprek en daarna in een nieuw gesprek, maar alleen als het product zegt dat correcties worden meegenomen. Als het personage één keer “de lade is groen” volgt maar later terugvalt, beschrijft dat de bestendigheid van de correctie; op zichzelf stelt het niet vast of de oorzaak ligt bij context, ophalen, samenvatting, conflict tussen instructies of het ontwerp van het geheugen.
Voor een ontwerper wijzen dezelfde vijf gevallen op een praktische evaluatie: houd een onschadelijk fictief feit constant, varieer de gesprekslengte en de positie van het feit, toon of registreer waar passend opgehaalde notities en samenvattingen, introduceer een gecontroleerde conflicterende instructie en geef aan of het feit tussen sessies moet blijven bestaan. Noteer op welke bron van waarheid elke test steunt. Zo is een fout makkelijker te reproduceren en kun je een inhoudelijk probleem onderscheiden van een verwachting die het product nooit heeft beloofd.
Een zorgvuldige conclusie benoemt het bewijs en de beperking ervan: “De vergelijking met een nieuw gesprek wijst op een effect van een lang gesprek, maar ik kan niet vaststellen of het detail is afgekapt, niet is opgehaald of is overschreven.” Dat is nuttiger dan elke misser een geheugenfout noemen, en nauwkeuriger wanneer de implementatie van de app onbekend is.
