Modell / Datensatz
memvid/memvid avatar
memvid/memvid

memvid: KI-Gedächtnis als einzelne .mv2-Datei statt RAG-Pipeline

Memory layer for AI Agents. Replace complex RAG pipelines with a serverless, single-file memory layer. Give your agents instant retrieval and long-term memory.

16.542 Sterne1.419 ForksRustApache-2.0

Auf einen Blick

Was ist das?
memvid-core packt Inhalte, Embeddings, Suchindex und Metadaten in eine portable Datei. Der Ansatz ist überzeugend für Offline- und Edge-Szenarien, die Bewertung der Benchmark-Zahlen bleibt aber offen, weil das Repository die Messmethodik nicht mitliefert.
Für wen ist es gedacht?
memvid-core lohnt sich für Teams, die einem Agenten ein portables, offline nutzbares Gedächtnis mitgeben wollen und dafür auf einen Server verzichten können. Wer Millionen Vektoren mit hoher Schreiblast oder verteilte Replikation braucht, ist hier falsch.
Darf ich es kommerziell nutzen?
Ja. Apache-2.0 ist eine freizügige Lizenz: Sie dürfen darauf aufbauende Software nutzen, verändern und verkaufen, solange Sie die Urheberrechts- und Lizenzhinweise beibehalten.
Wird es noch gepflegt?
Ja. Die letzten Commits kamen vor 63 Tagen.
In welcher Sprache ist es geschrieben?
Hauptsächlich Rust, laut der Sprachstatistik von GitHub.

Die Antworten beruhen auf den GitHub-Daten des Projekts (zuletzt abgeglichen am 15. September 2026) und auf unserer Analyse. Sie sind keine Rechtsberatung.

TIEFGEHENDE OPEN-SOURCE-ANALYSE

Welches Problem memvid adressiert

Wer einem Agenten heute ein Langzeitgedächtnis geben will, baut üblicherweise eine Kette: Dokumente einlesen, in Chunks zerlegen, Embeddings über einen Dienst oder ein lokales Modell erzeugen, in eine Vektor-Datenbank schreiben, beim Abruf einen Index abfragen und die Treffer in den Kontext laden. Jede Stufe bringt einen eigenen Prozess, eigene Konfiguration und eigene Ausfallmodi mit. memvid setzt an dieser Stelle an und verspricht, den Zwischenstapel durch eine einzige Datei zu ersetzen. Das README formuliert es so, dass memvid Daten, Embeddings, Suchstruktur und Metadaten in einer Datei bündelt, statt eine serverbasierte Vektor-Datenbank zu betreiben.

Die Zielgruppe ist damit klar umrissen: Entwickler, die Agenten bauen, die offline laufen sollen, die auf Edge-Geräten oder in einer Desktop-Anwendung sitzen, oder die schlicht keine Infrastruktur betreiben wollen, nur damit ein Modell sich an frühere Sitzungen erinnert. Das README nennt entsprechend Anwendungsfälle wie Offline-First-Systeme, Codebase-Verständnis, Support-Agenten und persönliche Wissensassistenten. Wer bereits eine verwaltete Vektor-Datenbank mit Betriebsteam hat, gewinnt durch memvid wenig; wer sie vermeiden will, gewinnt eine ganze Betriebsebene.

Smart Frames: die Architektur hinter der Datei

Das zentrale Konstrukt ist der Smart Frame. Laut README ist ein Frame eine unveränderliche Einheit, die Inhalt zusammen mit Zeitstempeln, Prüfsummen und einfachen Metadaten speichert. Frames werden gruppiert, was Kompression, Indexierung und parallele Lesezugriffe ermöglichen soll. Die Inspiration kommt aus der Videokodierung, ausdrücklich nicht, um Video abzulegen, sondern um Gedächtnis als append-only Sequenz zu organisieren.

Daraus ergeben sich mehrere Eigenschaften, die das README direkt benennt. Weil nur angehängt und nichts Bestehendes überschrieben wird, sind Schreibvorgänge crash-sicher über committete, unveränderliche Frames. Weil alte Zustände erhalten bleiben, lassen sich frühere Gedächtnisstände abfragen und als Zeitachse inspizieren. Die Dokumentation spricht in diesem Zusammenhang von Time-Travel-Debugging: Zustände zurückspulen, erneut abspielen oder abzweigen. Das ist ein Datenmodell, das klassische Vektor-Datenbanken nicht von Haus aus mitbringen. Wer dort Versionierung will, baut sie sich obendrauf.

Die zweite Ebene ist die Capsule Context mit der Dateiendung .mv2. Eine Capsule ist laut README selbst-enthaltend und teilbar, mit Regeln und Ablaufzeit. Das erklärt, warum das Projekt von portabler Erinnerung spricht: Ein Agent kann eine .mv2-Datei mitnehmen, weitergeben oder versioniert ablegen. Ein weiteres Element ist die Codec Intelligence, die Kompression automatisch auswählt und über die Zeit verbessert. Wie dieser Auswahlmechanismus konkret arbeitet, geht aus dem vorliegenden Material nicht hervor. Ich würde das als offenen Punkt markieren, nicht als belegtes Feature.

