Agentenspeicher und Sitzungen

Um Kontext zu halten, benötigt ein Agent zwei Arten von Zustanden: den Zustand der Interaktion, die er gerade verarbeitet, und das dauerhafte Wissen, das er von einem Gespräch zum nächsten überträgt. Azure Databricks bietet für jedes einen vollständig verwalteten Speicher, der sowohl von Lakebase unterstützt wird als auch von Agenten nutzbar ist, die auf jedem beliebigen Framework basieren:

  • Agentensitzungen speichern den Sitzungszustand eines Agenten: den Zustand, den ein Agent oder ein Framework für eine Interaktion beibehält. Am häufigsten handelt es sich dabei um die Konversationshistorie (das geordnete Transkript von Nachrichten, Werkzeugaufrufen und Ergebnissen), aber es kann jeder Zustand sein, den ein Framework behält, wie zum Beispiel ein LangGraph-Graph. Der Agent liest es zu Beginn eines Gesprächszugs und ergänzt es, während die Interaktion läuft.
  • Das Agentenspeicher speichert dauerhafte Fakten, Präferenzen und Entscheidungen, die in späteren, separaten Gesprächen eines Agenten per semantischer Suche abgerufen werden.

Um einen neuen Agenten mit bereits eingerichteten Sitzungen und Speicher zu erstellen, folgen Sie dem Agent Bricks-Quickstart. Um Sitzungen und Speicher zu einem bereits erstellten Agenten hinzuzufügen, folgen Sie dem Tutorial: Sitzungen und Speicher zu einem bestehenden Agenten hinzufügen.

Wie Sitzungen und Gedächtnis zusammenhängen

Ein Agent liest und hängt Daten für das aktuelle Gespräch an einen Sitzungsspeicher an und ruft dauerhafte Fakten ab und speichert sie in einem Memory-Store, der sich über Gespräche erstreckt. Eine Speicherpipeline liest Sitzungen aus dem Sitzungsspeicher und destilliert sie in den Memory-Store.

Die Sitzungen sind auf eine Interaktion beschränkt: den Arbeitszustand, den der Agent wiederholt, um diese Interaktion fortzusetzen, wie zum Beispiel das Gesprächstranskript. Eine Sitzung wächst innerhalb der Interaktion und ist für sich allein abgeschlossen.

Erinnerungen sind auf ein Subjekt beschränkt, nicht auf eine Interaktion: die dauerhaften Fakten, die in einem zukünftigen, nicht zusammenhangenden Gespräch noch von Bedeutung sein sollten, wie die stabilen Präferenzen eines Nutzers, eine vergangene Entscheidung oder ein laufendes Projekt. Der Agent ruft sie immer dann zurück, wenn sie relevant sind, unabhängig davon, in welchem Gespräch sie aufkam.

Memory-Pipelines wandeln Sitzungen in Erinnerungen um. Eine Memory-Pipeline liest die Konversationen in einem Session-Store, extrahiert die dauerhaften Fakten und schreibt sie auf Abruf oder nach einem Zeitplan in einen Memory-Store. Nutze eine davon, um Erinnerungen aus der Gesprächshistorie aufzubauen, ohne deinem Agenten Memory-Writing-Tools hinzuzufügen.

Unterhaltungen und Erinnerungen verbinden sich an einem Punkt, an dem es sich lohnt, etwas in einem Gespräch zu bewahren. Eine Speicherpipeline, Ihr Agent oder Ihre Anwendung destilliert die dauerhaften Fakten aus einer Sitzung und schreibt sie in den Speicher. Die Sitzung wird später gelöscht oder läuft ab, aber der Speicher bleibt bestehen. Deshalb sind die Speicher unabhängig: Das Löschen einer Sitzung oder eines gesamten Speichers löscht keinen Speicher, der im Speicher gespeichert ist.

Verwenden Sie beides zusammen für die meisten Anwendungsfälle: Sitzungen geben dem Agenten Kontinuität innerhalb eines Gesprächs, und das Gedächtnis verleiht ihm Kontinuität über Gespräche hinweg. Du kannst auch beide einzeln verwenden. Nutze Sitzungen allein, wenn du nur den Interaktionszustand brauchst, oder Speicher allein, wenn dein Framework bereits den Sitzungszustand verwaltet.

Wie diese Konzepte auf die Gedächtnisforschung übertragen werden

Azure Databricks Memory Research beschreibt dieselbe Architektur mit unterschiedlichen Begriffen. Der Sitzungsspeicher speichert episodische Erinnerungen, den rohen Datensatz jeder Sitzung. Der Speicher enthält abgeleitete Erinnerungen, die Fakten und Arbeitsabläufe, die aus diesen Sitzungen destilliert wurden. Eine Speicherpipeline ist der Offline-Traum-Prozess, der episodische Erinnerungen im abgeleiteten Speicher destilliert und im Laufe der Zeit konsolidiert.

Wählen Sie, wo Sie anfangen möchten

Auswahl Verwenden Sie es, um
Agent Bricks Quickstart Baue und deploye einen neuen Agenten mit der Agent Bricks CLI, mit bereits eingerichteten Sitzungen und Speicher.
Tutorial: Füge Sitzungen und Speicher zu einem bestehenden Agenten hinzu Verbinden Sie einen bereits gebauten Agenten Schritt für Schritt mit einem Sitzungsspeicher, einem Memory-Speicher und einer Speicherpipeline.
Agent-Sitzungen Behalten Sie den Sitzungszustand eines Agenten fort und setzen Sie ihn fort, damit eine Interaktion einen Neustart übersteht, und bauen Sie den vollständigen Kontext (einschließlich Nachrichten, Tool-Calls und Begründung) bei einer Nachverfolgung wieder auf.
Agentspeicher Erinnern Sie sich an die Vorlieben, Fakten und Entscheidungen eines Nutzers in separaten Gesprächen und personalisieren Sie die Antworten mit dem, was der Agent zuvor gelernt hat.
Pipelines für Agentenspeicher Destillieren Sie Langzeitspeicherungen aus den Gesprächen in einem Session-Store, auf Abruf oder nach einem festen Zeitplan, ohne Ihrem Agenten Tools zum Schreiben von Erinnerungen hinzuzufügen.

Veraltete Ansätze

Der folgende frühere Ansatz für den Agentenspeicher ist ein Legacy-Prinzip und wird für neue Agenten nicht empfohlen: