Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Streaming di record di memoria
Lo streaming di record di memoria in Amazon Bedrock AgentCore Memory fornisce notifiche in tempo reale quando i record di memoria vengono creati, aggiornati o eliminati. Invece di interrogare le API per rilevare le modifiche, ricevete eventi push su un Kinesis Data Stream presente nel vostro account, abilitando architetture basate sugli eventi che reagiscono alle modifiche del ciclo di vita dei record di memoria man mano che si verificano.
Con lo streaming di record in memoria, puoi:
-
Ricevi eventi in tempo reale per la creazione, l'aggiornamento e l'eliminazione dei record di memoria
-
Crea architetture basate sugli eventi senza API di polling
-
Trasmetti i dati dei record di memoria nei data lake per il consolidamento e la gestione dei profili
-
Attiva i flussi di lavoro a valle quando vengono estratte nuove informazioni
-
Tieni traccia delle modifiche allo stato dei record di memoria tra agenti e sessioni
Argomenti
Come funziona
Lo streaming dei record di memoria utilizza un modello di distribuzione basato su push. Quando i record di memoria cambiano, gli eventi vengono pubblicati automaticamente su Kinesis Data Stream.
Gli eventi vengono attivati dalle seguenti operazioni:
-
Creazione: estrazione asincrona da eventi di memoria a breve termine (tramite
CreateEvente strategie di memoria) o creazione diretta tramite APIBatchCreateMemoryRecords -
Aggiornamenti: modifica diretta tramite API
BatchUpdateMemoryRecords -
Eliminazione: flussi di lavoro di consolidamento (de-duplication/superseding),
DeleteMemoryRecordAPI o APIBatchDeleteMemoryRecords
Tipi di eventi di streaming
La tabella seguente descrive i tipi di eventi di streaming supportati e il momento in cui vengono attivati.
| Operation | Tipo di evento di streaming | Attivato da |
|---|---|---|
|
Crea |
|
Memoria a lungo termine extraction/consolidation, API |
|
Aggiorna |
|
API |
|
Elimina |
|
|
Schema degli eventi
MemoryRecordCreated / MemoryRecordUpdated
MemoryRecordCreatede MemoryRecordUpdated gli eventi condividono lo stesso schema.
{ "memoryStreamEvent": { "eventType": "<MemoryRecordCreated, MemoryRecordUpdated>", "eventTime": "2026-03-06T16:45:00.000Z", "memoryId": "<memory-id>", "memoryRecordId": "<memory-record-id>", "namespaces": ["<namespace>"], "createdAt": 1736622300000, "memoryStrategyId": "<memory-strategy-id>", "memoryStrategyType": "<memory-strategy-type>", "metadata": {<metadata>}, "memoryRecordText": "<memory-record-text>" } }
Il memoryRecordText campo è incluso solo quando il livello di contenuto nella configurazione di distribuzione dello streaming è impostato suFULL_CONTENT. Per ulteriori dettagli, consulta Configurare il livello di contenuto degli eventi.
MemoryRecordDeleted
{ "memoryStreamEvent": { "eventType": "MemoryRecordDeleted", "eventTime": "2026-02-16T00:13:54.912530116Z", "memoryId": "<memory-id>", "memoryRecordId": "<memory-record-id>" } }
Gli eventi di eliminazione contengono solo gli identificatori di memoria e record, indipendentemente dal livello di contenuto configurato.
Prerequisiti
Prima di configurare lo streaming dei record di memoria, verifica di disporre di:
-
Un AWS account con le autorizzazioni appropriate
-
Accesso ad Amazon Bedrock AgentCore
-
Conoscenza di base di AWS IAM e Amazon Kinesis Data Streams
Configura lo streaming
Fase 1: Creazione di un flusso di dati Kinesis
Crea un Kinesis Data Stream nel tuo account in cui Amazon Bedrock AgentCore pubblicherà gli eventi del ciclo di vita dei record di memoria.
Puoi creare lo stream utilizzando la AWS console, il CDK o la CLI. CloudFormation AWS Se abiliti la crittografia lato server Kinesis, annota la chiave KMS ARN: ti servirà per le autorizzazioni dei ruoli IAM.
Passaggio 2: configura un consumatore
Configura un consumatore per elaborare gli eventi dal tuo Kinesis Data Stream.
Concedi al tuo consumatore AmazonKinesisReadOnlyAccess (o autorizzazioni equivalenti) e aggiungi Kinesis Data Stream come trigger.
Fase 3: Creare un ruolo IAM
Crea un ruolo IAM che Amazon Bedrock AgentCore possa assumere per pubblicare eventi sul tuo Kinesis Data Stream.
Policy di trust:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "bedrock-agentcore.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:bedrock-agentcore:<region>:<account-id>:memory/*" } } } ] }
Politica sulle autorizzazioni:
Per le strategie di memoria integrata, la politica delle autorizzazioni è la seguente:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kinesis:PutRecords", "kinesis:DescribeStream" ], "Resource": "arn:aws:kinesis:<region>:<account-id>:stream/<stream-name>" } ] }
Per le strategie di memoria personalizzate, la politica delle autorizzazioni è la seguente:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kinesis:PutRecords", "kinesis:DescribeStream" ], "Resource": "arn:aws:kinesis:<region>:<account-id>:stream/<stream-name>" }, { "Effect": "Allow", "Action": [ "bedrock:InvokeModel", "bedrock:InvokeModelWithResponseStream" ], "Resource": [ "arn:aws:bedrock:*::foundation-model/*", "arn:aws:bedrock:*:*:inference-profile/*" ], "Condition": { "StringEquals": { "aws:ResourceAccount": "${aws:PrincipalAccount}" } } } ] }
Se Kinesis Data Stream utilizza la crittografia lato server, aggiungete quanto segue alla politica delle autorizzazioni:
{ "Sid": "KMSPermissions", "Effect": "Allow", "Action": "kms:GenerateDataKey", "Resource": "arn:aws:kms:<region>:<account-id>:key/your-kinesis-data-stream-key-id" }
Fase 4: Creare una memoria con lo streaming abilitato
Usa l'CreateMemoryAPI per creare una AgentCore memoria Amazon Bedrock con una risorsa di distribuzione in streaming. È necessario fornire il memoryExecutionRoleArn quando si specifica una risorsa di distribuzione dello streaming.
aws bedrock-agentcore-control create-memory \ --name "MyStreamingMemory" \ --description "Memory with long term memory record streaming enabled" \ --event-expiry-duration 30 \ --memory-execution-role-arn "arn:aws:iam::<account-id>:role/AgentCoreMemoryRole" \ --stream-delivery-resources '{ "resources": [ { "kinesis": { "dataStreamArn": "arn:aws:kinesis:<region>:<account-id>:stream/<stream-name>", "contentConfigurations": [ { "type": "MEMORY_RECORDS", "level": "FULL_CONTENT" } ] } } ] }'
Passaggio 5: verifica l'integrazione dello streaming
Quando crei una memoria con lo streaming abilitato, Amazon Bedrock AgentCore Memory convalida la configurazione e le autorizzazioni. Una volta completata la convalida, un StreamingEnabled evento viene pubblicato sul tuo Kinesis Data Stream.
Chiedete al vostro consumatore un evento di convalida nel seguente formato:
{ "memoryStreamEvent": { "eventType": "StreamingEnabled", "eventTime": "2026-03-03T19:27:08.344082626Z", "memoryId": "<memory-id>", "message": "Streaming enabled for memory resource: <memory-id>" } }
Configura il livello di contenuto dell'evento
Il contentConfigurations campo controlla quali dati sono inclusi in ogni evento. Puoi scegliere tra due livelli di contenuto:
-
METADATA_ONLY: gli eventi di streaming includono solo campi di metadati (
memoryId,,memoryRecordIdnamespacesstrategyId, timestamp e così via). Richiede una chiamata API per recuperare l'intero contenuto del record di memoria. -
FULL_CONTENT: gli eventi di streaming includono tutti i campi di metadati più il
memoryRecordTextcampo contenente il contenuto del record di memoria.
Usalo METADATA_ONLY per notifiche di eventi leggere in cui devi solo sapere che si è verificata una modifica. Da utilizzare FULL_CONTENT quando l'elaborazione downstream richiede il testo del record di memoria senza effettuare chiamate API aggiuntive.
Testa la tua implementazione
Fase 1: Creare eventi di test
Utilizza le API Data Plane per generare eventi del ciclo di vita dei record di memoria e verificarne la visualizzazione nel consumatore.
Crea eventi tramite memoria a breve termine (attiva l'estrazione asincrona):
aws bedrock-agentcore create-event \ --memory-id "<memory-id>" \ --actor-id "test-user" \ --session-id "test-session-1" \ --event-timestamp "$(date -u +"%Y-%m-%dT%H:%M:%S.%3NZ")" \ --payload '[ { "conversational": { "content": {"text": "I prefer Italian restaurants with outdoor seating"}, "role": "USER" } }, { "conversational": { "content": {"text": "Noted! I will remember your preference for Italian restaurants with outdoor seating."}, "role": "ASSISTANT" } } ]'
Crea record direttamente:
aws bedrock-agentcore batch-create-memory-records \ --memory-id "<memory-id>" \ --records '[ { "requestIdentifier": "test-1", "content": {"text": "User prefers window seats on flights"}, "namespaces": ["travel/test-user"], "timestamp": "1729525989" } ]'
Fase 2: Verifica la consegna
Controlla il tuo consumatore per confermare che gli eventi sono stati ricevuti. Dovresti vedere MemoryRecordCreated gli eventi per i record creati con entrambi i metodi.
Puoi anche monitorare lo stato della consegna utilizzando Metrics and Logs.
Puoi utilizzare l'ListMemoryRecordsAPI per fare riferimenti incrociati:
aws bedrock-agentcore list-memory-records \ --memory-id "<memory-id>" \ --namespace "<namespace>"
Gestisci la configurazione dello streaming
Aggiorna la configurazione dello streaming
Usa l'UpdateMemoryAPI per modificare o rimuovere la risorsa di distribuzione dello streaming.
Rimuovi lo streaming:
aws bedrock-agentcore-control update-memory \ --region us-east-1 \ --memory-id "<memory-id>" \ --stream-delivery-resources '{"resources": []}'
Cambia il livello dei contenuti
aws bedrock-agentcore-control update-memory \ --memory-id "<memory-id>" \ --stream-delivery-resources '{ "resources": [ { "kinesis": { "dataStreamArn": "arn:aws:kinesis:us-east-1:<account-id>:stream/<stream-name>", "contentConfigurations": [ { "type": "MEMORY_RECORDS", "level": "METADATA_ONLY" } ] } } ] }'
Osservabilità
Amazon Bedrock AgentCore Memory invia CloudWatch metriche e registri al tuo AWS account, offrendoti visibilità sullo stato e sullo stato della distribuzione dei flussi di record di memoria.
Metriche
Le metriche vengono pubblicate nel tuo account sotto il namespace. AWS/Bedrock-AgentCore
| Metrica | Description |
|---|---|
|
|
Il numero di eventi dei record di memoria pubblicati con successo su Kinesis Data Stream. |
|
|
Il numero di eventi di record di memoria che non sono stati pubblicati su Kinesis Data Stream. |
|
|
Il numero di eventi che hanno avuto esito negativo a causa di problemi di configurazione da parte del cliente, come la mancanza di autorizzazioni IAM o uno stato della chiave KMS non valido. |
Tutte le metriche vengono emesse come unità con le seguenti dimensioni: Count
| Dimensione | Valore | Description |
|---|---|---|
|
Operation |
|
Il tipo di operazione di streaming. |
|
Risorsa |
Memoria ARN |
L'ARN della risorsa di memoria (ad esempio, |
Log
Amazon Bedrock AgentCore Memory invia i log al tuo account quando si verificano errori di pubblicazione sul terminale (non riutilizzabile).
| Campo | Description |
|---|---|
|
|
Messaggio di errore che descrive l'errore. |
|
|
L'ARN Kinesis Data Stream di destinazione. |
|
|
Il codice di errore specifico. |
|
|
Una descrizione leggibile dall'uomo dell'errore. |
|
|
Il tipo di evento dello stream ( |
|
|
L'identificatore del record di memoria interessato. |