Minne för AI-agenter: så bygger du AI-agenter med beständig kontext

Den här guiden förklarar vad minne för AI-agenter är, hur arbetsminne, episodiskt, semantiskt och procedurellt minne samverkar och hur du bygger och testar agenter som blir bättre genom beständig kontext.

Post by Aravind Srinivas on Perplexity Computer's background Dream agent, with a diagram of the self-improvement loop: online sessions produce raw history, Dream reads and reconciles it with connectors, then compiles, cites, and commits updates to the Brain, which feeds the next session's context.

Om du var tvungen att följa en ny kollega till skrivaren varje morgon i sex månader skulle du börja bli orolig. Om kollegan kunde återge varje tidigare promenad in i minsta detalj men ändå behövde följas dit är minnet utmärkt … men du skulle ändå få resa dig från skrivbordet.

Minnet hos AI-agenter har i dag sin egen version av denna eviga promenad till skrivaren. Lettas vd Charles Packer säger i The New Stack att minnesbenchmarks är mättade eftersom de mäter minnesåtergivning, något han anser vara löst. Det olösta problemet är att en agent blir bättre på sitt arbete genom den kontext den behåller, helt utan omträning.

Hans medgrundare Sarah Wooders jämför det med att börja på ett nytt jobb – benchmarks ger agenten all kontext den behöver – uppgift efter orelaterad uppgift, vilket inte alls liknar hur människor arbetar. En nyanställd kan behöva följas till skrivaren. Men efter tre år hoppas man kunna ge personen en instruktion på en rad utan att resa sig från skrivbordet.

Det är den standarden vi ska bygga mot, och målet bakom Brain, vårt självförbättrande minnessystem för Perplexity Computer, som organiserar tidigare arbete och korrigeringar i en kunskapswiki som ständigt utvecklas.

Vi går igenom vad en agent bör komma ihåg och hur man testar om det hjälper agenten att göra ett bättre arbete.

Vad är minne för AI-agenter?

Minne för AI-agenter är den information en agent behåller från tidigare interaktioner och arbete, tillsammans med mekanismerna för att uppdatera och använda den. Den beständiga minneskontexten för informationen vidare mellan sessioner, så att en avslutad konversation inte innebär att nästa uppgift börjar från noll.

Det mesta som lanseras under det namnet kommer ihåg användaren. Dina preferenser, dina kontakter, din roll, det faktum att du vill ha PDF-filer i stället för PNG-filer. Det är den enkla halvan.

När vi byggde Brain, minnessystemet bakom Perplexity Computer, fokuserade vi på själva arbetet. Vilket tillvägagångssätt lyckades? Vilken källa slösade bort tjugo minuter? Vad behövde du korrigera efter att agenten meddelat att den var klar? Den historiken ger nästa uppgift en bättre utgångspunkt.

Brain lagrar den här informationen som filer i agentens sandlåda, organiserade i tre lager:

  • sessions/ innehåller råa transkript och sammanfattningar av dem.
  • notes/ innehåller destillerad information ordnad efter ämne.
  • knowledge/ innehåller själva wikin: länkade Markdown-sidor om personer, projekt och begrepp.

Inget av detta förbättras av sig självt. Under natten läser bakgrundsagenter som vi kallar ”Dream” dagens sessioner, sammanfattar dem och reviderar wikin där bilden har förändrats. Vi förbereder och kontrollerar ändringarna innan vi checkar in dem via Git, så att det finns en diff att granska när något ser fel ut.

Gör det agenten bättre på jobbet? I vår 30 dagar långa parvisa utvärdering förbättrade sessioner med Brain aktiverat korrektheten med 9,3 procentenheter och minnesåtergivningen med 8,9, samtidigt som de använde ungefär 15 % färre tokens.

Källa: X

Vilka typer av agentminne finns det?

Det finns två breda kategorier, och uppdelningen liknar den man skulle göra för en människa: det du håller i huvudet just nu, och det du fortfarande vet nästa månad.

Korttidsminne

