View a markdown version of this page

Mémoire - Base rocheuse de l'Amazonie AgentCore

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Mémoire

Lorsque la mémoire est activée, le harnais conserve l'état de conversation en AgentCore mémoire. Lors des appels suivants avec le même ID de session, l'agent charge l'historique stocké avant de raisonner.

Comment fonctionne la mémoire

  • Short-term la mémoire capture les événements bruts (messages, appels d'outils) au cours d'une session. C'est ce qui assure la continuité de l'agent d'un tour à l'autre.

  • Long-term memory extrait des connaissances durables via des stratégies configurables (sémantique, résumé, préférences de l'utilisateur , épisodique ou personnalisée) et les rend récupérables via une recherche sémantique lors de sessions ultérieures.

  • L'ID d'acteur identifie l'entité qui interagit avec l'agent (un utilisateur, un autre agent ou un système). Les événements de mémoire sont délimités par ActorID + SessionID, de sorte que chaque acteur dispose d'une mémoire isolée. Long-term la récupération utilise ActorID comme variable de modèle dans les chemins d'espace de noms (par exemple/summary/{actorId}/{sessionId}/), en correspondance avec les stratégies de mémoire configurées.

Mémoire gérée

Lorsque vous créez un harnais directement avec l'API du service et que vous omettez la configuration de la mémoire, le service fournit de la mémoire gérée. La AgentCore CLI utilise une valeur par défaut différente : la mémoire des nouveaux harnais CLI est désactivée, sauf si vous sélectionnez une mémoire gérée ou une ressource mémoire existante.

Charges de mémoire

Il n'y a pas de frais supplémentaires pour le harnais lui-même. La mémoire gérée entraîne des frais de AgentCore mémoire standard pour les événements à court terme, les enregistrements de mémoire à long terme stockés et les demandes de récupération. Pour éviter des charges de mémoire persistantes, désactivez la mémoire lors de la création du harnais. Pour plus d'informations, consultez la rubrique AgentCore Tarification Comprenez les coûts des harnais d'Amazon Bedrock.

Pour personnaliser la mémoire gérée au moment de la création :

Exemple
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}}'

Pour mettre à jour les stratégies d'un harnais existant :

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

Créez un projet vide, puis ajoutez un harnais avec mémoire gérée :

agentcore create --project-name MyHarnessProject --no-agent cd MyHarnessProject agentcore add harness \ --name myagent \ --memory-mode managed \ --memory-strategies SEMANTIC,SUMMARIZATION \ --memory-event-expiry-days 30 agentcore deploy

La mémoire est désactivée par défaut. Pour créer le harnais sans mémoire, exécutez la commande suivante au lieu de la agentcore add harness commande précédente :

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

Exécutez agentcore dans un répertoire de projet, sélectionnez Ajouter, puis choisissez Harness. L'assistant inclut une étape de mémorisation.

  1. À l'étape Mémoire, choisissez Aucune mémoire persistante ou Activé pour créer une mémoire persistante pour le harnais.

    Étape de mémoire : pas de mémoire persistante ou activée
  2. Lorsque la mémoire est activée, une option supplémentaire de réglage de la mémoire apparaît dans les paramètres avancés. Activez-le avec Space et appuyez sur Entrée pour régler la récupération.

    Paramètres avancés : option de réglage de la mémoire
  3. Définissez éventuellement le nombre de messages, le top K de récupération et le score de pertinence (chacun peut être ignoré).

    Réglage de la mémoire : nombre de messages, top K, score de pertinence

Confirmez l'assistant, puis agentcore deploy lancez-le pour appliquer.

