Deep Dive For Power Users

Architektura pamięci Hermes Agent: Honcho i wymienny interfejs pamięci

Hermes Agent

Hermes Agent

@hermesagents

March 29, 2026

9 min czytania

Większość interfejsów czatowych AI, z których korzystałeś, tak naprawdę nie ma pamięci. Mają okno kontekstowe, a to zupełnie co innego. To, co powiedziałeś wcześniej w tej samej rozmowie, model nadal widzi. To, co powiedziałeś w wczorajszej rozmowie, przepadło. Następnego dnia zaczynasz od zera, a asystent przedstawia się jak obcemu.

Hermes Agent jest inny. Ma prawdziwą warstwę pamięci — odrębną od kontekstu rozmowy — która z czasem uczy się rzeczy o Tobie, przenosi je między sesjami i platformami i sprawia, że bot za każdym razem zachowuje się jak ta sama istota. Ten wpis pokazuje, jak to naprawdę działa, które decyzje projektowe mają znaczenie i co zmieniło się wraz z wymiennym interfejsem pamięci w v0.7.0.

Pamięć krótkoterminowa vs długoterminowa

Najpierw rozróżnienie, które ma znaczenie.

Pamięć krótkoterminowa w Hermesie to okno kontekstowe sesji. To wycinek historii rozmowy, którą agent aktualnie prowadzi, zarządzany proaktywną strategią kompresji: kiedy kontekst zbliża się do limitu modelu, Hermes uruchamia rundę podsumowania, która kompresuje starsze tury do strukturyzowanego streszczenia, zachowując ostatnie wymiany dosłownie. Kompresja była dostrajana przez kilka wydań — strukturyzowane podsumowania z iteracyjnymi aktualizacjami w v0.4.0, ochrona ogona budżetu tokenów, konfigurowalny endpoint podsumowania i wsparcie modelu zapasowego. Przy długich rozmowach to po cichu utrzymuje agenta szybkim i tanim, nie gubiąc ważnego kontekstu.

Pamięć długoterminowa to ta ciekawa część. To magazyn faktów, preferencji, korekt i modeli użytkownika, który żyje poza rozmową. Kiedy dzisiaj powiesz botowi na Telegramie „mam na imię Alice", ten fakt zostaje zapisany do pamięci długoterminowej. Jutro, gdy zapytasz o coś na Slacku, fakt zostanie wyciągnięty i wstrzyknięty do kontekstu, zanim agent zobaczy Twoją wiadomość. Model nadal dostaje tylko to, co mieści się w jego oknie, ale okno jest przygotowane rzeczami, które powinien o Tobie wiedzieć.

Pamięć krótkoterminowa to bufor. Pamięć długoterminowa to osoba.

Honcho: czym jest i dlaczego ma znaczenie

Domyślnym dostawcą pamięci długoterminowej w Hermesie jest Honcho, biblioteka zbudowana specjalnie z myślą o pamięci natywnej dla AI. Zadaniem Honcho jest działać za agentem i robić trzy konkretne rzeczy:

  1. 1.Obserwować. Każda wiadomość użytkownika i każda odpowiedź agenta wpływa do Honcho jako strumień zdarzeń. Honcho buduje wewnętrzny model użytkownika z tego strumienia — nie surową historię czatu, lecz ustrukturyzowane fakty i preferencje wyciągnięte z rozmowy.
  2. 2.Wnioskować o użytkowniku. Honcho uruchamia małą „dialektyczną" warstwę, która próbuje zbudować spójny obraz tego, kim jesteś, czego chcesz i co poprawiłeś. To nie ekstrakcja słów kluczowych — to ciągły model mentalny użytkownika.
  3. 3.Wstrzykiwać. Przy każdej nowej turze Honcho produkuje krótki fragment kontekstu podsumowujący to, co uważa za ważne o Tobie, a Hermes wkleja go przed promptem systemowym. Fragment zmienia się w miarę jak Honcho uczy się więcej.

Dwa detale zasługują na uwagę, bo łatwo je przeoczyć.

Po pierwsze, zapisy Honcho są asynchroniczne. Agent nie blokuje się na zapisie pamięci. Odpowiada, a warstwa pamięci przetwarza wymianę w tle. Oznacza to, że długie rozmowy nie płacą karą latencji za aktualizacje pamięci, a awaria backendu pamięci nie zatrzymuje bota — tracisz aktualizacje podczas awarii, ale asystent dalej rozmawia.

Po drugie, odczyt Honcho jest celowo utrzymywany poza cachowanym prefiksem systemowym. Funkcja cache'owania promptu Anthropic (intensywnie używana z modelami jak Claude Sonnet 4.6) chce, żeby prompt systemowy był stabilny między turami, by trafiał w cache. Fragment wstrzyknięty przez Honcho zmienia się co turę, więc Hermes celowo dodaje go po cachowanej części systemowej. Cache nadal działa dla statycznych części; dynamiczna warstwa pamięci nadal działa dla tych, które się zmieniają. To rodzaj mechanicznego kompromisu, który nie trafia do notatek wydania, ale decyduje, czy Twój miesięczny rachunek to 50 czy 500 dolarów.

Izolacja wieloużytkownikowa w trybie bramki

Domyślna bramka Hermes przepuszcza wielu użytkowników przez ten sam proces agenta. Pamięć długoterminowa musi być per użytkownik, bo inaczej alergie Alice wylądują w sugestiach kulinarnych Boba. Wydanie v0.3.0 dodało porządną izolację wieloużytkownikową dla Honcho wewnątrz bramki, co w praktyce oznacza:

  • Każdy identyfikator użytkownika bramki mapuje się na osobnego peera Honcho, a zapisy pamięci są scopowane per peer.
  • Sesje czatów grupowych domyślnie dziedziczą sesje per użytkownik, więc współdzielony kanał nadal zapisuje oddzielne strumienie pamięci dla każdego uczestnika.
  • Izolacja pamięci powiązana z profilem (v0.5.0/v0.6.0) oznacza, że jeśli uruchamiasz wiele profili Hermesa na tej samej maszynie, pamięć każdego profilu jest osobnym wszechświatem. Przełączanie profili nie przecieka z jednej persony do drugiej.

Nic z tego nie jest widoczne dla użytkowników. To wszystko jest powodem, dla którego bot przypadkowo nie pamięta niewłaściwej osoby.

Wymienny interfejs pamięci (v0.7.0)

Pierwsze pięć wydań Hermesa miało Honcho zahardkodowane. W v0.7.0 warstwa pamięci została zrefaktorowana do prawdziwego interfejsu dostawcy — małego Pythonowego ABC, który może zaimplementować dowolny backend pamięci. Zmiana jest architektonicznie skromna, a praktycznie ogromna.

Interfejs pozwala wymieniać backendy pamięci bez dotykania jądra Hermesa:

  • Honcho to dostawca referencyjny (i nadal domyślny). W pełni wyposażony, buduje prawdziwy model użytkownika i prawidłowo obsługuje izolację wieloużytkownikową.
  • Supermemory został dodany w v0.8.0 jako drugi pełnoprawny dostawca, z obsługą wielu kontenerów, konfigurowalnymi trybami wyszukiwania i szablonowaniem tożsamości.
  • mem0, OpenViking, RetainDB, Hindsight i ByteRover — wszystkie mają społecznościowe pluginy pamięci w systemie pluginów Hermesa, o różnej głębokości integracji.
  • Możesz też napisać własny. ABC jest mały: zaimplementuj write(), recall(), kilka hooków cyklu życia i zarejestruj jako plugin.

Wbudowany dostawca pamięci — domyślny bez zależności, gdy nie masz nic skonfigurowanego — to oparty na SQLite magazyn faktów, który pokrywa podstawy: zapis faktów, odczyt po trafności, scopowanie per użytkownik. Nie tak mądry jak Honcho, ale nie wymaga zewnętrznej usługi, a dla osobistego asystenta na VPS-ie za 5 dolarów często jest to wszystko, czego potrzebujesz.

Co to po cichu odblokowuje

Wymienna pamięć to rodzaj zmiany architektonicznej, która w notatkach do wydania wygląda jak sprzątanie. „Pamięć zrefaktorowana do interfejsu dostawcy" to nie nagłówek. Ale to, co w rzeczywistości robi, to oddzielenie pytania „co asystent AI powinien o Tobie pamiętać" od pytania „jak działa Hermes."

Możesz teraz zastąpić Honcho backendem pamięci dostosowanym do Twojego przypadku użycia — vector store dla tych, którzy chcą semantycznego wyszukiwania w osobistej bazie wiedzy, baza grafowa dla tych, którzy chcą jawnych relacji między encjami, czysto lokalne SQLite dla tych, którzy nie chcą, by dane pamięci opuszczały ich maszynę, wewnętrzna firmowa usługa pamięci dla zespołów. Agent się nie zmienia. Zmienia się tylko to, co stoi za interfejsem memory.

To właściwa abstrakcja dla projektu, który chce przetrwać kilka lat. Pamięć jest osobista, a właściwy backend pamięci dla Ciebie niekoniecznie jest właściwy dla kogoś innego. Zadaniem Hermesa jest być dobrym sąsiadem dla jakiejkolwiek warstwy pamięci, którą podłączysz, i nie przeszkadzać.

Więcej

Bądź na bieżąco

Aktualności społeczności o wydaniach Hermes Agent, nowych umiejętnościach i integracjach. Bez spamu, wypisz się kiedy chcesz.