Korttidsminnet innehåller kontexten för den aktuella konversationen eller uppgiften. Din begäran, de senaste meddelandena, resultatet av ett verktygsanrop, dokumentet som agenten just öppnade. Tillräckligt med information för att räkna ut vad som ska göras härnäst.

Det kallas också arbetsminne. För en LLM innehåller kontextfönstret den information som är tillgänglig vid ett visst modellanrop. Applikationen kan upprätthålla ett ytterligare uppgiftstillstånd och avgöra vilka delar som ska tillhandahållas i varje steg.

Och kortvarigt betyder inte nödvändigtvis att det kan kastas bort. Ett ramverk kan spara konversationens tillstånd och återuppta den i morgon – den hör fortfarande till samma tråd. Men om en annan uppgift kan använda informationen är ett separat designbeslut.

Långtidsminne

Långtidsminnet gör information tillgänglig mellan sessioner. CoALA-artikeln lånade tre kategorier från kognitionsvetenskapen och gav dem som bygger agenter ett ordförråd för erfarenheter och kunnande:

  • Episodiskt minne är det som hände: Det omfattar tidigare sessioner, de steg en agent tog och det resultat den fick. I Brain tillhandahåller sessions/ den här historiken genom råa transkript och sammanfattningar av dem.
  • Semantiskt minne är det agenten betraktar som sant: Det kan vara fakta om användaren, användarens projekt och värld, destillerade ur konversationerna. Wikin knowledge/ i Brain innehåller den här typen av information, med länkar tillbaka till underlaget.
  • Procedurminne är hur man gör saker: Det är promptar, återanvändbara arbetsflöden och de Skills som Perplexity bygger för att ge agenter de instruktioner och verktyg ett jobb kräver. Du kanske redan har en del av detta utan att kalla det minne.

Det intressanta arbetet sker mellan lagren. En session registrerar att du avvisade en PNG. Din instruktion att använda PDF-filer blir en preferens som agenten kan föra vidare. En korrigering av exportprocessen blir något den kan följa nästa gång.

Den omvandlingen, från ”det här hände” till ”det här är sant” till ”så här gör vi”, är en del av det inlärningsproblem vi inledde med, och det är där de nattliga körningarna av Dream-agenten i Brain lägger sin kraft.

Säg att någon värmer fisk i mikron i ett gemensamt kök. Det kommer klagomål, ett fönster öppnas. Till slut dyker en skylt upp: INGEN FISK.

Sex månader senare har syndaren flyttat, men skylten sitter kvar. Det är beständighet. Du kan förklara minnestyperna utifrån vad som finns kvar:

  • Arbetsminne är det du håller koll på medan du lagar lunch, till exempel att soppan behöver röras om.
  • Episodiskt minne är fiskincidenten: lukten som följde med alla ut i korridoren.
  • Semantiskt minne är kunskapen du tog med dig från den – att värma fisk kan lämna en kvardröjande lukt i ett gemensamt kök.
  • Procedurminne är instruktionen som styr vad som händer härnäst. Värm inte fisk i mikron här. Skylten gör att någon som missade hela incidenten kan följa regeln.

Det finns också ytterligare en distinktion, eftersom den påverkar vad vi bygger. En översiktsartikel som först publicerades i december 2025, Memory in the Age of AI Agents, menar att kort kontra långt inte räcker – den sorterar även minne efter form:

  • Tokennivå: Det här är det explicita innehåll som agenten läser. Filer, lagrade poster, hämtade textstycken.
  • Parametriskt: Det här är information som kodats i inlärda vikter. För att uppdatera den krävs träning eller metoder för modellredigering.
  • Latent: Det här är information som bevaras i interna representationer utan att skrivas ut som läsbar text.

Här fokuserar vi på minne på tokennivå, det vill säga information som lagras utanför modellen och läses in i dess kontext när det behövs. Markdown-wikin i Brain är ett exempel.

När vi uppdaterar en sida ändrar vi vad agenten kan läsa vid nästa uppgift, men dess underliggande vikter förblir desamma. Det är Packers poäng från inledningen: att bli bättre genom den kontext agenten behåller, utan omträning.

