[{"data":1,"prerenderedAt":628},["ShallowReactive",2],{"blog-zep-de":3},{"slug":4,"published":5,"minutes":6,"category":7,"tags":8,"keywords":14,"about":23,"sources":27,"cover":46,"og":47,"expertise":48,"locales":49,"lang":51,"title":53,"description":54,"coverAlt":55,"metaTitle":56,"takeaways":57,"faq":63,"toc":76,"blocks":101,"others":373},"zep","2026-10-06",11,"rag",[9,10,11,12,13],"Agent memory","Knowledge graph","Temporal graph","Context engineering","RAG",[15,16,17,18,19,20,21,22],"zep ai","zep agent memory","graphiti knowledge graph","zep pricing","zep vs mem0","long-term memory for agents","temporal knowledge graph","zep cloud",[24],{"name":25,"url":26},"Zep","https:\u002F\u002Fwww.getzep.com\u002F",[28,31,34,37,40,43],{"title":29,"url":30},"Zep pricing: plans, credits and limits","https:\u002F\u002Fwww.getzep.com\u002Fpricing",{"title":32,"url":33},"Zep documentation","https:\u002F\u002Fhelp.getzep.com\u002F",{"title":35,"url":36},"Graphiti on GitHub","https:\u002F\u002Fgithub.com\u002Fgetzep\u002Fgraphiti",{"title":38,"url":39},"Graphiti product page","https:\u002F\u002Fwww.getzep.com\u002Fplatform\u002Fgraphiti\u002F",{"title":41,"url":42},"Announcing a new direction for Zep's open-source strategy","https:\u002F\u002Fwww.getzep.com\u002Fblog\u002Fannouncing-a-new-direction-for-zeps-open-source-strategy\u002F",{"title":44,"url":45},"Graphiti: temporal knowledge graphs for AI agents (arXiv)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2501.13956","\u002Fimages\u002Fblog\u002Fzep\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fzep\u002Fog.jpg","ai-engineer",[50,51,52],"en","de","hu","Zep-Review: Agenten-Memory auf einem temporalen Graphen","Zep ist eine gehostete Agenten-Memory-API auf einem temporalen Knowledge Graph: Credits beim Schreiben, Retrieval gratis, Flex ab 125 Dollar im Monat, Graphiti als selbst hostbarer Teil.","Fünf Kreise in einer Zickzackkette mit Abzweigung, kleine Quadrate fallen auf jeden, darunter Scheiben.","Zep-Review: Memory, Credits, Self-Hosting · Balázs Csorba",[58,59,60,61,62],"Zep ist eine gehostete Agenten-Memory-API, die Aussagen in einem temporalen Knowledge Graph speichert und den Kontext zurückgibt, den ein Assistent in der nächsten Runde sehen soll.","Credits werden nur beim Schreiben fällig, eine Episode bis 350 Byte kostet ein Credit, während Retrieval, Speicherung, Threads und Benutzer gratis sind.","Die Self-Serve-Tarife sind Free mit 10.000 Credits, Flex für 125 Dollar mit 50.000 Credits und Flex Plus für 375 Dollar mit 200.000 Credits, SOC 2 Type II und ein HIPAA-BAA bleiben der Enterprise-Stufe vorbehalten.","Zep Community Edition wurde im April 2025 eingestellt, deshalb ist Graphiti der einzige Teil, den man selbst betreiben kann.","Die Extraktion läuft bei jedem Schreiben über ein Modell, wodurch die Kosten davon abhängen, wie gesprächig der Agent ist, und Extraktionsfehler zu still falschem Kontext werden.",[64,67,70,73],{"q":65,"a":66},"Wie rechnet Zep Nutzung ab?","Nach Credits beim Schreiben: eine Episode bis 350 Byte kostet ein Credit, eine Episode von 640 Byte zwei und eine von 1.200 Byte vier. Retrieval, Speicherung, Threads, Benutzer und Graph-Speicher kosten nichts, ein leseintensiver Agent läuft also billig weiter.",{"q":68,"a":69},"Lässt sich Zep selbst hosten?","Nicht als Produkt. Zep Community Edition wurde im April 2025 eingestellt, der Code liegt in einem Legacy-Ordner; Graphiti, die temporale Graph-Bibliothek unter Apache-2.0, läuft lokal, und der volle Dienst ist in der eigenen VPC nur über die Enterprise-Stufe erhältlich.",{"q":71,"a":72},"Was kostet Zep?","Die Gratis-Stufe gibt 10.000 Credits im Monat, Flex kostet 125 Dollar im Monat für 50.000 Credits mit Überlauf zu 25 Dollar pro 10.000, Flex Plus 375 Dollar für 200.000 Credits. Der Enterprise-Preis wird verhandelt und ergänzt SOC 2 Type II, ein HIPAA-BAA und Deployment-Optionen.",{"q":74,"a":75},"Was unterscheidet Zep von einem Vektorspeicher für Chat-Verläufe?","Ein Vektorspeicher liefert, was textlich ähnlich ist, einschließlich abgelöster Aussagen, während Zep Entitäten und Relationen mit Gültigkeitsfenstern speichert, sodass Retrieval liefern kann, was jetzt wahr ist und was sich geändert hat. Der Preis dafür ist ein Modell-Aufruf bei jedem Schreiben, dessen Fehler zu Kontext werden.",[77,80,83,86,89,92,95,98],{"id":78,"title":79},"what-it-is","Was es ist",{"id":81,"title":82},"how-it-works","Wie es funktioniert",{"id":84,"title":85},"getting-started","Erste Schritte",{"id":87,"title":88},"performance","Performance und Kosten",{"id":90,"title":91},"pricing","Preise",{"id":93,"title":94},"where-it-shingles","Wo es scheuert",{"id":96,"title":97},"verdict","Fazit",{"id":99,"title":100},"sources","Quellen",[102,110,113,116,136,154,155,158,167,170,171,174,176,179,186,187,190,238,241,249,252,253,256,266,267,270,315,318,324,325,328,341,345,346],{"type":103,"content":104},"paragraph",[105,106],"Zep ist ein Agenten-Memory-Dienst: die Anwendung schickt Nachrichten und Aussagen, der Dienst führt pro Benutzer einen temporalen Knowledge Graph, und bei jedem Aufruf liefert er den Kontext, den ein Assistent als Nächstes sehen soll. ",{"tag":107,"children":108},"strong",[109],"Er ist der richtige Kauf für ein Team, dessen Agenten daran scheitern, dass sie vergessen, und der falsche für ein Team, das alles selbst betreiben muss, denn der einzige selbst hostbare Teil ist die Bibliothek Graphiti.",{"type":103,"content":111},[112],"Der Dienst sitzt zwischen Anwendung und Modell und ersetzt selbst gebaute Summary-Buffer, Vektorspeicher voller alter Chat-Protokolle und die Memory-Helfer in LangChain und LlamaIndex. Konkurrenz sind Mem0, LangMem, ein Postgres-Tisch plus Embeddings und die Long-Term-Memory-Endpunkte der Modell-Anbieter; der Unterschied: Zep speichert Aussagen mit Gültigkeitsbeginn und -ende statt als flache Liste vergangener Nachrichten.",{"type":114,"level":115,"id":78,"text":79},"heading",2,{"type":103,"content":117},[118,119,123,124,127,128,131,132,135],"Das Produkt ist eine verwaltete API: ",{"tag":120,"children":121},"code",[122],"user.add"," für dauerhafte Aussagen, ",{"tag":120,"children":125},[126],"thread.create"," und ",{"tag":120,"children":129},[130],"thread.add_messages"," für Gespräche, ",{"tag":120,"children":133},[134],"graph.get_user_context"," für Retrieval. Gearbeitet wird beim Eingang: ein Extraktionsschritt macht aus jeder Episode Entitäten, Relationen und Beobachtungen mit Zeitstempel, und der Retrieval montiert einen Kontextblock samt der ihn tragenden Fakten. Die Open-Source-Hälfte ist Graphiti, eine Apache-2.0-Bibliothek, die dieselbe zeitliche Graphenpflege erledigt, inklusive inkrementeller Aktualisierung auf Fakten-Ebene statt eines nächtlichen Voll-Reindex.",{"type":137,"ordered":138,"items":139},"list",false,[140,142,144,146,148,150,152],[141],"Lizenz und Eigentümer: Graphiti ist Apache-2.0 und wird von Zep Software gepflegt; der Zep-Memory-Dienst selbst ist ein geschlossenes, gehostetes Produkt.",[143],"Self-Hosting: Zep Community Edition wurde im April 2025 eingestellt und der Code in einen Legacy-Ordner verschoben, deshalb läuft die Graph-Engine lokal, der volle Dienst aber nicht.",[145],"Abrechnung: eine Credit pro Episode bis 350 Byte, eine weitere je weiteren 350 Byte oder Teil davon, und ein Achtel-Credit pro Webhook-Aufruf.",[147],"Nicht abgerechnet: Retrieval, Speicherung, Threads, Benutzer und Graph-Speicher kosten nichts, ein leseintensiver Agent bleibt also billig in Betrieb.",[149],"Performance: der Anbieter meldet p95-Retrievallatenz von 148 ms bei 10.000 Knoten und 168 ms bei 100 Millionen Knoten.",[151],"Benchmarks: vom Anbieter gemeldet 94,7 Prozent auf LoCoMo und 90,2 Prozent auf LongMemEval, zwei Memory-Benchmarks mit langen Gesprächen.",[153],"Deployment: Cloud, Cloud mit kundenverwalteten Schlüsseln oder Bring-Your-Own-Cloud in der VPC des Kunden; SOC 2 Type II und ein HIPAA-BAA gehören zur Enterprise-Stufe.",{"type":114,"level":115,"id":81,"text":82},{"type":103,"content":156},[157],"Jede gesendete Nachricht oder Aussage ist eine Episode. Ein Extraktionsschritt lässt ein Modell Entitäten und Relationen erkennen, schreibt sie mit Gültigkeitsfenster in den Graph und berührt nur die Knoten, die diese Episode betrifft: eine Korrektur schließt das vorherige Intervall, statt es zu überschreiben. Der Retrieval läuft danach durch den Graph rund um das Thema der aktuellen Frage, nimmt die weiterhin gültigen Fakten und die jüngsten Episoden und liefert einen Kontextstring innerhalb eines Token-Budgets.",{"type":159,"attrs":160,"inner":164,"caption":165},"diagram",{"viewBox":161,"role":162,"aria-labelledby":163},"0 0 760 300","img","d-zep-t d-zep-d","\u003Ctitle id=\"d-zep-t\">Wie eine Aussage in den Prompt kommt\u003C\u002Ftitle>\u003Cdesc id=\"d-zep-d\">Von der Anwendung geschriebene Nachrichten und Aussagen werden in einen benutzerspezifischen Context Graph aus Entitäten und Beziehungen extrahiert, jeweils mit einem Gültigkeitsfenster. Bei jedem Aufruf durchläuft der Retrieval-Aufruf diesen Graphen, überschrittene Aussagen auslässt und einen Kontextblock samt belegender Fakten zurückgibt.\u003C\u002Fdesc>\u003Cdefs>\u003Cmarker id=\"ah-n\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"7\" markerHeight=\"7\" orient=\"auto-start-reverse\">\u003Cpath d=\"M0 0L10 5L0 10z\" class=\"d-head\" \u002F>\u003C\u002Fmarker>\u003Cmarker id=\"ah-na\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"7\" markerHeight=\"7\" orient=\"auto-start-reverse\">\u003Cpath d=\"M0 0L10 5L0 10z\" class=\"d-head-accent\" \u002F>\u003C\u002Fmarker>\u003C\u002Fdefs>\u003Crect x=\"270\" y=\"18\" width=\"220\" height=\"72\" rx=\"12\" class=\"d-accent\" \u002F>\u003Ctext x=\"380\" y=\"48\" text-anchor=\"middle\" class=\"d-text\">Context Graph\u003C\u002Ftext>\u003Ctext x=\"380\" y=\"72\" text-anchor=\"middle\" class=\"d-small\">Entitäten und Fakten über Zeit\u003C\u002Ftext>\u003Crect x=\"10\" y=\"188\" width=\"140\" height=\"54\" rx=\"10\" class=\"d-box\" \u002F>\u003Ctext x=\"80\" y=\"221\" text-anchor=\"middle\" class=\"d-text\">Alice\u003C\u002Ftext>\u003Crect x=\"200\" y=\"223\" width=\"140\" height=\"54\" rx=\"10\" class=\"d-box\" \u002F>\u003Ctext x=\"270\" y=\"256\" text-anchor=\"middle\" class=\"d-text\">CRM-Migration\u003C\u002Ftext>\u003Crect x=\"420\" y=\"223\" width=\"140\" height=\"54\" rx=\"10\" class=\"d-box\" \u002F>\u003Ctext x=\"490\" y=\"256\" text-anchor=\"middle\" class=\"d-text\">Snowflake\u003C\u002Ftext>\u003Crect x=\"610\" y=\"188\" width=\"140\" height=\"54\" rx=\"10\" class=\"d-box\" \u002F>\u003Ctext x=\"680\" y=\"221\" text-anchor=\"middle\" class=\"d-text\">Q3-Termin\u003C\u002Ftext>\u003Cpath d=\"M380 92 L80 181\" class=\"d-line\" marker-end=\"url(#ah-n)\" \u002F>\u003Cpath d=\"M380 92 L270 216\" class=\"d-line\" marker-end=\"url(#ah-n)\" \u002F>\u003Cpath d=\"M380 92 L490 216\" class=\"d-line\" marker-end=\"url(#ah-n)\" \u002F>\u003Cpath d=\"M380 92 L680 181\" class=\"d-line\" marker-end=\"url(#ah-n)\" \u002F>\u003Cpath d=\"M150 229 L196 245\" class=\"d-dash d-line\" \u002F>\u003Cpath d=\"M340 250 L416 250\" class=\"d-dash d-line\" \u002F>\u003Cpath d=\"M560 245 L606 229\" class=\"d-dash d-line\" \u002F>\u003Ctext x=\"380\" y=\"244\" text-anchor=\"middle\" class=\"d-small\">arbeitet an\u003C\u002Ftext>\u003Ctext x=\"380\" y=\"294\" text-anchor=\"middle\" class=\"d-small\">abgelöst durch\u003C\u002Ftext>\u003Cpath d=\"M270 44 L214 44 L214 160 L80 160 L80 181\" class=\"d-line-accent\" marker-end=\"url(#ah-na)\" \u002F>\u003Ctext x=\"206\" y=\"120\" text-anchor=\"end\" class=\"d-small\">get_user_context\u003C\u002Ftext>",[166],"Der Graph wird pro Benutzer und pro Thread gepflegt, und der Retrieval montiert einen Kontextblock statt einer nach Ähnlichkeit sortierten Chunk-Liste.",{"type":103,"content":168},[169],"Die entscheidende Designentscheidung ist temporal und nicht vektorbasiert. Eine Aussage hat eine Lebensdauer, deshalb beantwortet der Graph, was jetzt wahr ist, was sich wann geändert hat und welche von zwei widersprüchlichen Aussagen die andere ablöst. Ein zusammenfassender Puffer kann das ohne ein zweites System nicht, und reines Vector-Retrieval liefert, was textlich ähnlich ist, einschließlich der veralteten Version einer Aussage, die man letzte Woche korrigiert hat.",{"type":114,"level":115,"id":84,"text":85},{"type":103,"content":172},[173],"Das Quickstart der gehosteten Version besteht aus vier Aufrufen. Das Snippet unten speichert eine Aussage, öffnet einen Thread, hängt eine Nachricht an und fragt den Kontext ab, den ein Assistent erhalten soll.",{"type":120,"code":175},"from zep_cloud.client import Zep\n\nclient = Zep(api_key=\"zep-...\")\n\n# durable facts, extracted into the context graph\nclient.user.add(user_id=\"alice\", fact=\"Alice leads the migration off the legacy CRM\")\n\n# episodic history: writes are charged as credits by size, retrieval is free\nclient.thread.create(thread_id=\"t-1\", user_id=\"alice\")\nclient.thread.add_messages(\n    thread_id=\"t-1\",\n    messages=[{\"role\": \"user\", \"content\": \"Where did we stop on the CRM migration?\"}],\n)\n\n# what the assistant should see on this turn\ncontext = client.graph.get_user_context(user_id=\"alice\", max_facts=25)\nprint(context.context)",{"type":103,"content":177},[178],"Zwei Dinge verhalten sich anders als in einem Vektorspeicher. Erstens ist der Eingang asynchron und kostenpflichtig, deshalb ist das natürliche Muster, Nachrichten beim Auflaufen zu schicken und Kontext einmal pro Runde zu lesen. Zweitens liefert der Retrieval Fließtext mit den tragenden Fakten statt Chunk-Ids, was die Zusammenfassungsentscheidung aus dem Prompt in den Dienst verlegt; bequem, aber die Qualität dessen, was das Modell jetzt sieht, ist nun zu einem guten Teil die Extraktionsqualität von Zep und nicht mehr nur der eigene Prompt.",{"type":180,"variant":181,"title":182,"body":183},"callout","tip","Memory-Schreiben sind Modell-Aufrufe",[184],[185],"Jede Episode wird von einem Modell extrahiert, bevor sie den Graph erreicht, deshalb verbrennt ein geschwätiger Agent, der Rohdaten aus Tool-Ausgaben hineinschickt, Credits und erbt vor allem das, was der Extraktor für eine Tatsache hält. Nachrichten schicken statt Tool-Dumps, die Zahl abgerufener Fakten pro Aufruf begrenzen, und nach den ersten hundert Runden nachlesen, was der Dienst über einen Benutzer glaubt.",{"type":114,"level":115,"id":87,"text":88},{"type":103,"content":188},[189],"Kosten sind Credits, und Credits sind Byte: eine 700-Byte-Nachricht kostet zwei Credits, Flex mit 50.000 Credits im Monat fasst also etwa 25.000 durchschnittliche Nachrichten, bevor die Überlauf-Rechnung mit 25 Dollar pro 10.000 Credits kommt. Ungewöhnlich ist, dass Retrieval nicht abgerechnet wird, denn genau diesen Aufruf macht ein Agent in jeder Runde; gezahlt wird nur, wenn Memory geschrieben wird.",{"type":191,"head":192,"rows":201},"table",[193,195,197,199],[194],"Operation",[196],"Credit-Kosten",[198],"Wann abgerechnet",[200],"Worauf achten",[202,211,220,229],[203,205,207,209],[204],"Episode bis 350 Byte",[206],"1",[208],"Bei jedem Schreiben: Nachricht, Aussage oder JSON-Payload",[210],"Rohes Tool-Ergebnis in Nachrichten ist der übliche Überschreiter",[212,214,216,218],[213],"Weitere 350 Byte",[215],"+1",[217],"Pro Episode, aufgerundet",[219],"Eine Episode von 1.200 Byte kostet schon 4 Credits",[221,223,225,227],[222],"Webhook-Aufruf",[224],"1\u002F8",[226],"Wo Webhooks aktiviert sind",[228],"Red automatisierte Abläufe summieren sich still",[230,232,234,236],[231],"Retrieval, Speicher, Benutzer",[233],"0",[235],"Nie",[237],"Leseintensive Agenten bleiben billig",{"type":103,"content":239},[240],"Die Self-Serve-Tarife sind Free mit 10.000 Credits im Monat, Flex für 125 Dollar mit 50.000 Credits und Flex Plus für 375 Dollar mit 200.000 Credits, mit Überlauf zu 25 Dollar pro 10.000 beziehungsweise 75 Dollar pro 40.000 Credits. Die Latenzzahlen stammen vom Anbieter: p95-Retrieval von 148 ms bei 10.000 Knoten und 168 ms bei 100 Millionen, also kein sichtbares Abfallen mit der Größe, und nichts über die Latenz des darvorlaufenden Extraktionsschritts.",{"type":137,"ordered":138,"items":242},[243,245,247],[244],"Den Tarif nach Schreibvorgängen bemessen und nicht nach Lesevorgängen: Nachrichten pro Tag mal durchschnittliche Byte mal Credits mal dreißig.",[246],"Rohes Tool-Material entfernen, bevor es Episode wird; ein zusammengefasstes Tool-Ergebnis kostet einen Bruchteil eines Transkripts.",[248],"Ein Fakten-Budget für den Retrieval setzen, damit der Kontextblock nicht zu einem System-Prompt wächst, den niemand liest.",{"type":103,"content":250},[251],"Nichts davon ist unüblich für einen Memory-Anbieter, sie rechnen alle Schreibvorgänge ab und versprechen billige Lesevorgänge. Das spezifische Risiko liegt im Extraktionsschritt, denn was der Extraktor übersieht, lässt sich später nicht abrufen: über die rohen Nachrichten gibt es, sobald sie zu Fakten reduziert sind, keinen zweiten Durchgang mehr.",{"type":114,"level":115,"id":90,"text":91},{"type":103,"content":254},[255],"Die Preisliste zeigt kreditbasierte Self-Serve-Tarife und einen verhandelten Enterprise-Tarif. Der bezahlte Einstieg auf der aktuellen Seite ist Flex für 125 Dollar im Monat, darunter gibt es nur noch die Gratis-Stufe; Enterprise ergänzt individuelle Credits, garantierte Rate Limits und die Compliance-Unterlagen.",{"type":137,"ordered":138,"items":257},[258,260,262,264],[259],"Free: 10.000 Credits im Monat, zwei Projekte, ein Memory-MCP-Server-Platz, variable Rate Limits, kein Übertrag.",[261],"Flex: 125 Dollar im Monat für 50.000 Credits, danach 25 Dollar pro 10.000, 600 Anfragen pro Minute, fünf Projekte, 30 Tage Übertrag, Community-Support.",[263],"Flex Plus: 375 Dollar im Monat für 200.000 Credits, danach 75 Dollar pro 40.000, 1.000 Anfragen pro Minute, Observations, Webhooks, Analytics und sieben Tage API-Logs.",[265],"Enterprise: individuelle Credits und Preise, SOC 2 Type II, HIPAA-BAA, ein Jahr Audit- und API-Logs, DPA für EU-Kunden, Deployment in der eigenen VPC.",{"type":114,"level":115,"id":93,"text":94},{"type":103,"content":268},[269],"Mit der Deployment-Schwäche beginnen: Seit die Community Edition im April 2025 eingestellt wurde, läuft die Graph-Engine, Graphiti, lokal, das Produkt aber nicht, deshalb ist ein air-gapped oder reguliertes Deployment eine Enterprise-Geschichte und die Self-Serve-Stufen enthalten weder SOC 2 Type II noch ein BAA. Zweitens ist nur Memory so gut wie die Extraktion, und die Extraktion ist ein Modell-Aufruf, deshalb ist eine halluzinierte Relation oder ein verpasstes Update kein abfragbarer Fehler, sondern still falscher Kontext. Drittens macht die Kreditabrechnung die Kosten davon abhängig, wie gesprächig der Agent ist, und nicht davon, wie viele Benutzer er bedient. Viertens ist ein Graph eine andere Debugging-Fläche als ein Chat-Log: Warum das Modell eine Aussage gesehen hat, erklärt nur der Graph, nicht das Transkript.",{"type":191,"head":271,"rows":279},[272,274,275,277],[273],"Werkzeug",[79],[276],"Wo es gewinnt",[278],"Was man aufgibt",[280,288,297,306],[281,282,284,286],[25],[283],"Gehostete Memory-API über einen temporalen Context Graph",[285],"Aussagen mit Gültigkeitsfenstern und p95 laut Anbieter unter 170 ms",[287],"Kein selbst gehostetes Produkt, jedes Schreiben kostet Credits",[289,291,293,295],[290],"Mem0",[292],"Open-Source-Memory-Schicht mit gehosteter Option",[294],"Einfachere API und ein selbst betreibbarer Server",[296],"Flacheres Memory-Modell mit weniger temporaler Buchführung",[298,300,302,304],[299],"LangMem und LangGraph",[301],"Memory-Bausteine innerhalb eines Graph-Frameworks",[303],"Memory direkt neben den Agenten und Speichern, die man ohnehin betreibt",[305],"Speicher, Extraktion und Retrieval muss man selbst zusammensetzen",[307,309,311,313],[308],"Postgres plus Embeddings",[310],"Chat-Verlauf in einer Tabelle, Ähnlichkeitssuche darüber",[312],"Kein neuer Anbieter, volle Kontrolle über die Daten",[314],"Kein temporales Reasoning, veraltete Aussagen bleiben abrufbar",{"type":103,"content":316},[317],"Die eigentliche Frage ist, ob Vergessen der Fehlermodus ist. Wenn Agenten sich wiederholen, Entscheidungen zwischen Sitzungen verlieren oder nicht sagen können, was sich geändert hat, beantwortet ein Graph mit Gültigkeitsfenstern das direkt. Wenn das Retrieval ständig das falsche Dokument liefert, ist Memory die falsche Schicht überhaupt, und derselbe Aufwand bei Chunking und Reranking zahlt sich schneller zurück.",{"type":180,"variant":319,"title":320,"body":321},"warn","Poisoning ist ein Memory-Problem",[322],[323],"Eine Nachricht, Webseite oder Datei, die ins Memory geschrieben wird, kann jede spätere Sitzung prägen, die sie liest, deshalb veröffentlichte Zep im September 2026 einen Beitrag zur Verteidigung von Agent Memory gegen Poisoning. Schreiben als vertrauenswürdige Eingabe behandeln: pro Benutzer isolieren, Quellen einschränken, die Fakten schreiben dürfen, und das Retrieval-Budget klein genug halten, dass eine vergiftete Aussage den System-Prompt nicht verdrängt.",{"type":114,"level":115,"id":96,"text":97},{"type":103,"content":326},[327],"Zep ist ein gutes Produkt mit klarem Eintrittspreis: Es löst das Vergessen gut, und was es kostet, ist die Möglichkeit, das Ganze selbst zu betreiben. Teams, die Agenten an zahlende Nutzer ausspielen, wo der sichtbare Fehler der Kunde ist, der dieselbe Frage zweimal bekommt, sollten es nehmen. Teams mit Data-Residency-Auflage sollten auf Graphiti aufbauen und den Dienst darum herum selbst besitzen.",{"type":137,"ordered":329,"items":330},true,[331,333,335,337,339],[332],"Nehmen, wenn Agenten daran scheitern zu vergessen, und der Fehler als wiederholte Fragen oder verlorene Entscheidungen zwischen Sitzungen auftaucht.",[334],"Nehmen, wenn Memory-Schreibvorgänge menschliche Nachrichten sind: Das Credit-Modell ist am billigsten, wenn Episoden kurz und selten sind.",[336],"Nicht nehmen als selbst gehostetes Deployment, denn seit April 2025 gehört nur Graphiti einem selbst, alles darum herum lebt in Zeps Cloud.",[338],"Nicht nehmen, wenn die Retrieval-Qualität und nicht das Memory das Problem ist, denn keine Memory-Schicht repariert einen schlechten Index.",[340],"Den Extraktionsschritt budgetieren: Jedes Schreiben ist ein Modell-Aufruf, deshalb folgen die Kosten der Weitschweifigkeit des Agenten und nicht der Zahl der Nutzer.",{"type":342,"content":343},"quote",[344],"Agent Memory ist ein State-Management-Problem im Kostüm der KI: Ein Graph, der Aussagen eine Lebensdauer gibt, ist genau das, was ein Summary-Puffer nicht leisten kann, und die Rechnung ist ein Modell-Aufruf für jede Nachricht, an die man sich erinnern will.",{"type":114,"level":115,"id":99,"text":100},{"type":137,"ordered":329,"items":347},[348,353,357,361,365,369],[349],{"tag":350,"href":30,"children":351},"a",[352],"Zep-Preise: Tarife, Credits und Limits",[354],{"tag":350,"href":33,"children":355},[356],"Zep-Dokumentation",[358],{"tag":350,"href":36,"children":359},[360],"Graphiti auf GitHub",[362],{"tag":350,"href":39,"children":363},[364],"Graphiti-Produktseite",[366],{"tag":350,"href":42,"children":367},[368],"Neue Richtung für die Open-Source-Strategie von Zep",[370],{"tag":350,"href":45,"children":371},[372],"Graphiti: temporale Knowledge Graphs für KI-Agenten (arXiv)",[374,449,509,567],{"slug":375,"published":376,"minutes":377,"category":7,"tags":378,"keywords":383,"about":396,"sources":406,"cover":443,"og":444,"expertise":48,"locales":445,"lang":51,"title":446,"description":447,"coverAlt":448},"embedding-model-selection-2026","2026-10-17",9,[379,13,380,381,382],"Embeddings","MTEB","Vector search","Model selection",[384,385,386,387,388,389,390,391,392,393,394,395],"best embedding model 2026","how to choose an embedding model","embedding model comparison","MTEB leaderboard explained","RTEB benchmark","open source embedding model","multilingual embedding model","voyage-4 vs openai embeddings","Qwen3-Embedding","EmbeddingGemma","embedding model for RAG","switching embedding models re-embed",[397,400,403],{"name":398,"url":399},"Word embedding","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FWord_embedding",{"name":401,"url":402},"Information retrieval","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FInformation_retrieval",{"name":404,"url":405},"Discounted cumulative gain","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FDiscounted_cumulative_gain",[407,410,413,416,419,422,425,428,431,434,437,440],{"title":408,"url":409},"Enevoldsen et al.: MMTEB, Massive Multilingual Text Embedding Benchmark (2025)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2502.13595",{"title":411,"url":412},"Hugging Face: Introducing RTEB, a new standard for retrieval evaluation (Oct 2025)","https:\u002F\u002Fhuggingface.co\u002Fblog\u002Frteb",{"title":414,"url":415},"OpenAI: Vector embeddings guide","https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fguides\u002Fembeddings",{"title":417,"url":418},"OpenAI: API pricing","https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fpricing",{"title":420,"url":421},"Voyage AI: The Voyage 4 model family, shared embedding space with MoE architecture (Jan 2026)","https:\u002F\u002Fblog.voyageai.com\u002F2026\u002F01\u002F15\u002Fvoyage-4\u002F",{"title":423,"url":424},"Voyage AI: Text embeddings documentation","https:\u002F\u002Fdocs.voyageai.com\u002Fdocs\u002Fembeddings",{"title":426,"url":427},"Voyage AI: Pricing","https:\u002F\u002Fdocs.voyageai.com\u002Fdocs\u002Fpricing",{"title":429,"url":430},"Google: Gemini API embeddings documentation","https:\u002F\u002Fai.google.dev\u002Fgemini-api\u002Fdocs\u002Fembeddings",{"title":432,"url":433},"Google: Gemini API pricing","https:\u002F\u002Fai.google.dev\u002Fgemini-api\u002Fdocs\u002Fpricing",{"title":435,"url":436},"Cohere: Embed models documentation","https:\u002F\u002Fdocs.cohere.com\u002Fdocs\u002Fcohere-embed",{"title":438,"url":439},"Qwen: Qwen3-Embedding-8B model card","https:\u002F\u002Fhuggingface.co\u002FQwen\u002FQwen3-Embedding-8B",{"title":441,"url":442},"Google Developers Blog: Introducing EmbeddingGemma (Sep 2025)","https:\u002F\u002Fdevelopers.googleblog.com\u002Fen\u002Fintroducing-embeddinggemma\u002F","\u002Fimages\u002Fblog\u002Fembedding-model-selection-2026\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fembedding-model-selection-2026\u002Fog.jpg",[50,51,52],"Embedding-Modell wählen 2026: Leaderboards, Kosten und ein Vergleichstest mit eigenen Daten","Wie man 2026 ein Embedding-Modell für RAG wählt: was MTEB und RTEB aussagen, API oder offene Gewichte, Preise, Dimensionen und ein einwöchiger Vergleichstest.","Drei Säulen aus gestapelten Blöcken, die mittlere am höchsten, jede mit kurzem Balken und weiter Klammer.",{"slug":450,"published":376,"minutes":451,"category":7,"tags":452,"keywords":456,"about":468,"sources":478,"cover":503,"og":504,"expertise":48,"locales":505,"lang":51,"title":506,"description":507,"coverAlt":508},"contextual-retrieval-late-chunking",10,[13,453,379,454,455],"Chunking","Contextual retrieval","Late chunking",[457,458,459,460,461,462,463,464,465,466,467],"contextual retrieval","anthropic contextual retrieval","late chunking","contextual chunk embeddings","contextual embeddings rag","contextual bm25","chunk context rag","voyage-context-3","voyage-context-4","late chunking vs contextual retrieval","rag chunking context loss",[469,472,475],{"name":470,"url":471},"Retrieval-augmented generation","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FRetrieval-augmented_generation",{"name":473,"url":474},"Okapi BM25","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FOkapi_BM25",{"name":476,"url":477},"Sentence embedding","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FSentence_embedding",[479,482,485,488,491,494,497,500],{"title":480,"url":481},"Anthropic: Introducing Contextual Retrieval (Sep 2024)","https:\u002F\u002Fwww.anthropic.com\u002Fnews\u002Fcontextual-retrieval",{"title":483,"url":484},"Günther et al.: Late Chunking, Contextual Chunk Embeddings Using Long-Context Embedding Models (2024, rev. 2025)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2409.04701",{"title":486,"url":487},"Jina AI: Late Chunking in Long-Context Embedding Models (Aug 2024)","https:\u002F\u002Fjina.ai\u002Fnews\u002Flate-chunking-in-long-context-embedding-models\u002F",{"title":489,"url":490},"Voyage AI: Introducing voyage-context-3 (Jul 2025)","https:\u002F\u002Fblog.voyageai.com\u002F2025\u002F07\u002F23\u002Fvoyage-context-3\u002F",{"title":492,"url":493},"Voyage AI: voyage-context-4 (Jun 2026)","https:\u002F\u002Fblog.voyageai.com\u002F2026\u002F06\u002F29\u002Fvoyage-context-4\u002F",{"title":495,"url":496},"Voyage AI: Contextualized chunk embeddings documentation","https:\u002F\u002Fdocs.voyageai.com\u002Fdocs\u002Fcontextualized-chunk-embeddings",{"title":498,"url":499},"Anthropic: Claude API pricing","https:\u002F\u002Fplatform.claude.com\u002Fdocs\u002Fen\u002Fabout-claude\u002Fpricing",{"title":501,"url":502},"Qu, Tu and Bao: Is Semantic Chunking Worth the Computational Cost? (2024)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2410.13070","\u002Fimages\u002Fblog\u002Fcontextual-retrieval-late-chunking\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fcontextual-retrieval-late-chunking\u002Fog.jpg",[50,51,52],"Contextual Retrieval und Late Chunking: RAG-Chunks ihren Kontext zurückgeben","Chunks verlieren ihr Dokument. Wie Contextual Retrieval, Late Chunking und kontextuelle Embeddings das beheben, was sie kosten, wann man verzichtet.","Vier lose Quadrate, unten von einer breiten Klammer gebündelt und je nach oben mit einer großen Fläche verbunden.",{"slug":510,"published":376,"minutes":377,"category":7,"tags":511,"keywords":515,"about":528,"sources":536,"cover":561,"og":562,"expertise":48,"locales":563,"lang":51,"title":564,"description":565,"coverAlt":566},"rag-access-control-permissions",[13,512,513,514,381],"Access control","Security","Multi-tenancy",[516,517,518,519,520,521,522,523,524,525,526,527],"rag access control","permission aware rag","document level security rag","rag multi tenancy","vector database access control","pgvector row level security","security trimming azure ai search","openfga rag authorization","qdrant multitenancy","pinecone namespaces multitenancy","owasp llm08 vector and embedding weaknesses","rag data leakage",[529,532,535],{"name":530,"url":531},"Access-control list","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FAccess-control_list",{"name":533,"url":534},"Multitenancy","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FMultitenancy",{"name":470,"url":471},[537,540,543,546,549,552,555,558],{"title":538,"url":539},"OWASP GenAI Security Project: LLM08:2025 Vector and Embedding Weaknesses","https:\u002F\u002Fgenai.owasp.org\u002Fllmrisk\u002Fllm082025-vector-and-embedding-weaknesses\u002F",{"title":541,"url":542},"PostgreSQL documentation: Row Security Policies","https:\u002F\u002Fwww.postgresql.org\u002Fdocs\u002Fcurrent\u002Fddl-rowsecurity.html",{"title":544,"url":545},"pgvector README: filtering and iterative index scans","https:\u002F\u002Fgithub.com\u002Fpgvector\u002Fpgvector",{"title":547,"url":548},"Qdrant: Multitenancy and partitions guide","https:\u002F\u002Fqdrant.tech\u002Fdocumentation\u002Fguides\u002Fmultiple-partitions\u002F",{"title":550,"url":551},"Pinecone: Implement multitenancy using namespaces","https:\u002F\u002Fdocs.pinecone.io\u002Fguides\u002Findex-data\u002Fimplement-multitenancy",{"title":553,"url":554},"Microsoft Learn: Document-level access control in Azure AI Search","https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fazure\u002Fsearch\u002Fsearch-document-level-access-overview",{"title":556,"url":557},"OpenFGA: RAG authorization use case","https:\u002F\u002Fopenfga.dev\u002Fdocs\u002Fuse-cases\u002Frag-authorization",{"title":559,"url":560},"Morris et al.: Text Embeddings Reveal (Almost) As Much As Text (EMNLP 2023)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2310.06816","\u002Fimages\u002Fblog\u002Frag-access-control-permissions\u002Fcover.webp","\u002Fimages\u002Fblog\u002Frag-access-control-permissions\u002Fog.jpg",[50,51,52],"Zugriffskontrolle für RAG: berechtigungsbewusstes Retrieval ohne Datenlecks","Wie RAG-Assistenten Dokumente preisgeben und wie man das stoppt: ACLs an jedem Chunk, Vorfilter, Row-Level Security in pgvector, Rechte-Sync und Lecktests.","Sieben Karten in einer Reihe, sechs mit Schloss, eine leere Karte schickt einen Pfeil nach außen.",{"slug":568,"published":376,"minutes":451,"category":7,"tags":569,"keywords":574,"about":586,"sources":594,"cover":621,"og":622,"expertise":623,"locales":624,"lang":51,"title":625,"description":626,"coverAlt":627},"rag-product-catalog-pim-data",[13,570,571,572,573],"PIM","Product data","B2B e-commerce","Metadata filtering",[575,576,577,578,579,580,581,582,583,584,585],"rag product catalog","rag pim data","llm product data","product catalog chatbot","akeneo rag","pimcore ai search","rag structured data","metadata filtering rag","product attributes embeddings","b2b product assistant","etim classification ai",[587,590,591],{"name":588,"url":589},"Product information management","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FProduct_information_management",{"name":470,"url":471},{"name":592,"url":593},"ETIM (standard)","https:\u002F\u002Fwww.etim-international.com\u002Fclassification\u002F",[595,598,601,604,606,609,612,615,618],{"title":596,"url":597},"Akeneo API: Products, product values, metric values and product models","https:\u002F\u002Fapi.akeneo.com\u002Fconcepts\u002Fproducts.html",{"title":599,"url":600},"Akeneo Help Center: What about products with variants?","https:\u002F\u002Fhelp.akeneo.com\u002Fserenity-take-the-power-over-your-products\u002Fserenity-what-about-products-with-variants",{"title":602,"url":603},"Pimcore documentation: Classification Store","https:\u002F\u002Fdocs.pimcore.com\u002Fplatform\u002FPimcore\u002FObjects\u002FObject_Classes\u002FData_Types\u002FClassification_Store\u002F",{"title":605,"url":593},"ETIM International: Classification",{"title":607,"url":608},"ETIM International: ETIM releases and the IXF format","https:\u002F\u002Fetim-international.com\u002F?p=754",{"title":610,"url":611},"Reddy et al.: Shopping Queries Dataset, a large-scale ESCI benchmark for improving product search (2022)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2206.06588",{"title":613,"url":614},"Amazon Science: esci-data repository","https:\u002F\u002Fgithub.com\u002Famazon-science\u002Fesci-data",{"title":616,"url":617},"Qdrant documentation: Filtering","https:\u002F\u002Fqdrant.tech\u002Fdocumentation\u002Fconcepts\u002Ffiltering\u002F",{"title":619,"url":620},"Sui et al.: Table Meets LLM, can large language models understand structured table data? (WSDM 2024)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2305.13062","\u002Fimages\u002Fblog\u002Frag-product-catalog-pim-data\u002Fcover.webp","\u002Fimages\u002Fblog\u002Frag-product-catalog-pim-data\u002Fog.jpg","b2b-ecommerce-developer",[50,51,52],"RAG über Produktkataloge: aus PIM-Daten Antworten machen, die halten","Produktdaten sind strukturiert, Chunking wie bei PDFs scheitert. So serialisiert man PIM-Attribute, leitet Spezifikationsfragen an Filter und bleibt exakt.","Ein Rahmen aus neun Feldern mit kleinen Symbolen, darunter ein Trichter zu einer einzelnen Karte.",1792261157261]