Installation und die Rolle der Feature-Flags

Der Rust-Kern wird über cargo add memvid-core bezogen, das README zeigt als Abhängigkeit memvid-core = "2.0". Voraussetzung ist Rust 1.85.0 oder neuer, installierbar über rustup.rs. Für andere Sprachen nennt das README eigene Pakete: npm install -g memvid-cli für die CLI, npm install @memvid/sdk für das Node-SDK und pip install memvid-sdk für Python.

Interessanter als die Installation ist die Aufteilung in Feature-Flags, weil sie zeigt, wie modular der Kern gedacht ist. lex aktiviert Volltextsuche mit BM25-Ranking über Tantivy. vec aktiviert Vektorähnlichkeitssuche über HNSW mit lokalen Text-Embeddings über ONNX. pdf_extract bringt PDF-Textextraktion in reinem Rust. clip liefert visuelle Embeddings für Bildsuche, whisper Audiotranskription, api_embed Embeddings über Cloud-APIs wie OpenAI. temporal_t ist im vorliegenden README-Ausschnitt abgeschnitten, dazu lässt sich nichts Belastbares sagen.

Praktisch heißt das: Wer nur lexikalisch sucht, muss die Vektor- und ONNX-Abhängigkeiten nicht mitkompilieren. Wer lokale Embeddings will, bekommt sie über vec, ohne einen externen Dienst aufrufen zu müssen. Wer stattdessen OpenAI nutzen will, schaltet api_embed zu und nimmt dafür eine Netzwerkabhängigkeit in Kauf. Diese Wahlfreiheit ist der eigentliche Grund, warum memvid offline funktionieren kann, ohne auf Qualität bei der Suche zu verzichten.

Was die Benchmark-Zahlen im README nicht belegen

Das README führt konkrete Zahlen auf: plus 35 Prozent gegenüber dem Stand der Technik auf LoCoMo, plus 76 Prozent bei Multi-Hop- und plus 56 Prozent bei temporalem Reasoning im Vergleich zum Branchendurchschnitt, dazu 0,025 ms P50 und 0,075 ms P99 Latenz sowie 1.372-fache Durchsatzsteigerung. Als Grundlage nennt es LoCoMo mit zehn Gesprächen von je rund 26.000 Token, eine offene Auswertung und LLM-as-Judge.

Diese Zahlen sind im Repository als Marketing-Highlights präsentiert, nicht als Messprotokoll. Aus dem vorliegenden Material geht nicht hervor, gegen welche Systeme genau verglichen wurde, auf welcher Hardware die Latenzwerte entstanden sind, ob P50 und P99 über dieselbe Abfragemenge gemessen wurden oder wie der Branchendurchschnitt definiert ist. Die Angabe 1.372-fach ohne genannten Referenzpunkt ist ohne Baseline nicht interpretierbar; ein solcher Faktor kann genauso gut eine besonders schwache Vergleichsbasis widerspiegeln wie einen echten Vorsprung. Wer diese Werte für eine Beschaffungsentscheidung heranziehen will, muss die im README genannte offene Auswertung selbst nachfahren. Für einen Artikel über das Projekt sind die Zahlen ein Hinweis darauf, was die Maintainer für relevant halten, kein Nachweis.

Grenzen und Fälle, in denen memvid das falsche Werkzeug ist

Das append-only-Modell ist zugleich Stärke und Einschränkung. Unveränderliche Frames bedeuten, dass jede Korrektur ein neuer Frame ist. Bei häufigen Aktualisierungen wächst die Datei entsprechend, und Kompression gleicht das nur teilweise aus. Wer einen Korpus hat, der ständig umgeschrieben wird, zahlt diesen Preis bei jedem Schreibvorgang. Ob und wann eine Kompaktierung oder ein Rewrite stattfindet, lässt sich aus dem Material nicht ableiten.

Zweitens ist eine einzelne Datei kein verteiltes System. Das README beschreibt Portabilität und Teilbarkeit, nicht Replikation, Sharding oder gleichzeitige Schreibzugriffe mehrerer Prozesse. Für einen Agenten auf einem Laptop ist das genau richtig. Für einen Dienst mit vielen Instanzen, die denselben Wissensbestand parallel fortschreiben, fehlt in der Beschreibung jede Aussage zur Nebenläufigkeit. Wer das braucht, sollte vorher klären, wie Schreibkonflikte behandelt werden.