Hur samverkar de olika typerna av agentminne?

En agent kan gå tillbaka till ett tidigare försök, se var det gick fel och läsa in de instruktioner du gav den efteråt. Flera typer av minne är inblandade i samma uppgift, och de behöver inte var sin tur eller var sin databas.

Här avgör beständigheten vad som finns kvar när konversationen har avslutats, medan hämtningen avgör om agenten någonsin ser det igen.

Minnestyp

Vad finns kvar mellan sessioner?

Vad lagras?

Hur för Brain/ Computer in det i kontexten?

Arbetsminne

Sparat uppgiftstillstånd kan återställas, men modellen ser bara det som applikationen tillhandahåller vid varje anrop.

Den aktuella prompten, de senaste dialogturerna, verktygsresultat och hämtad information

Ett index hjälper agenten att upptäcka tillgängligt minne; när filer läses tillförs relevant innehåll.

Episodiskt minne

Bevarade sessionsposter och sammanfattningar.

Vad som hände: tidigare försök, åtgärder, utfall och korrigeringar.

Agenten följer källhänvisningar till underlag från sessioner när den behöver detaljerna.

Semantiskt minne

Underhållen kunskap, med versionshistorik där sådan har registrerats.

Fakta om personer, projekt, preferenser och deras inbördes relationer.

Agenten läser sidor i knowledge/, söker i filer och följer [[wikilänkar]].

Procedurminne

Sparade instruktioner, Skills och arbetsflöden tills de revideras eller tas bort.

Hur man utför en uppgift.

Computer läser in relevanta Skills och instruktioner när det behövs.

I Brain bevarar vi vägen från lärdomen tillbaka till underlaget. Säg att du ber Computer att fortsätta ett projekt från förra veckan:

  • Indexet i Brain talar om vilka minnessidor som finns och var de hittas.
  • Brain öppnar projektsidan för att läsa de sparade besluten och instruktionerna.
  • Om det står i en anteckning att du avvisade ett tillvägagångssätt kan agenten följa dess källhänvisning tillbaka till konversationen och kontrollera varför.

Länkarna till relaterade sidor gör att den kan slå upp de personer eller andra projekt som berörs. Agenten gör detta genom att läsa och söka i filer. Med grep kan den till exempel hitta omnämnanden av ett projekt efter namn.

Vi har också testat vad agenter vinner på att kunna utforska filer. I ett internt benchmarktest med 150 frågor om finansiella dokument nådde en utforskningsagent med vanliga filverktyg ett svarsresultat på 0,627, jämfört med cirka 0,37 för semantisk sökning i samma korpus.

Källa: X

Hur kan man förbättra minnet hos AI-agenter?

En artikel av Orogat och Mansour från maj 2026 identifierar fyra återkommande brister i agentminne: lagret fortsätter att växa, föråldrade uppfattningar revideras inte, information glöms bort när utrymmet tar slut och hämtningen läser utan att lära sig något av besöket.

Deras föreslagna lösning är att sluta behandla agentminne som lagring och i stället se det som ett ”tillstånd” som utvecklas genom fyra operationer: ta in, revidera, glömma, hämta. Det är vår checklista för det här avsnittet.

Var selektiv med vad som sparas i minnet

När ett ”dåligt” minne väl har kommit in ärver varje steg det.

Workday AI Research testade en selektiv metod på ungefär 1 500 kandidatminnen från benchmarken LoCoMo och ställde fem frågor innan något av dem sparades:

  • Är det användbart? Kommer det rimligen att dyka upp igen?
  • Är det tillförlitligt? Sades detta verkligen i konversationen, eller fyllde modellen i det själv?
  • Är det nytt, eller redan lagrat?
  • Är det aktuellt?
  • Är det ett bestående faktum eller ett tillfälligt tillstånd?

Bara den första frågan krävde ett modellanrop. De övriga fyra kördes som regler på under 65 millisekunder sammanlagt. Metoden uppnådde 12 % högre precision i beslut om att behålla eller förkasta, samtidigt som 97 % av de relevanta minnena behölls.

