Persistent AI Memory ist ein Open-Source-Projekt zur Bereitstellung eines persistenten lokalen Speichers für KI-Assistenten, Sprachmodelle (LLMs) und Copilot in VS Code. Es speichert Dialog-, Speicher- und Werkzeugaufrufe über eine SQLite-Datenbank und unterstützt semantische Suche und Echtzeit-Datei-Überwachung. Das System läuft plattformübergreifend und ist kompatibel mit Windows, macOS und Linux und ist einfach zu installieren und sofort einsetzbar. Benutzer können KI-Interaktionsdaten einfach speichern und abrufen, wodurch es sich für Entwickler, Forscher und Szenarien eignet, in denen lokalisierte KI-Speicher erforderlich sind. Das Projekt ist unter der MIT-Lizenz lizenziert, die eine freie Nutzung und Veränderung erlaubt.
Funktionsliste
- Dauerhafte Speicherung: Verwendung einer SQLite-Datenbank, um Aufzeichnungen über Gespräche, Erinnerungen und Tool-Aufrufe der KI zu speichern.
- Semantische Suche: Die semantische Suche von Erinnerungen und Dialogen wird durch die Einbettungstechnologie von LM Studio unterstützt.
- Echtzeit-Überwachung: Verwenden Sie Watchdog, um Konversationsdateien zu überwachen und exportierte Konversationen wie ChatGPT automatisch zu erfassen.
- Tool-Aufrufprotokolle: Aufzeichnung der Verwendung von Model Context Protocol (MCP)-Tools zur Unterstützung der KI-Selbstreflexion.
- Plattformübergreifende Unterstützung: kompatibel mit Windows, macOS und Linux, angepasst an eine Vielzahl von Entwicklungsumgebungen.
- Einfache Installation: Bietet Ein-Klick-Skripte, Pip-Installationen und viele andere Möglichkeiten für eine schnelle Bereitstellung.
- VS Code-Integration: Arbeiten Sie nahtlos mit Copilot in VS Code, um die Entwicklungseffizienz zu verbessern.
- System Health Check: Bietet eine Schnittstelle zur Anzeige des Datenbank- und Systemstatus, um einen stabilen Betrieb zu gewährleisten.
Hilfe verwenden
Einbauverfahren
Persistent AI Memory bietet verschiedene Installationsmethoden, um den unterschiedlichen Bedürfnissen der Benutzer gerecht zu werden. Nachfolgend finden Sie die detaillierten Schritte:
Ein-Klick-Installation (empfohlen)
- Linux/macOS: Führen Sie den folgenden Befehl aus:
curl -sSL https://raw.githubusercontent.com/savantskie/persistent-ai-memory/main/install.sh | bash
Das Skript lädt automatisch die Abhängigkeiten herunter und konfiguriert sie, so dass es ideal für den schnellen Einstieg ist.
- Windows (Computer)Herunterladen und Ausführen der Batch-Datei:
curl -sSL https://raw.githubusercontent.com/savantskie/persistent-ai-memory/main/install.bat -o install.bat && install.bat
Das Skript wird die Umgebung automatisch einrichten und ist nach der Installation sofort einsatzbereit.
- manuelle Installation::
- Klon-Lagerhaus:
git clone https://github.com/savantskie/persistent-ai-memory.git cd persistent-ai-memory
- Installieren Sie die Abhängigkeit:
pip install -r requirements.txt pip install -e .
- Optionale Entwicklungsabhängigkeiten:
pip install -e ".[dev]"
- Klon-Lagerhaus:
- Direkte Installation über pip::
pip install git+https://github.com/savantskie/persistent-ai-memory.git
Ideal für Anwender, die die Software direkt in bestehende Projekte integrieren möchten.
Nach der Installation verwendet das System standardmäßig eine SQLite-Datenbank mit einem Speicherpfad voncustom_memory.db
(anpassbar). Um einen benutzerdefinierten eingebetteten Dienst zu verwenden, konfigurieren Sieembedding_service_url
Zum Beispiel:
memory = PersistentAIMemorySystem(db_path="custom_memory.db", embedding_service_url="http://localhost:1234/v1/embeddings")
Hauptfunktionen
- gespeicherter Speicher::
- ausnutzen
store_memory
Funktionen bewahren das von der KI gelernte Wissen. Beispiel:import asyncio from ai_memory_core import PersistentAIMemorySystem async def main(): memory = PersistentAIMemorySystem() await memory.store_memory("今天学习了Python异步编程") asyncio.run(main())
- Die Erinnerungen werden in einer SQLite-Datenbank mit optionalen Metadaten gespeichert.
- ausnutzen
- semantische Suche::
- passieren (eine Rechnung oder Inspektion etc.)
search_memories
Funktionen suchen nach verwandten Erinnerungen:results = await memory.search_memories("Python编程") print(f"找到 {len(results)} 条相关记忆")
- Das System nutzt die Einbettungstechnologie von LM Studio, um semantisch relevante Ergebnisse zu liefern, von denen standardmäßig 10 zurückgegeben werden.
- passieren (eine Rechnung oder Inspektion etc.)
- Speicherung und Abruf von Dialogen::
- Speichern Sie den Dialog:
await memory.store_conversation("user", "什么是异步编程?") await memory.store_conversation("assistant", "异步编程允许...")
- Abrufen des Dialogverlaufs:
history = await memory.get_conversation_history(limit=100)
- Unterstützung für die Suche nach bestimmten Dialogen:
conversations = await memory.search_conversations("异步编程", limit=10)
- Speichern Sie den Dialog:
- Echtzeit-Überwachung von Dialogdateien::
- Überwachen Sie die von ChatGPT exportierten Dialogdateien:
memory.start_conversation_monitoring("/path/to/conversation/files")
- Das System erfasst automatisch Dateiänderungen und speichert sie in der Datenbank.
- Überwachen Sie die von ChatGPT exportierten Dialogdateien:
- Werkzeug-Anrufprotokoll::
- Aufzeichnung von MCP-Tool-Aufrufen:
await memory.log_tool_call("tool_name", {"arg": "value"}, "result", metadata={"key": "value"})
- Historie der Werkzeugnutzung anzeigen:
tool_history = await memory.get_tool_call_history(tool_name="tool_name", limit=100)
- AI ist verfügbar über das
reflect_on_tool_usage
Selbstreflexion, um die Muster der Werkzeugnutzung zu analysieren.
- Aufzeichnung von MCP-Tool-Aufrufen:
- System-Gesundheitscheck::
- Überprüfen Sie den Status des Systems:
status = await memory.get_system_health() print(status)
- Gibt den Status der Datenbankverbindung und Informationen zum Systembetrieb zurück.
- Überprüfen Sie den Status des Systems:
Featured Function Bedienung
- VS-Code-IntegrationUm ein Projekt in Copilot für VS Code zu integrieren, stellen Sie sicher, dass die Python-Erweiterung und das Copilot-Plugin installiert sind. Nach der Ausführung des Projekts kann Copilot direkt auf die lokale Speicherdatenbank zugreifen und so die kontextbezogene Genauigkeit der Codevervollständigung verbessern.
- Plattformübergreifende KompatibilitätDas System passt sich automatisch und ohne zusätzliche Konfiguration an verschiedene Betriebssysteme an. Windows-Benutzer müssen möglicherweise Git Bash installieren, um Shell-Skripte auszuführen.
- Optimierung der semantischen SucheMit dem Einbettungsdienst von LM Studio sind die Suchergebnisse präziser. Eine Suche nach "Python" liefert zum Beispiel alle Erinnerungen, die mit Python zu tun haben, und nicht nur exakte Treffer.
caveat
- Stellen Sie eine stabile Netzwerkverbindung für den Zugriff auf die LM Studio Embedded Services sicher (Standard)
http://localhost:1234/v1/embeddings
). - Sichern Sie die SQLite-Datenbankdateien regelmäßig, um Datenverluste zu vermeiden.
- Wenn Sie VS Code verwenden, sollten Sie überprüfen, ob die Python-Umgebung mit den Projektabhängigkeiten kompatibel ist.
Anwendungsszenario
- Entwickler debuggen KI-Assistenten
Entwickler können den persistenten KI-Speicher nutzen, um die Interaktionsdaten von KI-Assistenten zu speichern, Dialogmuster zu analysieren und die Modellleistung zu optimieren. Bei der Fehlersuche in einem Chatbot können Sie beispielsweise historische Konversationen abrufen, um die Antwortlogik zu verbessern. - Forscher, die Sprachmodelle analysieren
Forscher können die semantische Suche und die Protokolle der Werkzeugaufrufe nutzen, um das Verhalten von Sprachmodellen bei bestimmten Aufgaben zu analysieren und experimentelle Daten zu erzeugen. Zum Beispiel, um die Häufigkeit der Werkzeugnutzung durch KI bei Programmieraufgaben zu untersuchen. - Persönliches Wissensmanagement
Die Nutzer können Studiennotizen oder Inspirationen als Speicher ablegen und sie über die semantische Suche schnell wiederfinden. Ein Student kann zum Beispiel Kursnotizen speichern und nach "Maschinelles Lernen" suchen, um relevante Inhalte zu finden. - VS-Code-Effizienzverbesserung
Programmierer können codebezogenes Wissen im System speichern und es mit Copilot kombinieren, um die kontextbezogene Genauigkeit der Codevervollständigung zu verbessern. Zum Beispiel kann die API-Dokumentation des Projekts gespeichert werden, um schnell auf relevante Funktionsbeschreibungen zugreifen zu können.
QA
- Wie gewährleisten Sie den Datenschutz?
Die Daten werden in einer lokalen SQLite-Datenbank gespeichert, wodurch Internet-Uploads überflüssig werden und die Privatsphäre gewahrt bleibt. Die Benutzer können den Datenbankpfad anpassen, um den Datenzugriff weiter zu kontrollieren. - Welche KI-Modelle werden unterstützt?
Das System ist mit Modellen kompatibel, die das MCP-Protokoll unterstützen, wie z. B. Claude, GPT, Llama usw., und kann auch mit Copilot über VS Code integriert werden. - Was ist, wenn die Installation fehlschlägt?
Überprüfen Sie, ob die Python-Version (3.8+ empfohlen) und die Pip-Abhängigkeiten vollständig sind. Schauen Sie auf der Themenseite des GitHub-Repositorys nach oder versuchen Sie, es manuell zu installieren. - Wie genau ist die semantische Suche?
Stützt sich auf das Einbettungsmodell von LM Studio, um eine höhere Genauigkeit zu erreichen. Benutzer können die URL des Einbettungsdienstes anpassen, um ein robusteres Modell zu verwenden.