Agent-Speicher

Auf dieser Seite wird die konkrete Implementierung von Oracle AI Agent Memory vorgestellt.

Oracle Agent-Speicher

Hinweis: OracleAgentMemory.delete_thread() ist der unterstützte Pfad für die Thread-bezogene kaskadierende Bereinigung. Es entfernt den Thread zusammen mit zugehörigen Nachrichten, dauerhaften Speichern und verwalteten Vektor- oder Chunk-Daten. Dies ist breiter als OracleThread.delete_message(), wodurch nur die Raw-Nachrichtenzeile gelöscht wird.

Klasse oracleagentmemory.core.OracleAgentMemory

Basen: IAgentMemory

Agent-Speicherclient, der von Oracle DB oder einem vom Aufrufer bereitgestellten Speicher gesichert wird.

Erstellen Sie einen Speicherclient.

Beispiele

from oracleagentmemory.core import OracleAgentMemory
client = OracleAgentMemory(
    connection=db_pool,
    embedder=embedder,
    llm=llm,
)
read_only_client = OracleAgentMemory(
    connection=db_pool,
    embedder=embedder,
    extract_memories=False,
)

Methode add_agent

Fügen Sie dem Shop einen Agent-Profildatensatz hinzu.

Hinweise

Agent-Profildatensätze werden im Speicher auf Client-Ebene gespeichert und absichtlich nicht kopiert. Die zurückgegebene Datensatz-ID ist dieselbe öffentliche ID, die von der Anwendung verwendet wird wie agent_id.

Beispiele

from oracleagentmemory.core import OracleAgentMemory
client = OracleAgentMemory(
    connection=db_pool,
    embedder=embedder,
    llm=llm,
)
client.add_agent("a1", "Support assistant")
'a1'

Methode add_memory

Fügen Sie im Speichersystem einen Speicher hinzu, der dem angegebenen Benutzer, Agent und Thread zugewiesen wird.

Beispiele

from oracleagentmemory.core import OracleAgentMemory
client = OracleAgentMemory(
    connection=db_pool,
    embedder=embedder,
    llm=llm,
)
memory_id = client.add_memory("User likes pizza", memory_id="mem-1")
memory_id
'mem-1'

Methode add_user

Fügen Sie der Filiale einen Benutzerprofildatensatz hinzu.

Hinweise

Benutzerprofildatensätze werden im Kundenspeicher gespeichert und absichtlich unkopiert. Die zurückgegebene Datensatz-ID ist dieselbe öffentliche ID, die von der Anwendung verwendet wird wie user_id.

Beispiele

from oracleagentmemory.core import OracleAgentMemory
client = OracleAgentMemory(
    connection=db_pool,
    embedder=embedder,
    llm=llm,
)
client.add_user("u1", "Prefers concise answers.")
'u1'

Methode create_thread

einen Thread erstellen und registrieren

Beispiele

from oracleagentmemory.core import OracleAgentMemory
client = OracleAgentMemory(
    connection=db_pool,
    embedder=embedder,
    llm=llm,
)
thread = client.create_thread(thread_id="c1", user_id="u1")
thread.thread_id
'c1'

Methode delete_agent

Agent-Profildatensatz nach ID löschen.

Hinweise

Kaskadierende Löschvorgänge werden im zugrunde liegenden Speicher geplant und ausgeführt, sodass das Löschen des Profils und alle untergeordneten Löschvorgänge mit Geltungsbereich in einem Speichervorgang erfolgen.

Beispiele

from oracleagentmemory.core import OracleAgentMemory
client = OracleAgentMemory(
    connection=db_pool,
    embedder=embedder,
    llm=llm,
)
client.add_agent("a-delete", "Support assistant")
'a-delete'
client.delete_agent("a-delete")
1

Methode delete_memory

Löschen Sie einen speicherähnlichen Datensatz (z. B. Speicher, Fakt, Voreinstellung oder Richtlinie) nach Kennung.

Beispiele

client = OracleAgentMemory(
    connection=db_pool,
    embedder=embedder,
    llm=llm,
)
memory_id = client.add_memory("Temporary memory", memory_id="mem-delete")
client.delete_memory(memory_id)
1

Methode delete_thread

Löschen Sie alle Datensätze, die mit einer Thread-ID verknüpft sind.

Hinweise

Verwenden Sie diesen Vorgang, wenn ein Thread vollständig entfernt werden muss. Der Backing Store löscht den Thread zusammen mit zugehörigen Thread-bezogenen Nachrichten, dauerhaften Speichern und verwalteten Vektor- oder Chunk-Zeilen. Dies unterscheidet sich von OracleThread.delete_message(), das nur den Raw-Nachrichtendatensatz entfernt und nicht auf abgeleitete Speicher kaskadiert, die aus dieser Nachricht erstellt wurden.

Beispiele

from oracleagentmemory.core import OracleAgentMemory
client = OracleAgentMemory(
    connection=db_pool,
    embedder=embedder,
    llm=llm,
)
thread = client.create_thread(thread_id="c-delete")
client.delete_thread(thread.thread_id)
1

Methode delete_user

Benutzerprofildatensatz nach ID löschen.

Hinweise

Kaskadierende Löschvorgänge werden im zugrunde liegenden Speicher geplant und ausgeführt, sodass das Löschen des Profils und alle untergeordneten Löschvorgänge mit Geltungsbereich in einem Speichervorgang erfolgen.

Beispiele

from oracleagentmemory.core import OracleAgentMemory
client = OracleAgentMemory(
    connection=db_pool,
    embedder=embedder,
    llm=llm,
)
client.add_user("u-delete", "Prefers concise answers.")
'u-delete'
client.delete_user("u-delete")
1

Methode get_thread

Ruft einen zuvor erstellten Thread ab.

Hinweise

Explizite Overrides pro Aufruf haben Vorrang. Wenn Laufzeit-Overrides ausgelassen werden, verwenden erneut geöffnete Threads eine persistente Laufzeitkonfiguration, sofern verfügbar, bevor sie auf SDK-Standardwerte zurückgreifen.

Beispiele

from oracleagentmemory.core import OracleAgentMemory
client = OracleAgentMemory(
    connection=db_pool,
    embedder=embedder,
    llm=llm,
)
created = client.create_thread(thread_id="c1", user_id="u1")
loaded = client.get_thread("c1")
loaded.user_id
'u1'