Een taalmodel bewaart informatie niet van het ene naar het andere gesprek: bij elke uitvoering werkt het alleen met de tekst die in het verzoek wordt aangeleverd. Voor AI-agents, die hun eerdere acties moeten kunnen volgen, de voorkeuren van een gebruiker moeten onthouden of een taak in meerdere stappen moeten uitvoeren, maakt deze beperking een extern geheugen noodzakelijk. Dit geheugen slaat informatie op buiten het contextvenster, dat wil zeggen de hoeveelheid tekst die een model in één keer kan verwerken, en geeft deze terug wanneer ze nuttig is.
De bouwstenen van het geheugen van agents
Agents moeten informatie kunnen meenemen van het ene gesprek en de ene taak naar het andere. Ze moeten mogelijk onthouden wat al gepland is om dubbele acties te voorkomen, of de stappen die mislukten bijhouden om niet hetzelfde werk opnieuw te doen. Zonder geheugen heeft elk gesprek alleen de context die het krijgt aangeleverd.
De soorten geheugen vallen in vier categorieën. Het werkgeheugen bevat de actieve status van de taak, zoals tussenresultaten, en kan direct per sleutel worden geraadpleegd. Het episodisch geheugen bewaart wat er is gebeurd: eerdere interacties, taakuitvoeringen en genomen beslissingen, in een chronologisch logboek of een vector database, met zoeken op semantische gelijkenis. Het semantisch geheugen verzamelt wat als waar wordt beschouwd, namelijk feiten en voorkeuren, die worden bijgewerkt in plaats van toegevoegd. Het procedureel geheugen beschrijft hoe dingen gedaan worden, of het nu gaat om succesvolle actiepatronen of bekende faalwijzen, en steunt op prompt-modellen of op fine-tuning, een aanpassing van het model op basis van specifieke data.
Een betrouwbaar geheugen ontwerpen
In het voorbeeld van een zoekagent die meerdere dagen aan dezelfde taak werkt, wordt elk resultaat eerst in het werkgeheugen geschreven met een korte levensduur. Wanneer een resultaat nuttig blijkt, gaat het naar het episodisch geheugen met een belangrijkheidsscore. Voor elk hulpmiddelgesprek raadpleegt de agent eerst het werkgeheugen en daarna, indien nodig, het episodisch geheugen. Als de taak onderweg mislukt, kan de tijdelijke status worden gewist terwijl de geschiedenis van voltooide werkzaamheden behouden blijft.
Verschillende praktijken maken het geheugen betrouwbaarder naarmate het groeit: het belang van informatie noteren vóór het schrijven, het geheugen van elke agent beperken tot zijn rol in multi-agent systemen, het geheugen raadplegen bij elke beslissingsstap, en de herkomst van elk element traceren, of het nu van een agent, een hulpmiddel, een gebruikersinvoer of een tijdstempel komt. Sommige benaderingen, eenvoudig te implementeren, worden echter onbetrouwbaar. Dat geldt voor het opslaan van alles in één vector database, compressie door vrije samenvattingen, die cijfers of beperkingen kan wissen, onbeperkte groei van het geheugen, of het op dezelfde manier vertrouwen van elke schrijfactie. Dit laatste maakt kwetsbaar voor geheugenvergiftiging, waarbij onbetrouwbare of kwaadaardige inhoud wordt opgeslagen en vervolgens als betrouwbare informatie wordt behandeld.
Frameworks met verschillende benaderingen
Frameworks bevinden zich tussen een eenvoudig tekstueel geheugen en kennisgrafen. Letta steunt op tekstblokken die de agent zelf kan herschrijven, en werkt een blok bij wanneer het een tegenstrijdigheid detecteert. Mem0 gebruikt een vectorgeheugen met een entiteitgevoelige zoekfunctie, en voegt nieuwe herinneringen toe naast de oude. Graphiti steunt op een bi-temporele kennisgraaf met getypeerde relaties: het maakt oude relaties ongeldig terwijl het hun raadpleegbare geschiedenis behoudt. Cognee bouwt vanuit de brondata lagen van graaf, vector en relationele representaties, en reconstrueert de geheugenrepresentatie, met temporele modi om veranderingen te volgen.
In multi-agent systemen kan het delen van geheugen conflicten veroorzaken bij gelijktijdige updates. De genoemde oplossingen omvatten een centrale service met schrijfcontrole, gescheiden naamruimten voor elke agent, of alleen-toevoegen logs waarvan conflicten worden opgelost bij het zoeken. Evaluatie steunt op verschillende indicatoren: de recall, die meet of relevante herinneringen worden teruggevonden, de precisie, die het aandeel nutteloze informatie meet dat wordt teruggestuurd, de trouw, die het correcte gebruik van opgehaalde informatie controleert, en de veroudering, die de frequentie van achterhaalde informatie meet. Volgens het artikel hangt de keuze af van de werklast van de agent, zijn data en zijn operationele eisen.
