# Minnesmodellen SUMMARY: Hur minnen är strukturerade — kategorier, nycklar, taggar, prioriteringar, källor, verifiering. Minnesmodellen Synapses minnesmodell är utformad för LLM-agenter — tillräckligt strukturerad för pålitlig återkallning, tillräckligt flexibel för alla domäner. Minnesanatomi [CODE BLOCK] Fält | Fält | Typ | Obligatorisk | Beskrivning | |-------|------|----------|-------------| | | sträng | auto | Unikt ID (memxxx) | | | enum | ✅ | En av 8 kategorier | | | sträng | ✅ | Stabil identifierare (används för uppdateringar) | | | sträng | ✅ | Minnesinnehållet (valfri text) | | | sträng[] | – | För sökning och filtrering | | | enum | – | low, normal, high, critical (standard: normal) | | | enum | auto | user, agent (vem som lagrade det) | | | bool | auto | Har en människa verifierat detta? | | | flyttal | – | 0.0 till 1.0 (standard: 1.0 för user, 0.7 för agent) | | | tidsstämpel | – | När minnet ska glömmas | | | sträng | auto | Vilken mind som äger detta | | | tidsstämpel | auto | Först lagrad | | | tidsstämpel | auto | Senast ändrad | Kategorier Åtta kategorier täcker vanliga användningsområden för LLM-agenter: | Kategori | Syfte | Exempel på innehåll | |----------|---------|-----------------| | | Vem användaren är | "User is Michael Schäfer, software engineer in Berlin" | | | Användarinställningar | "Prefers concise technical responses" | | | Verifierbara fakta | "Office is in Berlin, timezone Europe/Berlin" | | | Projektstatus | "Synapse v1.5.0 deployed, working on v1.6.0 docs" | | | Användarens färdigheter | "Advanced Python, 10+ years" | | | Tidigare fel | "Forgot to bump npm version — CI failed" | | | Sessionskontext | "Currently reviewing PR #42" | | | Diverse anteckningar | "Try Redis for caching next sprint" | Nycklar: stabila identifierare Fältet är kritiskt — det är så ni uppdaterar minnen utan att skapa dubbletter. [CODE BLOCK] Nyckelregler: - Måste vara unik inom (category, mind) - Använd - Prefixa med kategori för tydlighet: , - Håll stabil — ändra inte nycklar efter skapandet Taggar: för sökning Taggar möjliggör snabb filtrering och sökning: [CODE BLOCK] Bästa praxis för taggar: - 2–5 taggar per minne (överätta inte) - Gemener för konsekvens - Använd projektnamn, ämnen, tekniker - Taggar är skiftesokänsliga Prioriteringsnivåer | Prioritering | När den ska användas | Återkallningsbeteende | |----------|-------------|-----------------| | | Identitet, juridik, oåterkalleligt | Alltid högst upp i återkallning | | | Aktiva projekt, nyckelinställningar | Framträdande i återkallning | | | De flesta minnen (standard) | Standardordning för återkallning | | | Efemärt, trevligt att veta | Kan sammanfattas | sorterar efter prioritet (kritisk först), sedan efter aktualitet. Källa: användare vs agent Minnen taggas med : - — lagrad av en människa (via JWT eller mänskligt gränssnitt) - — lagrad av en LLM-agent (via Mind Key) Detta påverkar: - Verifiering: -minnen verifieras automatiskt, -minnen inte - Konfidens: standard 1.0, 0.7 - Återkallning: markerar overifierade minnen med "(unverified)" > [!NOTE] > Behandla -källade minnen med lämplig skepsis. De kan vara härledda > eller antagna snarare än direkt angivna av användaren. Verifiering Flaggan indikerar att en människa har bekräftat minnet: - -minnen: auto-verifierade () - -minnen: standard overifierade () Verifiera minnen via: [CODE BLOCK] > [!NOTE] > Verifiering kräver JWT (mänsklig autentisering), inte Mind Key > (agent-autentisering). Detta säkerställer att endast människor kan markera > minnen som verifierade. Konfidens Fältet (0.0 till 1.0) indikerar hur pålitligt minnet är: - 1.0 — direkt angivet av användare - 0.7 — härlett av agent - 0.5 — osäkert, behöver verifiering - 0.0 — uttryckligen tvivelaktigt Sätt konfidens vid lagring: [CODE BLOCK] Utgång Sätt för tidskänsliga minnen: [CODE BLOCK] Utgångna minnen returneras inte av (men finns fortfarande i DB). Använd för att se minnen som löper ut snart. Minneslivscykel [CODE BLOCK] Återkallningsbeteende returnerar en oformaterad textsammanfattning optimerad för LLM-kontext: [CODE BLOCK] - Sorterat efter prioritet (kritisk → låg), sedan efter aktualitet - Overifierade minnen markerade med - Taggar inkluderade för kontext - Oformaterad text (ingen JSON-tolkning behövs) Nästa steg - Memory API - Minnesbästa praxis - FTS5-sökning