Den största bidragande faktorn var den sista frågan – när distinktionen mellan bestående och tillfällig information togs bort sjönk beslutskvaliteten med ungefär 18 %.

Revidera svaret utan att förlora historiken

Registrera när ett faktum blev giltigt, vilken källa som stöder det och vad det ersatte. Om källorna är oense, håll den oenigheten synlig tills det finns tillräckligt med belägg för att lösa den. Även det nyaste dokumentet kan ha fel.

Brain uppdaterar wikin med hjälp av källdokument, resultat från anslutningar och användarkorrigeringar. Varje minnespost länkar tillbaka till sin källa. Agenten måste kunna hitta det aktuella svaret och ha någonstans att leta om svaret verkar misstänkt.

Glöm med avsikt

Artikeln kallar ett av felmönstren för ”kapacitetsdriven glömska”: information tas bort för att hålla sig inom en lagringsgräns, snarare än för att den har slutat vara användbar.

Tillbaka till det gemensamma köket. Efter sex månader bryr sig ingen om vem som värmde fisken i mikron eller hur länge fönstret stod öppet. Men skylten fyller fortfarande en funktion.

När nästa person lagar lunch finns regeln där. Klagomålen arkiverar du bara.

Workdays kontroller av aktualitet och informationstyp sker redan före lagringen och filtrerar fram det som förtjänar att bli ett minne. I Brain går vi också igenom befintlig kunskap på nytt när källdokument ändras och användare gör korrigeringar. I båda fallen är det innehållet som gör ett ingrepp nödvändigt.

Låt hämtningen mata nästa uppdatering

Agenten hämtar ett faktum, använder det och lämnar lagret exakt som den hittade det. Om inte systemet fångar vad som hände sedan finns det alltså inget som registrerar om faktumet hjälpte eller ledde agenten in i ännu en återvändsgränd.

Registrera utfallet, källan och eventuella korrigeringar. När vi byggde Brain gjorde vi den arbetshistoriken till en del av det som systemet minns: vilket tillvägagångssätt som lyckades, vilken källa som inte ledde någonstans och vad användaren korrigerade efter att agenten meddelat att den var klar. Brain införlivar den erfarenheten i sina regelbundna wikiuppdateringar, så att senare uppgifter kan dra nytta av den.

Inget av detta syns dock i ett benchmarktest för minnesåtergivning. Sättet att ta reda på om loopen fungerar är att ge agenten en uppgift som den bara kan slutföra med hjälp av minne och räkna hur ofta den slutför den, med kostnad och latens inräknade. Det är vad DolphinBench gör, och det är därför toppresultaten fortfarande ligger mellan 70 och 80.

Så bygger du en agent med beständigt minne med hjälp av Perplexity

Perplexitys Agent API levereras inte med ett självunderhållande minnessystem som Brain. Det säger vi hellre direkt. Men det ger dig de delar av minnet som du behöver: en plats att spara procedurer på, ett sätt att föra kontext vidare mellan dialogturer och verktyg för att läsa från och skriva till ett lager som du själv styr.

Börja med procedurellt minne

En anpassad Skill paketerar instruktioner, procedurer och stödfiler under ett versionsnummer. Ett plattformsteam kan skriva sina driftsättningskontroller, kriterier för återställning och rapportformat en gång och sedan låta applikationer referera till samma Skill. När proceduren ändras laddar teamet upp en ny version.

Källa: X

En Profil går ett steg längre. Profiler sparar agentens modell, instruktioner, verktyg, Skills, anslutningar och körinställningar under ett enda versionerat ID.

Vi lade till båda i september, tillsammans med hanterade anslutningar, så att en projektadministratör kan konfigurera en godkänd GitHub- eller Slack-anslutning en gång och låta applikationer referera till den i stället för att lagra separata autentiseringsuppgifter. När åtkomsten ändras uppdaterar administratören anslutningen på ett ställe.

Varför räknas detta som minne? Vi går återigen tillbaka till köket med den mikrovärmda fisken. Den som kommer härnäst kan följa INGEN FISK utan att ha bevittnat klagomålen.

