Attivazione della persistenza dello stato per gli agenti dell' LangGraph
Abilita la persistenza dello stato tramite checkpoint per gli agenti dell' LangGraph. Configura la persistenza nel file YAML del tuo agente utilizzando il checkpointer campo.
checkpointer sezione sul campo
La sezione checkpointer «field» è facoltativa e consente di mantenere lo stato tra i turni di conversazione. Se non specificato, l'agente opera in modalità senza stato.
Tipi di checkpoint
Quando si specifica la sezione checkpointer dei campi, è possibile configurare il checkpointer con le seguenti opzioni:
checkpointer.typeIl tipo di checkpoint da utilizzare:
memory- Archiviazione in memoria per lo sviluppo e il collaudo. All'avvio il valore dello stato va perso.- Casi d'uso: sviluppo, test, sessioni temporanee
- Requisiti: Nessuno
- Persistenza: persa al riavvio dell'agente
sqlite- Persistenza basata su file tramite SQLite. All'avvio dell'agente pod, lo stato va perso.- Caso d'uso: implementazioni a istanza singola, test
- Requisiti: Aggiungi
langgraph-checkpoint-sqlitearequirements.txt - Persistenza: persa al riavvio del pod
postgres- Persistenza del database tramite PostgreSQL per l'ambiente di produzione.- Caso d'uso: implementazioni in produzione che richiedono uno stato persistente
- Requisiti: Aggiungi
langgraph-checkpoint-postgresarequirements.txt - Persistenza: rimane attiva anche dopo il riavvio
- Configurazione aggiuntiva: Richiede
connection_string_key
checkpointer.connection_string_keyCampo obbligatorio se si utilizza il
postgrestipo. L'ID dell'app della connessione che contiene la stringa di connessione al database PostgreSQL.
Procedura di configurazione per la persistenza del database di PostgreSQL
- Crea una connessione con il tipo di credenziale
api_key - Inserisci la stringa di connessione PostgreSQL come valore della chiave API
- Utilizza l'ID dell'app della connessione come valore per
connection_string_key - Seleziona questa connessione durante il processo di importazione degli agenti
Il sistema gestisce automaticamente le connessioni al database e la configurazione dello schema durante l'esecuzione.
Configurazione di esempio
Agente con checkpointer Postgres
spec_version: v1
kind: agent
name: stateful_agent
title: Stateful Support Agent
description: Agent with persistent state using PostgreSQL
deployment:
code_bundle:
entrypoint: agent:create_agent
checkpointer:
type: postgres
connection_string_key: postgres_db
requirements.txt:
langgraph>=0.2.0
langchain-core>=0.3.0
langgraph-checkpoint-postgres
In questo esempio, postgres_db è l'ID dell'app di una connessione che devi creare prima dell'importazione. Questa connessione deve avere un tipo di api_key credenziale e contenere la stringa di connessione al database PostgreSQL. È possibile selezionare questa connessione durante il processo di importazione.
Agente con un checkpoint di tipo " SQLite "
spec_version: v1
kind: agent
name: sqlite_agent
title: SQLite Stateful Agent
description: Agent with SQLite state persistence
deployment:
code_bundle:
entrypoint: agent:create_agent
checkpointer:
type: sqlite
requirements.txt:
langgraph>=0.2.0
langchain-core>=0.3.0
langgraph-checkpoint-sqlite
Agente con checkpoint di memoria
spec_version: v1
kind: agent
name: dev_agent
title: Development Agent
description: Agent with in-memory state for testing
deployment:
code_bundle:
entrypoint: agent:create_agent
checkpointer:
type: memory
Per il memory checkpointer non sono richieste dipendenze aggiuntive oltre ai requisiti di base di LangGraph.