Drittens hängt die Qualität der Vektorsuche an den Embeddings. Bei vec sind das lokale ONNX-Modelle, bei api_embed ein Cloud-Dienst. Das README bezeichnet memvid als modellagnostisch, was die Speicherschicht betrifft, nicht aber die Einbettungsqualität. Ein Wechsel des Embedding-Modells nach dem Befüllen einer Capsule ist kein trivialer Vorgang, wenn die Vektoren im selben unveränderlichen Frame liegen. Wer mit einem Modell startet und später wechseln will, sollte diesen Punkt vor dem ersten Schreiben klären.

Abgrenzung zu Vektor-Datenbanken und klassischen RAG-Stacks

Der naheliegende Vergleich ist eine serverbasierte Vektor-Datenbank wie Qdrant oder Weaviate, häufig kombiniert mit einem eigenen Chunking- und Embedding-Dienst. Der Unterschied liegt weniger in der Suchfunktion als im Betriebsmodell. Eine Vektor-Datenbank läuft als Dienst, skaliert horizontal, erlaubt gleichzeitige Schreibzugriffe und bringt Werkzeuge für Backups und Monitoring mit. memvid liefert stattdessen eine Datei, die ein Prozess öffnet, liest und fortschreibt. Der Preis für diese Einfachheit ist genau die Betriebsebene, die bei großen Installationen gebraucht wird.

Ein zweiter Unterschied ist die Zeitdimension. Bei einer Vektor-Datenbank überschreibt ein Update den alten Eintrag; die Historie ist weg, sofern sie nicht explizit modelliert wurde. Bei memvid bleiben alte Frames erhalten, und das README beschreibt Rewind, Replay und Branching als Kernkonzept. Für Anwendungen, bei denen nachvollziehbar sein muss, wann welches Wissen in den Agenten gelangt ist, etwa in auditierbaren oder debuggbaren Workflows, ist das ein struktureller Vorteil, den eine klassische Vektor-Datenbank nicht ohne Zusatzarbeit bietet.

Ein dritter Punkt ist die Abhängigkeitskette. Ein typischer RAG-Stack zieht einen Embedding-Dienst, einen Vektor-Store und eine Orchestrierungsebene ein. memvid-core mit aktiviertem vec und lex bleibt innerhalb eines Rust-Binaries, wahlweise ergänzt um pdf_extract oder whisper. Das reduziert die Zahl der beweglichen Teile, bindet aber auch an die im Crate angebotenen Modelle und Formate.

Wartung, Versionierung und Lizenz

Die Release-Historie im Repository zeigt v2.0.140 vom 27. Mai 2026, davor v2.0.139 vom 13. März 2026 und v2.0.138 vom 3. März 2026. Die Abstände sind unregelmäßig: rund zweieinhalb Monate zwischen 139 und 140, zehn Tage zwischen 138 und 139. Der letzte Push liegt laut Repository-Daten vom 14. Juli 2026, das Projekt ist nicht archiviert. Das spricht für aktive Pflege, ohne dass sich daraus ein Versprechen über künftige Kadenz ableiten lässt.

Für die Upgrade-Kosten ist die Datei das entscheidende Kriterium. Weil Inhalte, Embeddings und Index im selben .mv2-Container liegen, ist ein Formatwechsel nicht nur ein Bibliotheksupdate, sondern potenziell eine Migration bestehender Kapseln. Ob das Format zwischen 2.0.x-Versionen stabil bleibt, sagt das vorliegende Material nicht. Wer memvid produktiv einsetzt, sollte vor einem Minor-Update prüfen, ob bestehende .mv2-Dateien weiterhin gelesen werden, und die Kapseln entsprechend versioniert ablegen.

Lizenzseitig steht das Projekt unter Apache-2.0, wie das README und die Lizenz-Badge ausweisen. Das erlaubt kommerzielle Nutzung und Weiterverteilung, verlangt aber die üblichen Pflichten: Beibehaltung von Lizenz- und Urheberrechtshinweisen sowie Kennzeichnung geänderter Dateien. Wer memvid in ein proprietäres Produkt einbettet, sollte die NOTICE-Anforderungen prüfen. Das ist keine Rechtsberatung, sondern ein Hinweis auf die Punkte, die vor der Integration zu klären sind.

Redaktionelles Fazit

memvid-core lohnt sich für Teams, die einem Agenten ein portables, offline nutzbares Gedächtnis mitgeben wollen und dafür auf einen Server verzichten können. Wer Millionen Vektoren mit hoher Schreiblast oder verteilte Replikation braucht, ist hier falsch. Vor dem Einsatz zu prüfen: ob die benötigten Feature-Flags (vec, lex, pdf_extract) den eigenen Datentyp abdecken, ob die im Repository genannten Benchmark-Zahlen unter eigenen Daten reproduzierbar sind und ob die Apache-2.0-Lizenz zu den geplanten Weiterverteilungswegen passt.

Offizielle Quellen

  1. License: Apache-2.0
  2. memvid/memvid on GitHub
  3. Project website
  4. README
  5. Releases
Community-Notizen

Community-Notizen