Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Archiviare e recuperare la cronologia e il contesto delle conversazioni con le API per la gestione delle sessioni
Nota
Le API per la gestione delle sessioni sono in versione di anteprima per e sono soggette a modifica.
Le API per la gestione delle sessioni consentono di salvare i checkpoint per le conversazioni in corso in applicazioni di IA generativa create con framework open source, come LangGraph e LlamaIndex. È possibile utilizzare le API per gestire in modo sicuro lo stato e il contesto delle conversazioni in flussi di lavoro di IA generativa in più fasi. Non è necessario creare, mantenere o scalare soluzioni di back-end personalizzate per la persistenza dello stato e del contesto.
Con le API per la gestione delle sessioni è possibile procedere come segue:
-
Fasi del flusso di lavoro di checkpoint per test iterativi e flussi di lavoro human-in-the-loop.
-
Riprendere le conversazioni e le attività dal punto di interruzione.
-
Rivedere i log delle sessioni per analizzare le fasi del flusso di lavoro e gli errori di debug.
Poiché le sessioni sono una risorsa in Amazon Bedrock, è possibile controllare l’accesso alla sessione con AWS Identity and Access Management (IAM). Per impostazione predefinita, Amazon Bedrock utilizza chiavi gestite da AWS per crittografare le sessioni, inclusi i metadati della sessione, oppure è possibile utilizzare una propria chiave AWS KMS. Per ulteriori informazioni, consulta Crittografia di una sessione.
È possibile creare e gestire sessioni di Amazon Bedrock con le API di Amazon Bedrock. o gli SDK AWS. Per le applicazioni basate su LangGraph, è possibile utilizzare usare la classe BedrockSessionSaver della libreria langgraph_checkpoint_aws.saver, un’implementazione personalizzata di LangGraph CheckpointSaver. Per ulteriori informazioni, vedere langgraph-checkpoint-aws
Nota
Una sessione viene utilizzata per archiviare lo stato e la cronologia delle conversazioni per applicazioni di IA generativa create con framework open source. Per Agent per Amazon Bedrock, il servizio gestisce automaticamente il contesto della conversazione e lo associa al sessionId specifico dell’agente specificato nell’operazione dell’API InvokeAgent.
Argomenti
Esempio di caso d’uso
Un’applicazione potrebbe utilizzare un agente LangGraph per aiutare i clienti a pianificare itinerari di viaggio. Un utente può avviare una conversazione con questo agente per creare l’itinerario di un viaggio imminente, aggiungendo destinazioni, hotel preferiti e dettagli del volo.
Con le API per la gestione delle sessioni, l’agente può salvare gli stati intermedi e il contesto persistente nell’interazione estesa in più fasi. L’agente può utilizzare una sessione di Amazon Bedrock per verificarne lo stato dopo l’aggiunta di ogni destinazione, preservando i dettagli sulle preferenze del cliente.
Se la conversazione viene interrotta o non va a buon fine, l’agente può riprendere la sessione in un secondo momento senza alterare il contesto, inclusi testo e immagini. In questo modo l’agente può continuare senza richiedere al cliente di ripetere le informazioni. Inoltre, in caso di errore, è possibile esaminare i dettagli della sessione per eseguire il debug della causa.
Flusso di lavoro
Il flusso di lavoro per utilizzare le API per la gestione delle sessioni è il seguente. Per informazioni sull’utilizzo della libreria BedrockSessionSaver, consultare Gestione delle sessioni in LangGraph con la libreria BedrockSessionSaver.
-
Creare una sessione: quando l’utente finale avvia la conversazione per la prima volta, viene creata una sessione con l’operazione dell’API CreateSession e specificato un ID per la sessione. Questo ID viene utilizzato per archiviare e recuperare lo stato della conversazione.
-
Archiviare conversazioni e contesto: mentre gli utenti finali interagiscono con l’assistente di IA generativa, l’API CreateInvocation viene utilizzata per creare un raggruppamento di interazioni nella sessione. Per ogni invocazione, utilizzare le operazioni dell’API PutInvocationStep per archiviare checkpoint granulari, inclusi testo e immagini, per ogni interazione.
-
Recuperare la cronologia e il contesto delle conversazioni: utilizza le operazioni dell’API GetSession, ListInvocations e GetInvocationStep per recuperare i metadati delle sessioni e i dettagli delle interazioni.
-
Terminare la sessione: una volta completata la sessione, terminarla con l’operazione dell’API EndSession. Dopo aver terminato una sessione, è possibile ancora accedere al suo contenuto, ma non è possibile aggiungerne altri. Per eliminare la sessione e il relativo contenuto, utilizzare l’operazione dell’API DeleteSession.
Considerazioni
Prima di creare e gestire le sessioni, tenere presente quanto segue:
-
È possibile creare e gestire sessioni con le API di Amazon Bedrock. e gli SDK AWS. Non è possibile utilizzare la Console di gestione AWS per gestire le sessioni.
-
Per le applicazioni agente basate su LangGraph, è possibile utilizzare la classe
BedrockSessionSaverdella librerialangchain-aws, un’implementazione personalizzata di LangGraph CheckpointSaver. Per informazioni sull’utilizzo della libreria BedrockSessionSaver, consultare Gestione delle sessioni in LangGraph con la libreria BedrockSessionSaver. Per visualizzare direttamente il codice, vedere langgraph-checkpoint-awsnel repository GitHub di LangChain . -
Se viene specificata una chiave AWS KMS gestita dal cliente durante la creazione di una sessione, l’utente o il ruolo che crea la sessione deve disporre dell’autorizzazione per utilizzare la chiave. Per ulteriori informazioni, consulta Crittografia di una sessione.
-
Le API per la gestione delle sessioni hanno le seguenti quote:
-
Numero di fasi di invocazione in una sessione per tutte le invocazioni: 1000
-
Dimensione massima di ogni fase di invocazione: 50 MB
-
Timeout IdleSession: 1 ora
-
Periodo di conservazione: i dati della sessione vengono eliminati automaticamente dopo 30 giorni
-