# Model pamięci SUMMARY: Jak ustrukturyzowane są wspomnienia — kategorie, klucze, tagi, priorytety, źródła, weryfikacja. Model pamięci Model pamięci Synapse jest zaprojektowany dla agentów LLM — na tyle ustrukturyzowany, by zapewnić niezawodne przypominanie, na tyle elastyczny, by pasował do każdej domeny. Anatomia wspomnienia [CODE BLOCK] Pola | Pole | Typ | Wymagane | Opis | |-------|------|----------|-------------| | | string | auto | Unikalny identyfikator (memxxx) | | | enum | ✅ | Jedna z 8 kategorii | | | string | ✅ | Stabilny identyfikator (używany do aktualizacji) | | | string | ✅ | Treść wspomnienia (dowolny tekst) | | | string[] | – | Do wyszukiwania i filtrowania | | | enum | – | low, normal, high, critical (domyślnie: normal) | | | enum | auto | user, agent (kto zapisał) | | | bool | auto | Czy człowiek to zweryfikował? | | | float | – | 0.0-1.0 (domyślnie: 1.0 dla użytkownika, 0.7 dla agenta) | | | timestamp | – | Kiedy zapomnieć to wspomnienie | | | string | auto | Do którego umysłu należy | | | timestamp | auto | Pierwszy zapis | | | timestamp | auto | Ostatnia modyfikacja | Kategorie Osiem kategorii pokrywa typowe przypadki użycia agentów LLM: | Kategoria | Przeznaczenie | Przykładowa treść | |----------|---------|-----------------| | | Kim jest użytkownik | „User is Michael Schäfer, software engineer in Berlin" | | | Preferencje użytkownika | „Prefers concise technical responses" | | | Weryfikowalne fakty | „Office is in Berlin, timezone Europe/Berlin" | | | Status projektu | „Synapse v1.5.0 deployed, working on v1.6.0 docs" | | | Umiejętności użytkownika | „Advanced Python, 10+ years" | | | Błędy z przeszłości | „Forgot to bump npm version — CI failed" | | | Kontekst sesji | „Currently reviewing PR #42" | | | Różne notatki | „Try Redis for caching next sprint" | Klucze: stabilne identyfikatory Pole jest kluczowe — to sposób aktualizacji wspomnień bez tworzenia duplikatów. [CODE BLOCK] Zasady kluczy: - Musi być unikalny w obrębie (kategoria, umysł) - Używać - Prefiksować kategorią dla jasności: , - Utrzymywać stabilność — nie zmieniać kluczy po utworzeniu Tagi: do wyszukiwania Tagi umożliwiają szybkie filtrowanie i wyszukiwanie: [CODE BLOCK] Najlepsze praktyki tagowania: - 2-5 tagów na wspomnienie (bez przesady) - Małe litery dla spójności - Używać nazw projektów, tematów, technologii - Tagi są niewrażliwe na wielkość liter Poziomy priorytetu | Priorytet | Kiedy stosować | Zachowanie recall | |----------|-------------|-----------------| | | Tożsamość, kwestie prawne, nieodwracalne | Zawsze na górze recall | | | Aktywne projekty, kluczowe preferencje | Wyeksponowane w recall | | | Większość wspomnień (domyślny) | Standardowa kolejność recall | | | Efemeryczne, warto wiedzieć | Mogą zostać podsumowane | sortuje po priorytecie (krytyczne najpierw), a następnie po aktualności. Źródło: użytkownik czy agent Wspomnienia są oznaczane : - — zapisane przez człowieka (przez JWT lub interfejs ludzki) - — zapisane przez agenta LLM (przez Mind Key) To wpływa na: - Weryfikację: wspomnienia są automatycznie weryfikowane, — nie - Pewność: domyślnie 1.0, 0.7 - Recall: oznacza niezweryfikowane wspomnienia jako „(unverified)" > [!NOTE] > Należy podchodzić do wspomnień ze źródła z odpowiednim sceptycyzmem. Mogą > być wnioskowane lub zakładane, a nie bezpośrednio zadeklarowane przez użytkownika. Weryfikacja Flaga wskazuje, że człowiek potwierdził wspomnienie: - Wspomnienia : automatycznie zweryfikowane () - Wspomnienia : domyślnie niezweryfikowane () Weryfikacja wspomnień: [CODE BLOCK] > [!NOTE] > Weryfikacja wymaga JWT (autoryzacja człowieka), a nie Mind Key (autoryzacja > agenta). Zapewnia to, że tylko ludzie mogą oznaczać wspomnienia jako zweryfikowane. Pewność Pole (0.0-1.0) wskazuje, jak wiarygodne jest wspomnienie: - 1.0 — bezpośrednio zadeklarowane przez użytkownika - 0.7 — wnioskowane przez agenta - 0.5 — niepewne, wymaga weryfikacji - 0.0 — wprost wątpliwe Ustawianie pewności przy zapisie: [CODE BLOCK] Wygaśnięcie Dla wspomnień wrażliwych czasowo należy ustawić : [CODE BLOCK] Wygasłe wspomnienia nie są zwracane przez (ale nadal istnieją w bazie). Należy użyć , aby zobaczyć wspomnienia wygasające wkrótce. Cykl życia wspomnienia [CODE BLOCK] Zachowanie recall zwraca podsumowanie w postaci zwykłego tekstu, zoptymalizowane dla kontekstu LLM: [CODE BLOCK] - Posortowane po priorytecie (critical → low), a następnie po aktualności - Niezweryfikowane wspomnienia oznaczone - Tagi dołączone dla kontekstu - Zwykły tekst (bez parsowania JSON) Następne kroki - Memory API - Najlepsze praktyki pamięci - Wyszukiwanie FTS5