En Skill gör samma jobb för en agent, med plats för de steg, undantag och kontroller som inte får plats på en mikrovågsugnslucka. Skills skrivs ned, versionshanteras och finns tillgängliga nästa gång uppgiften dyker upp.

Vi använder också Skills för att styra Dreams minnesuppdateringar. Men det en Skill inte gör är att lära sig på egen hand. Instruktionerna ändras när en ny version laddas upp, oavsett om det görs av en person eller en automatiserad process.

Om du vill att agenten ska märka att återställningskontrollen gång på gång misslyckas för en viss tjänst och anpassa sig, är det loopen från sessioner till wiki som beskrevs tidigare.

Du behöver behålla det som hände, komma fram till vad som bör ändras och göra korrigeringen tillgänglig nästa gång. Det kräver de två följande delarna.

För arbetsminnet vidare mellan turerna

Agenten kör en driftsättningskontroll. Du frågar: ”Varför misslyckades det?” En rimlig följdfråga, förutsatt att agenten fortfarande kan se vad ”det” syftar på.

Vårt Agent API stöder två sätt att föra konversationskontexten vidare:

  • Skicka om konversationen själv: Inkludera tidigare meddelanden i nästa begärans input-array. Du bestämmer vad som ska behållas, sammanfattas, maskeras eller tas bort innan du skickar den.
  • Fortsätt från ett slutfört svar: Spara dess ID och skicka det som previous_response_id med nästa meddelande. Vi behåller konversationens tillstånd på serversidan, så att din applikation inte behöver skicka de tidigare turerna igen. Du kan fortsätta från det senaste svaret i kedjan.

Att skicka om ger dig kontroll över vad agenten ser, och att fortsätta via ID besparar dig arbetet med att sätta ihop konversationen igen. Oavsett vilket sätt du väljer anger du eventuella nya instruktioner, verktyg eller modellinställningar som behövs för nästa svar.

Använd din egen episodiska och semantiska lagring

Det här är den del som Agent API lämnar åt dig.

Ett sätt är funktionsanrop. Du definierar verktygen, agenten begär ett anrop och din applikation kör det och returnerar resultatet. För minne är en enkel utgångspunkt en läsoperation innan agenten agerar och en skrivoperation efteråt.

Om du bara loggar den faktauppgift som agenten hämtade vet du fortfarande inte om den hjälpte. Om du loggar resultatet, källan och det som användaren korrigerade har du början på ett episodiskt lager.

Vårt MCP-stöd ger dig ett annat sätt. Om en kompatibel fjärr-MCP-server exponerar de operationer du behöver kan agenten anropa dem utan att du behöver kapsla in var och en som en anpassad funktion.

Våra anslutningar ger agenten tillgång till underlaget bakom minnena. GitHub, Slack, Google Drive, Datadog, Linear och Notion finns i vår hanterade katalog, och du kan lägga till anpassade anslutningar för interna system.

Bestäm slutligen när historiken ska granskas och när den aktuella bilden ska revideras.

Testa vad som överlever en ny session

Avsluta nu konversationen. Starta en ny begäran utan att skicka om de gamla meddelandena eller ange previous_response_id, men ge agenten åtkomst till samma minneslagring. Be den utföra relaterat arbete utan att upprepa korrigeringen.

Om den behöver påminnelsen är du inte klar än.

Bygg några tester för driftsättningsagenten kring det som ska föras vidare:

  • Korrigeringen består: Den hämtar och använder det verifierade återställningskommandot för den berörda tjänsten.
  • Korrigeringen håller sig inom sitt omfång: Den lämnar andra tjänsters procedurer orörda.
  • Ny information ersätter gamla riktlinjer: När kommandot ändras igen använder agenten den aktuella versionen och kan spåra ändringen till dess källa.

Vår kokbok för regressionstestning visar hur du sparar agentens utdata och hämtat underlag, kontrollerar dem mot förväntat beteende och jämför körningar efter att du har ändrat instruktioner eller modeller.

