View a markdown version of this page

Memória - Amazon Bedrock AgentCore

Memória

O arnês persiste automaticamente o estado da conversa na AgentCore memória. Em cada invocação, a conversa é salva, delimitada pelo ID da sessão (e, adicionalmente, pelo ID do ator, se fornecido). Nas invocações subsequentes com o mesmo ID de sessão, o histórico do agente é carregado da Memória antes que ele raciocine. Ele lembra o que aconteceu nos turnos anteriores, mesmo após a expiração da sessão de microVM subjacente. Você não precisa passar mensagens anteriores sozinho; basta enviar a nova mensagem.

Como a memória funciona

  • Short-term a memória captura eventos brutos (mensagens, chamadas de ferramentas) em uma sessão. Isso é o que dá continuidade ao agente nas curvas.

  • Long-term a memória extrai conhecimento durável por meio de estratégias configuráveis (semântica, sumarização, preferência do usuário, episódica ou personalizada) e os torna recuperáveis por meio de pesquisa semântica em sessões posteriores.

  • O ID do ator identifica a entidade que está interagindo com o agente (um usuário, outro agente ou um sistema). Os eventos de memória são definidos por ActorID + SessionID, então cada ator tem memória isolada. Long-term retrieval usa ActorID como uma variável de modelo em caminhos de namespace (por exemplo/summary/{actorId}/{sessionId}/), mapeando para as estratégias de memória configuradas.

Memória gerenciada (padrão)

Por padrão, o harness provisiona automaticamente uma instância de AgentCore memória com padrões razoáveis (estratégias semânticas + de sumarização, expiração de eventos de 30 dias). Você não precisa criar ou configurar nada - a memória simplesmente funciona.

Para personalizar a memória gerenciada no momento da criação:

exemplo
AWS CLI/boto3
aws bedrock-agentcore-control create-harness \ --harness-name "MyHarness" \ --execution-role-arn "arn:aws:iam::123456789012:role/MyHarnessRole" \ --memory '{"managedMemoryConfiguration": {"strategies": ["SEMANTIC", "SUMMARIZATION", "USER_PREFERENCE"], "eventExpiryDuration": 60}}'

Para atualizar as estratégias em um arnês existente:

aws bedrock-agentcore-control update-harness \ --harness-id "MyHarness-UuFdkQoXSL" \ --memory '{"optionalValue": {"managedMemoryConfiguration": {"strategies": ["SEMANTIC", "SUMMARIZATION", "USER_PREFERENCE", "EPISODIC"]}}}'
AgentCore CLI

A memória é ativada por padrão quando você cria um chicote:

agentcore create --name myagent agentcore deploy

Para ignorar a memória gerenciada:

agentcore create --name myagent --no-harness-memory
Interactive

Execute agentcore em um diretório de projeto, selecione adicionar e escolha Harness. O assistente inclui uma etapa de memória.

  1. Na etapa Memória, escolha Sem memória persistente ou Ativado para criar memória persistente para o equipamento.

    Etapa de memória: Sem memória persistente ou ativada
  2. Quando a memória está ativada, uma opção extra de ajuste de memória aparece nas configurações avançadas. Ative-o com Espaço e pressione Enter para ajustar a recuperação.

    Configurações avançadas: opção de ajuste de memória
  3. Opcionalmente, defina a contagem de mensagens, o top K de recuperação e a pontuação de relevância (cada uma pode ser ignorada).

    Ajuste de memória: contagem de mensagens, top K, pontuação de relevância

Confirme o assistente e execute agentcore deploy para se inscrever.

A memória gerenciada é totalmente gerenciada pelo chicote:

  • A configuração da estratégia é controlada por meio deUpdateHarness. Você ainda pode realizar read/write eventos e consultar registros diretamente por meio das APIs de memória.

  • A memória gerenciada não pode ser excluída diretamente por meio das APIs de memória. Para transformar a memória gerenciada em um recurso de AgentCore memória normal, você pode desassociá-la do chicote de duas maneiras:

    • Use UpdateHarness para alternar para BYO (agentCoreMemoryConfiguration) ou desativado.

    • deleteManagedMemory=falseEm vez disso, passe a exclusão para dissociar - DeleteHarness exclui em cascata a memória gerenciada por padrão.

Estratégias disponíveis

Estratégia Description

SEMANTIC

Extrai conhecimento factual das conversas, recuperável por meio de pesquisa semântica.

