View a markdown version of this page

Stockage et récupération de l’historique et du contexte des conversations grâce aux API de gestion de session - Amazon Bedrock

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.

Stockage et récupération de l’historique et du contexte des conversations grâce aux API de gestion de session

Note

Les API de gestion de session sont en version préliminaire et sont susceptibles d’être modifiées.

Les API de gestion de session vous permettent d'enregistrer des points de contrôle pour les conversations en cours dans des applications d'IA génératives conçues avec des frameworks open source, tels que LangGraph et. LlamaIndex Vous pouvez utiliser les API pour gérer en toute sécurité l’état et le contexte des conversations dans le cadre de flux de travail d’IA générative en plusieurs étapes. Il n’est pas nécessaire de créer, de gérer ou de mettre à l’échelle des solutions dorsales personnalisées pour garantir la persistance de l’état et du contexte.

Grâce à les API de gestion de session, vous pouvez effectuer les opérations suivantes :

  • Utiliser les étapes de flux de travail de points de contrôle pour les tests itératifs et les flux de travail avec intervention humaine

  • Reprendre les conversations et les tâches à partir du point d’interruption

  • Examiner les journaux de session pour analyser les étapes du flux de travail et les échecs de débogage

Les sessions étant une ressource dans Amazon Bedrock, vous pouvez contrôler l'accès à la session avec Gestion des identités et des accès AWS (IAM). Par défaut, Amazon Bedrock utilise des clés AWS gérées pour le chiffrement de session, y compris les métadonnées de session, ou vous pouvez utiliser votre propre AWS KMS clé. Pour de plus amples informations, veuillez consulter Chiffrement de session.

Vous pouvez créer et gérer des sessions Amazon Bedrock à l'aide des API ou AWS SDK Amazon Bedrock. Pour les applications basées sur LangGraph, vous pouvez utiliser la BedrockSessionSaver classe de la langgraph_checkpoint_aws.saver bibliothèque. Il s'agit d'une implémentation personnalisée du LangGraph CheckpointSaver. Pour plus d'informations, consultez langgraph-checkpoint-aws dans le référentiel. LangChain GitHub

Note

Vous utilisez une session pour stocker l’état et l’historique des conversations pour les applications d’IA générative conçues avec des cadres open source. Pour les agents Amazon Bedrock, le service gère automatiquement le contexte des conversations et les associe au SessionID spécifique à l'agent que vous spécifiez dans l'opération d'API. InvokeAgent

Exemple de cas d’utilisation

Vous avez peut-être une application qui fait appel à un LangGraph agent pour aider les clients à planifier leurs itinéraires de voyage. Un utilisateur peut démarrer une conversation avec cet agent pour créer l’itinéraire d’un prochain voyage, ajouter des destinations, des hôtels préférés et les détails des vols.

Grâce aux API de gestion de session, l’agent peut enregistrer des états intermédiaires et un contexte persistant tout au long de l’interaction étendue en plusieurs étapes. L’agent peut utiliser une session Amazon Bedrock pour vérifier son état à l’aide de points de contrôle après l’ajout de chaque destination, en préservant les informations relatives aux préférences du client.

Si la conversation est interrompue ou échoue, l’agent peut reprendre la session ultérieurement avec le contexte intact, y compris le texte et les images. Cela permet à l’agent de continuer sans obliger le client à répéter les informations. De plus, en cas d’échec, vous pouvez examiner les détails de la session pour en déterminer la cause.

Flux de travail

Le flux de travail pour utiliser les API de gestion de session est le suivant. Pour plus d'informations sur l'utilisation de la BedrockSessionSaver bibliothèque, consultezGérer les sessions avec BedrockSessionSaver LangGraph la bibliothèque.

  • Création d'une session : lorsque votre utilisateur final lance la conversation pour la première fois, vous créez une session avec l'opération CreateSessionAPI et vous spécifiez un identifiant pour la session. Vous utilisez cet ID lorsque vous stockez et récupérez l’état de la conversation.

  • Stockez les conversations et le contexte : lorsque vos utilisateurs finaux interagissent avec votre assistant d'IA générative, utilisez l'CreateInvocationAPI pour créer un groupe d'interactions au sein de la session. Pour chaque appel, utilisez les opérations de l'PutInvocationStepAPI pour stocker des points de contrôle d'état précis, y compris du texte et des images, pour chaque interaction.

  • Récupérez l'historique et le contexte des conversations : utilisez les opérations GetSessionListInvocations, et GetInvocationStepAPI pour récupérer les métadonnées de session et les détails des interactions.

  • Fin de session — Lorsque la session est terminée, terminez la session avec l'opération EndSessiond'API. Une fois que vous avez mis fin à une session, vous pouvez toujours accéder à son contenu, mais vous ne pouvez rien y ajouter. Pour supprimer la session et son contenu, vous devez utiliser l'opération DeleteSessionAPI.

Considérations

Avant de créer et de gérer des sessions, prenez en considération les éléments suivants :

  • Vous pouvez créer et gérer des sessions avec les API et AWS SDK Amazon Bedrock. Vous ne pouvez pas utiliser la console AWS de gestion pour gérer les sessions.

  • Pour les applications d'agent basées sur LangGraph, vous pouvez utiliser la BedrockSessionSaver classe de la langchain-aws bibliothèque. Il s'agit d'une implémentation personnalisée du LangGraph CheckpointSaver. Pour plus d'informations sur l'utilisation de la BedrockSessionSaver bibliothèque, consultezGérer les sessions avec BedrockSessionSaver LangGraph la bibliothèque. Pour afficher le code directement, consultez langgraph-checkpoint-aws dans le référentiel. LangChain GitHub

  • Si vous spécifiez une AWS KMS clé gérée par le client lorsque vous créez une session, l'utilisateur ou le rôle qui crée la session doit être autorisé à utiliser la clé. Pour plus d’informations, consultez Chiffrement de session.

  • Les API de gestion de session ont les quotas suivants :

    • Nombre d’étapes d’invocation dans une session, toutes invocations confondues : 1 000

    • Taille maximale de chaque étape d’invocation : 50 Mo

    • IdleSession Délai d'attente : 1 heure

    • Période de conservation : les données de session sont automatiquement supprimées après 30 jours