View a markdown version of this page

Organización de la AgentCore memoria en Memoria - Base amazónica AgentCore

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.

Organización de la AgentCore memoria en Memoria

Puede establecer cómo se organizan los recuerdos a corto y largo plazo en una AgentCore memoria. Esto te permite aislar los recuerdos por sesión y por actor. Para la memoria a largo plazo, también puedes establecer un espacio de nombres para organizar los recuerdos extraídos para una estrategia de memoria.

  • Actor: se refiere a entidades como los usuarios finales o agent/user las combinaciones. Por ejemplo, en un chatbot de soporte de codificación, el actor suele ser el desarrollador que hace las preguntas. El uso del ID del actor ayuda al sistema a saber a qué usuario pertenece la memoria, manteniendo los datos de cada usuario separados y organizados.

  • Sesión: un único período de conversación o interacción entre el usuario y el agente de IA. Agrupa todos los mensajes y eventos relacionados que ocurren durante esa conversación.

  • Estrategia (solo Long-term memoria): muestra qué estrategia de memoria a largo plazo se está utilizando. Este identificador de estrategia se genera automáticamente al crear una AgentCore memoria.

Short-term organización de la memoria

Cuando creas un evento de memoria a corto plazo con CreateEvent, especificas un identificador de sesión (sessionId) y un identificador de actor (actorId) que identifican de forma exclusiva la sesión y el actor del evento. Más adelante, puede recuperar los eventos de un usuario o una sesión mediante operaciones de memoria a corto plazo.

Para ver un código de ejemplo, consulte el paso 3: Capturar el historial de conversaciones.

Long-term organización de la memoria

Al crear o actualizar una AgentCore memoria, si lo desea, puede crear una o más estrategias de memoria. Dentro de una estrategia, usa un espacio de nombres para especificar que la AgentCore memoria organiza las memorias Long-term memoria a largo plazo.

Cada vez que AgentCore Memory extrae una nueva memoria a largo plazo con una estrategia de memoria, la memoria a largo plazo se guarda en el espacio de nombres que haya establecido. Esto significa que todos los recuerdos a largo plazo se clasifican según su espacio de nombres específico, lo que los mantiene organizados y evita cualquier conflicto con otros usuarios o sesiones. Debe utilizar un formato jerárquico separado por barras diagonales y terminar con una barra / diagonal final. La barra diagonal final evita las colisiones de prefijos en las aplicaciones con varios usuarios; por ejemplo, utilízala en lugar de. /actors/Alice/ /actors/Alice Según sea necesario, puede usar las siguientes variables predefinidas entre corchetes en el espacio de nombres en función de las necesidades de la organización de la aplicación:

  • actOrID: identifica a quién pertenece la memoria a largo plazo.

  • StrategyID: muestra qué estrategia de memoria se está utilizando.

  • SessionID: identifica de qué sesión o conversación proviene la memoria.

Por ejemplo, si defines el siguiente espacio de nombres como entrada para tu estrategia al crear una memoria: AgentCore

/strategy/{memoryStrategyId}/actor/{actorId}/session/{sessionId}/

Tras la creación de la memoria, este espacio de nombres podría tener el siguiente aspecto:

/strategy/summarization-93483043/actor/actor-9830m2w3/session/session-9330sds8/

Un espacio de nombres puede tener diferentes niveles de granularidad:

El nivel de organización más granular

/strategy/{memoryStrategyId}/actor/{actorId}/session/{sessionId}/

Granulado a nivel de actor en todas las sesiones

/strategy/{memoryStrategyId}/actor/{actorId}/

Detallado a nivel de estrategia para todos los actores

/strategy/{memoryStrategyId}/

Global en todas las estrategias

/

Para ver un código de ejemplo, consulte Habilitar la memoria a largo plazo.

Para obtener más información sobre cómo organizar la memoria a largo plazo con espacios de nombres, incluidas las variables de espacio de nombres personalizadas y el control de acceso a IAM, consulte Especificar la organización de la memoria a largo plazo con espacios de nombres.

Restrinja el acceso con IAM

Puede crear políticas de IAM para restringir el acceso a la memoria según los ámbitos que defina, como el actor, la sesión y el espacio de nombres. Utilice los ámbitos como claves de contexto en sus políticas de IAM.

La siguiente política restringe el acceso a la recuperación de memorias de un espacio de nombres específico o de registros de una jerarquía de NamespacePath determinada. En este ejemplo, la política permite el acceso solo a memorias con espacios de nombres exactos, como, por ejemplo, o con espacios de nombres incluidos en la siguiente jerarquía de summaries/agent1/ NamespacePath con, por ejemplo, o. summaries/agent1/ summaries/agent1/session1/ summaries/agent1/session2/

{ "Version":"2012-10-17", "Statement": [ { "Sid": "SpecificNamespaceAccess", "Effect": "Allow", "Action": [ "bedrock-agentcore:RetrieveMemoryRecords" ], "Resource": "arn:aws:bedrock-agentcore:us-east-1:123456789012:memory/memory_id", "Condition": { "StringEquals": { "bedrock-agentcore:namespace": "summaries/agent1/" } } }, { "Sid": "SpecificNamespacePathAccess", "Effect": "Allow", "Action": [ "bedrock-agentcore:RetrieveMemoryRecords" ], "Resource": "arn:aws:bedrock-agentcore:us-east-1:123456789012:memory/memory_id", "Condition": { "StringLike": { "bedrock-agentcore:namespacePath": "summaries/agent1/*" } } } ] }