SUMMARIZATION

Cria resumos contínuos de conversas, com escopo definido por ator e sessão.

USER_PREFERENCE

Captura as preferências e configurações do usuário expressas durante as conversas.

EPISODIC

Registra eventos e experiências significativas como episódios discretos.

Adicionar memória existente (BYO)

Se você precisar de uma configuração avançada além da que a memória gerenciada oferece, como modelos de namespace personalizados, criptografia KMS ou memória compartilhada em vários chicotes, conecte uma instância de memória existenteAgentCore .

exemplo
AWS CLI/boto3

Crie uma instância de memória:

aws bedrock-agentcore-control create-memory \ --name "MyMemory" \ --event-expiry-duration 30 \ --description "Memory for my harness"

Conecte-o ao arnês:

aws bedrock-agentcore-control update-harness \ --harness-id "MyHarness-UuFdkQoXSL" \ --memory '{"optionalValue": {"agentCoreMemoryConfiguration": {"arn": "arn:aws:bedrock-agentcore:us-west-2:123456789012:memory/MyMemory-abc123"}}}'
AgentCore CLI
agentcore create --name myagent --memory-arn "arn:aws:bedrock-agentcore:us-west-2:123456789012:memory/MyMemory-abc123" agentcore deploy

Desativar memória

Para desativar totalmente a memória:

aws bedrock-agentcore-control update-harness \ --harness-id "MyHarness-UuFdkQoXSL" \ --memory '{"optionalValue": {"disabled": {}}}'

Per-user escopo de memória com ID de ator

Passe actorId no momento da chamada para definir o escopo da memória para um usuário específico. Cada ator obtém memória isolada de curto e longo prazo:

response = client.invoke_harness( harnessArn=HARNESS_ARN, runtimeSessionId=SESSION_ID, actorId="user-123", messages=[{"role": "user", "content": [{"text": "What do you remember about my preferences?"}]}], )

Long-term recuperação de memória

Quando um chicote tem estratégias de memória ativa (gerenciadas ou BYO), a recuperação funciona automaticamente - o chicote deriva uma configuração de recuperação das estratégias ativas da instância de memória. Em cada invocação, o agente consulta memórias relevantes de longo prazo e as injeta no contexto da conversa antes de raciocinar.

Comportamento padrão:

  • A recuperação é configurada automaticamente com parâmetros padrão (topK=10,relevanceScore=0.2) para cada namespace da estratégia ativa.

  • Nenhuma configuração manual é necessária para memória gerenciada ou BYO.

Substitua os padrões: se você fornecer explicitamente um retrievalConfig na configuração de memória BYO, seus valores terão prioridade e nenhuma derivação automática ocorrerá. Isso permite que você personalize quais namespaces são consultados, ajuste topK ou relevanceScore desabilite a recuperação para estratégias específicas.

aws bedrock-agentcore-control update-harness \ --harness-id "MyHarness-UuFdkQoXSL" \ --memory '{"optionalValue": {"agentCoreMemoryConfiguration": {"arn": "arn:aws:bedrock-agentcore:us-west-2:123456789012:memory/MyMemory-abc123", "retrievalConfig": {"/facts/{actorId}/": {"topK": 5, "relevanceScore": 0.5, "strategyId": "FactExtractor-abc123"}}}}}'
Importante

Se você atualizar as estratégias da sua instância de memória BYO (adicionar ou remover) depois de conectá-la a um chicote, ligue UpdateHarness para atualizar a configuração de recuperação. Para memória gerenciada, a estratégia muda por meio da UpdateHarness atualização automática da configuração.

Truncamento de contexto

Quando o histórico de conversas cresce além da janela de contexto do modelo, o equipamento aplica uma estratégia de truncamento. Configure isso no chicote ou substitua por invocação.

  • sliding_window(padrão) - mantém as N mensagens mais recentes. Simples e previsível.

  • summarization- compacta mensagens antigas em um resumo, preservando mais contexto em menos tokens.

  • none- sem truncamento. Use somente se você mesmo gerenciar o tamanho do contexto.

aws bedrock-agentcore-control update-harness \ --harness-id "MyHarness-UuFdkQoXSL" \ --truncation '{"strategy": "sliding_window", "slidingWindowConfig": {"numMessages": 30}}'

Saiba mais: AgentCore Memória, crie um armazenamento de memória, estratégias de memória de longo prazo.