Cree un evento
Los eventos son las unidades fundamentales de corto plazo de las que se extrae la información estructurada a la memoria a largo plazo en AgentCore la memoria. La CreateEventoperación permite almacenar varios tipos de datos en AgentCore la memoria, organizados por actor y sesión. Los eventos se clasifican dentro de la memoria de la siguiente manera:
- ActorId
-
Identifica la entidad asociada al evento, como los usuarios finales o las combinaciones agent/user
- SessionId
-
Agrupa eventos relacionados, como una sesión de conversación
La CreateEvent operación almacena un nuevo evento inmutable dentro de una sesión de memoria específica. Los eventos representan datos individuales que el agente quiere recordar, como los mensajes de conversación, las acciones del usuario o los eventos del sistema.
Esta operación es útil para:
-
Grabar el historial de conversaciones entre usuarios, agentes y herramientas
-
Almacenar las interacciones y los comportamientos de los usuarios
-
Capturar los eventos del sistema y los cambios de estado
-
Crear un registro cronológico de las actividades de una sesión
Para ver un código de ejemplo, consulte Escenario: un agente de IA de atención al cliente que usa AgentCore Memory.
Tipos de carga útil de eventos
El payload parámetro acepta una lista de elementos de carga útil, lo que permite almacenar diferentes tipos de datos en un solo evento. Los tipos de carga útil más comunes incluyen:
- Conversacional
-
Para almacenar mensajes de conversación con funciones (por ejemplo, «usuario» o «asistente») y contenido.
- Blob
-
Para almacenar datos en formato binario, como imágenes y documentos, o datos exclusivos de su agente, como los datos almacenados en formato JSON.
nota
Actualmente, solo los datos conversacionales fluyen a la memoria a largo plazo.
Ramificación de eventos
El branch parámetro permite organizar eventos mediante una ramificación avanzada. Esto resulta útil para situaciones como la edición de mensajes o rutas de conversación alternativas. Por ejemplo, supongamos que tienes una conversación prolongada y te das cuenta de que te interesa explorar una conversación alternativa a partir de hace 5 mensajes. Puedes usar el branch parámetro para iniciar una nueva conversación a partir de ese mensaje, almacenado en la nueva rama, lo que también te permite volver a la conversación original. Y lo que es más mundano, es útil si quieres permitir que tu usuario edite su mensaje más reciente (en caso de que el usuario presione Entrar antes o tenga un error tipográfico) y continuar la conversación.
Al crear una rama, especificas:
- name
-
Un nombre descriptivo para la rama, como «conversación editada».
- rootEventId
-
El ID del evento desde el que se origina la sucursal.
Este es un ejemplo de cómo crear un evento ramificado para representar un mensaje editado:
{ "memoryId": "mem-12345abcdef", "actorId": "/agent-support-123/customer-456", "sessionId": "session-789", "eventTimestamp": 1718806000000, "payload": [ { "Conversational": { "content": "I'm looking for a waterproof action camera for extreme sports.", "role": "user" } } ], "branch": { "name": "edited-conversation", "rootEventId": "evt-67890" } }