

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.

# Almacenamiento y recuperación del historial y el contexto de las conversaciones con las API de administración de sesiones
<a name="sessions"></a>

**nota**  
Las API de administración de sesiones se encuentran en versión preliminar y están sujetas a cambios.

 Las API de administración de sesiones le permiten guardar puntos de control para las conversaciones en curso en aplicaciones de IA generativas creadas con marcos de código abierto, como y. LangGraph LlamaIndex Puede utilizar las API para administrar de forma segura el estado y el contexto de las conversaciones en los flujos de trabajo de IA generativa de varios pasos. No es necesario crear, mantener ni escalar soluciones de back-end personalizadas para la persistencia del estado y el contexto. 

Con las API de administración de sesiones, puede hacer lo siguiente:
+ Comprobar las etapas del flujo de trabajo para realizar pruebas iterativas y flujos de trabajo con intervención humana
+  Reanudar las conversaciones y las tareas desde el punto de interrupción 
+ Revisar los registros de las sesiones para analizar las etapas del flujo de trabajo y depurar los errores

Como las sesiones son un recurso en Amazon Bedrock, puede controlar el acceso a la sesión con AWS Identity and Access Management (IAM). De forma predeterminada, Amazon Bedrock usa claves AWS administradas para el cifrado de la sesión, incluidos los metadatos de la sesión, o puede usar su propia AWS KMS clave. Para obtener más información, consulte [Cifrado de sesión](sessions-encryption.md).

 Puede crear y gestionar sesiones de Amazon Bedrock con las API o AWS SDK de Amazon Bedrock. Para las aplicaciones basadas en ellas LangGraph, puede usar la `BedrockSessionSaver` clase de la biblioteca. `langgraph_checkpoint_aws.saver` Se trata de una implementación personalizada de LangGraph CheckpointSaver. Para obtener más información, consulte [langgraph-checkpoint-aws](https://github.com/langchain-ai/langchain-aws/tree/main/libs/langgraph-checkpoint-aws) en el repositorio. [LangChain](https://github.com/langchain-ai) GitHub 

**nota**  
Para almacenar el estado y el historial de conversaciones de las aplicaciones de IA generativa creadas con plataformas de código abierto se usa una sesión. En el caso de los agentes de Amazon Bedrock, el servicio administra automáticamente el contexto de la conversación y lo asocia al SessionID específico del agente que especifique en la operación de la API. [InvokeAgent](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeAgent.html)

**Topics**
+ [Ejemplo de casos de uso](#sessions-use-case)
+ [Flujo de trabajo](#sessions-workflow)
+ [Consideraciones](#sessions-considerations)
+ [Cifrado de sesión](sessions-encryption.md)
+ [Creación de una sesión para prepararse para almacenar el historial y el contexto de la conversación](sessions-create.md)
+ [Almacenamiento del historial y el contexto de la conversación de una sesión](sessions-store-coversation.md)
+ [Recuperación del historial y el contexto de la conversación de una sesión](sessions-retrieve-coversation.md)
+ [Finalización de una sesión cuando el usuario finaliza la conversación](sessions-end-session.md)
+ [Eliminación de una sesión y todos sus datos](sessions-delete-session.md)
+ [Almacene y recupere el historial y el contexto de las conversaciones con la BedrockSessionSaver LangGraph biblioteca](sessions-opensource-library.md)

## Ejemplo de casos de uso
<a name="sessions-use-case"></a>

Es posible que tengas una aplicación que utilice un LangGraph agente para ayudar a los clientes a planificar sus itinerarios de viaje. Un usuario puede iniciar una conversación con este agente para crear el itinerario de un próximo viaje, añadiendo destinos, hoteles preferidos y datos de los vuelos. 

Con las API de administración de sesiones, el agente puede guardar los estados intermedios y el contexto persistente a lo largo de la interacción ampliada de varios pasos. El agente podría utilizar una sesión de Amazon Bedrock para comprobar su estado después de añadir cada destino y conservar los detalles sobre las preferencias del cliente.

Si la conversación se interrumpe o se produce un error, el agente puede reanudar la sesión más tarde con el contexto intacto, incluidos el texto y las imágenes. Esto permite al agente continuar sin necesidad de que el cliente repita la información. Además, en caso de error, puede investigar los detalles de la sesión para depurar la causa.

## Flujo de trabajo
<a name="sessions-workflow"></a>

El flujo de trabajo para usar las API de administración de sesiones es el siguiente. Para obtener información sobre el uso de la BedrockSessionSaver biblioteca, consulte[Gestione las sesiones con BedrockSessionSaver LangGraph la biblioteca](sessions-opensource-library.md). 
+ **Crear una sesión**: cuando el usuario final inicia la conversación por primera vez, usted crea una sesión con la operación de la [CreateSession](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_CreateSession.html)API y especifica un ID para la sesión. Este ID se utiliza para almacenar y recuperar el estado de la conversación.
+ **Almacene las conversaciones y el contexto**: a medida que los usuarios finales interactúan con su asistente de IA generativa, utilice la [CreateInvocation](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_CreateInvocation.html)API para crear un grupo de interacciones dentro de la sesión. Para cada invocación, usa las operaciones de la [PutInvocationStep](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_PutInvocationStep.html)API para almacenar puntos de control de estado detallados, incluidos texto e imágenes, para cada interacción.
+ **Recupere el historial y el contexto de la conversación**: utilice las operaciones [GetSession[ListInvocations](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_ListInvocations.html)](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_GetSession.html), y [GetInvocationStep](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_GetInvocationStep.html)API para recuperar los metadatos de la sesión y los detalles de las interacciones.
+ **Finalizar la sesión**: cuando se complete la sesión, finalice la sesión con la operación de la [EndSession](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_EndSession.html)API. Una vez finalizada una sesión, podrá seguir accediendo a su contenido, pero no podrá añadirlo. Para eliminar la sesión y su contenido, se utiliza la operación de [DeleteSession](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_DeleteSession.html)API.

## Consideraciones
<a name="sessions-considerations"></a>

Antes de crear y administrar sesiones, tenga en cuenta lo siguiente:
+ Puede crear y gestionar sesiones con las API y los AWS SDK de Amazon Bedrock. No puede usar la consola de AWS administración para administrar las sesiones.
+ En el caso de las aplicaciones de agente integradas LangGraph, puede utilizar la `BedrockSessionSaver` clase de la `langchain-aws` biblioteca. Se trata de una implementación personalizada de LangGraph CheckpointSaver. Para obtener información sobre el uso de la BedrockSessionSaver biblioteca, consulte[Gestione las sesiones con BedrockSessionSaver LangGraph la biblioteca](sessions-opensource-library.md). Para ver el código directamente, consulte [langgraph-checkpoint-aws](https://github.com/langchain-ai/langchain-aws/tree/main/libs/langgraph-checkpoint-aws) en el repositorio. [LangChain](https://github.com/langchain-ai) GitHub 
+ Si especificas una AWS KMS clave administrada por el cliente al crear una sesión, el usuario o rol que crea la sesión debe tener permiso para usar la clave. Para obtener más información, [Cifrado de sesión](sessions-encryption.md).
+ Las API de administración de sesiones tienen las siguientes cuotas:
  + Número de pasos de invocación en una sesión en todas las invocaciones: 1000
  + Tamaño máximo de cada paso de invocación: 50 MB
  + IdleSession Tiempo de espera: 1 hora
  + Período de retención: los datos de la sesión se eliminan automáticamente después de 30 días