Was macht Mem?
🧠 Baue persistentes, hybrides Konversationsgedächtnis mit SQLite, Volltextsuche und Vektorähnlichkeit inklusive Konfliktlösung für KI-Assistenten.
Überblick
Dieser Skill ermöglicht es KI-Assistenten, sich an frühere Gespräche zu erinnern und kontextbewusste Antworten zu geben. Er nutzt:
- SQLite für dauerhafte Speicherung von Nachrichten und Metadaten.
- FTS5 (Volltextsuche) für schnelle textuelle Suchabfragen.
- Vektorähnlichkeit (über Einbettungen) für semantische Ähnlichkeitssuchen.
- Konfliktlösung, um widersprüchliche oder veraltete Erinnerungen zu behandeln.
Plattformen
Unterstützt Agenten auf:
- Claude Code
- Cursor
- Codex
- Andere lokale/private KI-Assistenten
Installation
- Stelle sicher, dass SQLite in deiner Umgebung verfügbar ist.
- Klone das Repository:
git clone https://github.com/Lilily58/Mem.git
- Führe das Setup-Skript aus:
python setup.py install
Verwendung
Initialisierung
from mem import Mem
mem = Mem(database_path="./conversation.db")
Speichern von Nachrichten
mem.add_message("user", "Hallo, wie geht es dir?")
mem.add_message("assistant", "Mir geht es gut, danke!")
Suchen im Gedächtnis
# Volltextsuche
results = mem.search_text("Hallo")
# Vektorähnlichkeitssuche
results = mem.search_vector(embedding_vector)
# Hybride Suche
results = mem.search_hybrid("Hallo", embedding_vector)
Konfliktlösung
# Automatisch widersprüchliche Erinnerungen auflösen
mem.resolve_conflicts()
API-Referenz
| Methode | Beschreibung |
|---|---|
add_message(role, content) | Fügt eine Nachricht zur Datenbank hinzu |
search_text(query) | Sucht nach ähnlichem Text via FTS5 |
search_vector(vector) | Sucht nach ähnlichen Vektoren |
search_hybrid(text, vector) | Hybridsuche mit Gewichtung |
resolve_conflicts() | Löst Konflikte im Gedächtnis |
Konfiguration
Umgebungsvariablen:
MEM_DB_PATH– Pfad zur SQLite-Datenbank (Standard:./mem.db)MEM_EMBEDDING_MODEL– Einbettungsmodell (Standard:all-MiniLM-L6-v2)
Lizenz
MIT