Memoria del agente

Esta página presenta la implantación concreta de memoria del agente de Oracle AI.

Memoria del Agente de Oracle

Nota: OracleAgentMemory.delete_thread() es la ruta de acceso soportada para la limpieza en cascada de ámbito de thread. Elimina el thread junto con los mensajes asociados, las memorias duraderas y los datos vectoriales o fragmentarios gestionados. Es más amplio que OracleThread.delete_message(), que suprime solo la fila de mensaje sin formato.

clase oracleagentmemory.core.OracleAgentMemory

Bases: IAgentMemory

Cliente de memoria de agente respaldado por Oracle DB o un almacén proporcionado por el emisor de llamada.

Cree un cliente de memoria.

Ejemplos

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,
)

método add_agent

Agregue un registro de perfil de agente a la tienda.

Notas

Los registros de perfil de agente se almacenan en el almacén de nivel de cliente y se anula el ámbito intencionalmente. El identificador de registro devuelto es el mismo identificador público que la aplicación utiliza como agent_id.

Ejemplos

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

método add_memory

Agregue una memoria en el sistema de memoria, atribuida al usuario, agente y thread indicados.

Ejemplos

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'

método add_user

Agregue un registro de perfil de usuario a la tienda.

Notas

Los registros de perfil de usuario se almacenan en el almacén de nivel de cliente y se anula el ámbito intencionalmente. El identificador de registro devuelto es el mismo identificador público que la aplicación utiliza como user_id.

Ejemplos

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

método create_thread

Cree y registre un thread.

Ejemplos

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'

método delete_agent

Suprimir un registro de perfil de agente por identificador.

Notas

Las supresiones en cascada se planifican y ejecutan dentro del almacén de copia de seguridad para que la supresión de perfil y todas las supresiones secundarias de ámbito se realicen en una sola operación de almacén.

Ejemplos

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

método delete_memory

Eliminar un registro similar a la memoria (por ejemplo, una memoria, un hecho, una preferencia o una directriz) por identificador.

Ejemplos

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

método delete_thread

Suprimir todos los registros asociados a un identificador de thread.

Notas

Utilice esta operación cuando necesite la eliminación completa de retención de un thread. El almacén de copia de seguridad suprime el thread junto con los mensajes de ámbito de thread asociados, las memorias duraderas y las filas de vector o fragmento gestionadas. Esto difiere de OracleThread.delete_message(), que elimina solo el registro de mensaje sin formato y no se aplica en cascada a las memorias derivadas creadas a partir de ese mensaje.

Ejemplos

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

método delete_user

Suprimir un registro de perfil de usuario por identificador.

Notas

Las supresiones en cascada se planifican y ejecutan dentro del almacén de copia de seguridad para que la supresión del perfil y todas las supresiones secundarias de ámbito se realicen en una sola operación de almacén.

Ejemplos

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

método get_thread

Recuperar un subproceso creado anteriormente.

Notas

Las sustituciones explícitas por llamada tienen prioridad. Cuando se omiten las sustituciones de tiempo de ejecución, los threads reabiertos utilizan la configuración de tiempo de ejecución persistente cuando está disponible antes de volver a los valores por defecto del SDK.

Ejemplos

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'