Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Ingiera contenido en la memoria a largo plazo
Utilízalo IngestData para enviar contenido directamente con el fin de extraerlo de memoria a largo plazo, sin conservarlo como un evento de memoria a corto plazo.
¿Cuándo usar IngestData
Utilízalo IngestData cuando necesites almacenar contenido en una memoria a largo plazo, pero no necesites mantener la interacción sin procesar como un evento recuperable. Por ejemplo:
-
Solo necesitas los registros de memoria extraídos, no la interacción literal.
-
Quieres evitar la sobrecarga de almacenamiento a corto plazo que supone la persistencia de un evento que nunca volverías a leer.
-
Tu aplicación ya conserva las interacciones sin procesar, por lo que solo necesitas extraer de ellas los registros a largo plazo.
Como IngestData no almacena un evento a corto plazo, el contenido enviado no se puede recuperar ni ListSessions reorganizar mediante ramificaciones. GetEvent ListEvents
nota
Para mantener la interacción sin procesar como un evento a corto plazo, CreateEvent utilízala en su lugar.
¿Cómo IngestData funciona
Si la solicitud se realiza correctamente, se confirma que se ha aceptado el contenido; los registros de memoria a largo plazo resultantes estarán disponibles una vez procesado el contenido.
Cuando se complete el procesamiento, recupere los registros de memoria a largo plazo resultantes mediante RetrieveMemoryRecords las mismas operaciones que se utilizan para cualquier otro registro de memoria a largo plazo. ListMemoryRecords GetMemoryRecord
IngestDataadmite dos tipos de carga útil:
- Conversacional
-
Un mensaje de conversación con un rol (por ejemplo,
USERoASSISTANT) y contenido de texto. - JSON
-
JSON-formatted datos, como eventos de comportamiento, registros de actividad o eventos del sistema.
Si lo desea, puede adjuntar metadatos para enriquecer los registros extraídos. Para obtener más información, consulte Metadatos estructurados para memorias a largo plazo.
Los registros extraídos se clasifican en un espacio de nombres. Para obtener más información, consulte Especificar la organización de la memoria a largo plazo con espacios de nombres.
actorIdIdentifica la entidad (por ejemplo, un usuario final o un agente) y el contenido del sessionId grupo dentro de una sesión. El contenido que comparte el mismo actorId espacio de nombres se trata como un contexto relacionado durante la extracción. sessionId
nota
IngestDatalos fanáticos se conforman con las estrategias de memoria a largo plazo configuradas en la memoria, excepto las estrategias autogestionadas, que tienen sus propios flujos de trabajo de procesamiento de la memoria.
Ejemplo
El siguiente ejemplo incorpora contenido conversacional y no conversacional.
import boto3 from datetime import datetime # Initialize the Boto3 client for data plane operations data_client = boto3.client('bedrock-agentcore', region_name='us-west-2') response = data_client.ingest_data( memoryId='mem-12345abcdef', actorId='customer-123', sessionId='session-456', contentTimestamp=datetime.now(), source={ 'inline': { 'payload': [ { 'conversational': { 'content': {'text': 'I prefer window seats on flights.'}, 'role': 'USER' } }, { 'conversational': { 'content': {'text': "Noted — I'll remember your window seat preference."}, 'role': 'ASSISTANT' } }, { 'json': { 'content': { 'customer_tier': 'gold', 'preferences': {'seat': 'window', 'meal': 'vegetarian'}, 'loyalty_points': 48200 } } } ] } } ) # IngestData is asynchronous; the response echoes the session the content was ingested into. print(f"Ingested content into session: {response['sessionId']}")
Realice un seguimiento del progreso de la ingestión
Para realizar un seguimiento de lo que ocurre después de una solicitud exitosa y detectar problemas, usa los siguientes enfoques.
Verifique los resultados de la extracción
Tras la ingestión, los registros de memoria suelen aparecer en cuestión de segundos a minutos, según el tamaño del contenido y la configuración de la estrategia. Para confirmar que se ha completado la extracción:
-
Úselo ListMemoryRecords o RetrieveMemoryRecords para comprobar si han aparecido los registros de memoria a largo plazo esperados.
-
Configure una transmisión de Kinesis para recibir notificaciones en tiempo real cuando se creen registros de memoria. Consulte Transmisión de registros de memoria para obtener instrucciones de configuración.
Gestione los errores de extracción
Si la extracción falla, AgentCore mueve el trabajo fallido a una cola dedicada para su recurso de memoria. ListMemoryExtractionJobsUtilícelo para ver los trabajos fallidos y StartMemoryExtractionJob para redireccionarlos después de abordar la causa principal. Para ver los códigos por los que se producen los errores, los pasos para solucionarlos y cómo configurar la supervisión proactiva con la FailedExtraction CloudWatch métrica, consulte Redrive las ingestiones fallidas.
Para habilitar los registros y rastreos de las aplicaciones para obtener una visibilidad más profunda del ciclo de vida del procesamiento, consulta Cómo habilitar la observabilidad del tiempo de AgentCore ejecución, la memoria, la puerta de enlace, las herramientas integradas y los recursos de identidad.