View a markdown version of this page

Crea un evento - Amazon Bedrock AgentCore

Crea un evento

Gli eventi sono le unità fondamentali a breve termine da cui le informazioni strutturate vengono estratte nella memoria a lungo termine in AgentCore Memoria. L'CreateEventoperazione consente di archiviare vari tipi di dati all'interno della AgentCore Memoria, organizzati per attore e sessione. Gli eventi rientrano nell'ambito della memoria in:

ActorId

Identifica l'entità associata all'evento, ad esempio utenti finali o combinazioni agent/user

SessionId

Raggruppa gli eventi correlati, ad esempio una sessione di conversazione

L'CreateEventoperazione memorizza un nuovo evento immutabile all'interno di una sessione di memoria specificata. Gli eventi rappresentano singole informazioni che l'agente desidera ricordare, ad esempio messaggi di conversazione, azioni dell'utente o eventi di sistema.

Questa operazione è utile per:

  • Registrazione della cronologia delle conversazioni tra utenti, agenti e strumenti

  • Memorizzazione delle interazioni e dei comportamenti degli utenti

  • Registrazione degli eventi di sistema e dei cambiamenti di stato

  • Creazione di un registro cronologico delle attività all'interno di una sessione

Per esempio di codice, vedi Scenario: un agente di intelligenza artificiale dell'assistenza clienti che utilizza AgentCore la memoria.

Tipi di payload degli eventi

Il payload parametro accetta un elenco di elementi del payload, che consente di archiviare diversi tipi di dati in un unico evento. I tipi di payload più comuni includono:

Conversazionale

Per archiviare messaggi di conversazione con ruoli (ad esempio, «utente» o «assistente») e contenuti.

Blob

Per archiviare dati in formato binario, come immagini e documenti, o dati esclusivi dell'agente, come i dati archiviati in formato JSON.

Nota

Attualmente, solo i dati conversazionali vengono trasferiti nella memoria a lungo termine.

Ramificazione degli eventi

Il branch parametro consente di organizzare eventi tramite ramificazioni avanzate. Questo è utile per scenari come la modifica dei messaggi o percorsi di conversazione alternativi. Ad esempio, supponiamo di avere una conversazione di lunga durata e di renderti conto di essere interessato a esplorare una conversazione alternativa a partire da 5 messaggi fa. Puoi utilizzare il branch parametro per iniziare una nuova conversazione da quel messaggio, archiviato nel nuovo ramo, che ti consente anche di tornare alla conversazione originale. E, più in generale, questo è utile se vuoi consentire all'utente di modificare il messaggio più recente (nel caso in cui l'utente prema invio prima o abbia un errore di battitura) e continuare la conversazione.

Quando si crea un ramo, si specifica:

name

Un nome descrittivo per il ramo, ad esempio «conversazione modificata».

rootEventId

L'ID dell'evento da cui ha origine il ramo.

Ecco un esempio di creazione di un evento ramificato per rappresentare un messaggio modificato:

{ "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" } }