La mémoire gérée est entièrement gérée par le harnais :

  • La configuration de la stratégie est contrôlée viaUpdateHarness. Vous pouvez toujours organiser read/write des événements et interroger des enregistrements directement via les API de mémoire.

  • La mémoire gérée ne peut pas être supprimée directement via les API de mémoire. Pour transformer la mémoire gérée en une ressource AgentCore mémoire normale, vous pouvez la dissocier du harnais de deux manières :

    • Utilisez-le UpdateHarness pour passer en mode BYO (agentCoreMemoryConfiguration) ou pour le désactiver.

    • deleteManagedMemory=falseTransmettez la suppression à la dissociation : par défaut, la DeleteHarness mémoire gérée est supprimée en cascade.

Stratégies disponibles

Stratégie Description

SEMANTIC

Extrait des connaissances factuelles des conversations, récupérables via une recherche sémantique.

SUMMARIZATION

Crée des résumés continus des conversations, classés par acteur et par session.

USER_PREFERENCE

Capture les préférences et les paramètres des utilisateurs exprimés lors des conversations.

EPISODIC

Enregistre les événements et expériences importants sous forme d'épisodes distincts.

Ajouter de la mémoire existante (BYO)

Si vous avez besoin d'une configuration avancée allant au-delà de ce que propose la mémoire gérée (modèles d'espace de noms personnalisés, chiffrement KMS ou mémoire partagée sur plusieurs harnais), associez plutôt une instance de AgentCore mémoire existante.

Exemple
AWS CLI/boto3

Créez une instance de mémoire :

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

Attachez-le au harnais :

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 --project-name MyHarnessProject --no-agent cd MyHarnessProject agentcore add harness --name myagent \ --memory-arn "arn:aws:bedrock-agentcore:us-west-2:123456789012:memory/MyMemory-abc123" agentcore deploy

Désactiver la mémoire

Pour désactiver complètement la mémoire :

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

Per-user scoping de la mémoire avec identifiant d'acteur

Transmettez actorId au moment de l'appel pour affecter la mémoire à un utilisateur spécifique. Chaque acteur est isolé de la mémoire à court terme et à long terme :

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 récupération de mémoire

Lorsqu'un harnais possède des stratégies de mémoire actives (gérées ou BYO), la récupération fonctionne automatiquement : le harnais dérive une configuration de récupération à partir des stratégies actives de l'instance de mémoire. À chaque invocation, l'agent interroge les souvenirs à long terme pertinents et les injecte dans le contexte de la conversation avant de raisonner.

Comportement par défaut :

  • La récupération est configurée automatiquement avec les paramètres par défaut (topK=10,relevanceScore=0.2) pour l'espace de noms de chaque stratégie active.

  • Aucune configuration manuelle n'est nécessaire pour la mémoire gérée ou la mémoire BYO.

Remplacez les valeurs par défaut : si vous fournissez explicitement un retrievalConfig dans la configuration de la mémoire BYO, vos valeurs sont prioritaires et aucune dérivation automatique ne se produit. Cela vous permet de personnaliser les espaces de noms qui sont interrogés, d'ajuster topK ou relevanceScore de désactiver la récupération pour des stratégies spécifiques.

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"}}}}}'
Important

Si vous mettez à jour les stratégies de votre instance BYO Memory (ajout ou suppression) après l'avoir attachée à un harnais, appelez UpdateHarness pour actualiser la configuration de récupération. Pour la mémoire gérée, la stratégie change grâce à l'UpdateHarnessactualisation automatique de la configuration.

Troncature du contexte

Lorsque l'historique des conversations dépasse la fenêtre contextuelle du modèle, le harnais applique une stratégie de troncature. Configurez cela sur le harnais ou passez à la vitesse supérieure par invocation.

  • sliding_window(par défaut) : conserve les N messages les plus récents. Simple et prévisible.

  • summarization- compresse les anciens messages dans un résumé, préservant ainsi plus de contexte avec moins de jetons.

  • none- pas de troncature. À utiliser uniquement si vous gérez vous-même la taille du contexte.

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

En savoir plus : AgentCore Mémoire, création d'une mémoire, stratégies de mémoire à long terme.