Håll versionerna av modell, Profil och Skill fasta medan du jämför körningar med och utan minne. Starta varje jämförelse från en känd ögonblicksbild av lagringen; annars kan ett test lära agenten svaret på nästa.

När något misslyckas sparar du fallet. Nästa ändring ska behöva klara det.

Eller hoppa över bygget: Brain i Computer

Om det du vill ha är den färdiga loopen snarare än delarna är det Computer som gäller. Brain körs under ytan och lär sig från fyra källor: dina sessioner, anslutna verktyg, filerna och artefakterna du skapar samt dina korrigeringar. Brains bakgrundsuppdateringar förstärker det som fortfarande gäller, reviderar det som har ändrats och markerar inaktuell information.

Du behöver inte bygga den loopen själv. Du gör bara jobbet.

Minne sparar preferenser och detaljer som du har delat. Brain kopplar projekt, personer, beslut och oavslutat arbete till underlaget bakom dem.

Du kan granska vad den har lärt sig i Minnesvyn, följa poster tillbaka till deras källor och redigera eller ta bort dem. Brain använder din egen aktivitet, utesluter inkognitosessioner och har ett eget reglage.

Hos Rho låg till exempel besluten i ett faktureringsprojekt utspridda över Slack, Notion, Jira, Figma och Google Docs. Teamet konfigurerade Computer för att granska ändringar under natten, flagga inkonsekvenser och publicera en morgonöversikt i Slack.

Deras mjukvaruutvecklare Oktawian Jurkiewicz märkte att Computer också byggde upp ett minne för projektet. ”Vi definierade det inte”, säger han. ”Computer listade ut vilka datapunkter den skulle lagra från varje källa.”

Teamet uppger att det har minskat den veckovisa mötestiden från 2,5 timmar till 15 minuter och uppskattar att det har sparat 120 arbetstimmar under det 12 veckor långa projektet.

De 120 timmarna tillskrivs hela arbetsflödet: anslutningar, nattliga körningar och översikten i Slack. Hur mycket av den sparade tiden kom enbart från minnet? Det kan vi ännu inte kvantifiera.

Men det vi kan råda dig till är att, för ditt eget bygge, gå tillbaka till testet från tidigare – kör likvärdiga uppgifter med minneslagret på och av, och jämför sedan slutförandegrad, kostnad och tid, inklusive den tid någon lägger på att korrigera resultatet.

Vanliga frågor om minne för AI-agenter

Kan AI-agenter ha minne?

Ja. AI-agenter kan behålla information mellan sessioner genom lagrade konversationer, fakta, preferenser och återanvändbara procedurer. Systemet måste hämta informationen när den är relevant och uppdatera den när omständigheterna ändras.

Brain i Perplexity Computer bygger till exempel arbetskontext från sessioner, anslutna verktyg, filer och användarkorrigeringar.

Hur mycket RAM använder en AI-agent?

Det finns inget enskilt krav. Om din agent anropar en värdbaserad modell via Perplexity Agent API behöver du inte läsa in modellen i ditt eget RAM. Din applikation och dina lokala verktyg behöver fortfarande minne.

Att köra en modell lokalt är något annat. Med fyra bitar per parameter motsvarar åtta miljarder parametrar ungefär 4 GB rå viktdata. Det faktiska minnesbehovet är högre när du räknar in kvantiseringsoverhead, kontextbearbetning och programvaran som kör modellen.

Vilket är det bästa minnet för en AI-agent?

Den bästa konfigurationen beror på vad agenten behöver föra vidare. Ett konversationstillstånd stöder följdfrågor; episodiska poster bevarar det som hände; semantiskt minne innehåller aktuell kunskap; procedurellt minne tillhandahåller återanvändbara instruktioner.

Det mesta pågående arbete gynnas av en kombination. Vi använder en länkad, källbaserad wiki för Brain. För ditt eget bygge bör du testa om konfigurationen hjälper agenten att slutföra uppgifter, tillämpa korrigeringar och fasa ut inaktuella riktlinjer.