I Provider di Memoria consentono ai nodi Agent AI di conservare e recuperare il contesto conversazionale tra più esecuzioni del workflow. Invece di partire ogni volta da zero, l'agente può ricordare i turni precedenti, le risposte passate e le conoscenze accumulate memorizzate in un backend di memoria.
Quando un nodo Agent è configurato con un Provider di Memoria (direttamente in modalità lineare, oppure tramite un nodo di configurazione Memory in modalità grafo), Flusso automaticamente:
La memoria è organizzata per namespace. L'ambito determina se la memoria è condivisa tra tutte le esecuzioni di un workflow, per singola esecuzione, per singolo step o globalmente per agente.
| Tipo | Ideale per | Note |
|---|---|---|
| Redis | Memoria a breve termine veloce con scadenza TTL | Richiede un'istanza Redis. La memoria scade automaticamente dopo il TTL configurato (in secondi). |
| SQLite | Memoria persistente semplice basata su file | Memorizza i turni in un database SQLite locale. Ideale per sviluppo o deployment su singolo server. |
| PostgreSQL | Memoria persistente usando il database dell'applicazione | Nessuna infrastruttura aggiuntiva necessaria. I turni sono memorizzati nel database principale. Ideale per la produzione. |
| Vector Store | Recupero semantico della memoria | Memorizza i turni come embedding vettoriali per la ricerca semantica (basata sul significato). Richiede una Knowledge Base configurata. |
| Mem0 | Memoria gestita come servizio | Utilizza l'API Mem0. Richiede una API Key Mem0 e un Base URL. |
| Campo | Descrizione |
|---|---|
| Host | Hostname del server Redis (es. 127.0.0.1 o redis.example.com). |
| Porta | Porta Redis, predefinita 6379. |
| Password | Password Redis, se l'autenticazione è abilitata. Lascia vuoto se non richiesta. |
| Prefisso Chiave | Una stringa anteposta a tutte le chiavi memorizzate da questo provider (es. flusso:). Utile per evitare collisioni se Redis è condiviso. |
| TTL (secondi) | Per quanto tempo i turni di memoria vengono conservati. Dopo questo tempo, i turni vengono eliminati automaticamente. Imposta 0 per nessuna scadenza. |
| Campo | Descrizione |
|---|---|
| Percorso File | Percorso assoluto al file database SQLite sul server (es. /var/data/flusso-memory.db). Il file viene creato automaticamente se non esiste. |
Nessuna configurazione aggiuntiva necessaria. Flusso memorizza i turni di memoria nel database principale
dell'applicazione usando la tabella agent_memory_turns. Basta dare un nome al provider e salvare.
| Campo | Descrizione |
|---|---|
| Knowledge Base | Seleziona una delle Knowledge Base configurate dal menu a tendina. I turni di conversazione verranno memorizzati come vettori in questo store, abilitando il recupero semantico. |
| Namespace | Un prefisso usato per isolare i documenti di questo provider all'interno del vector store (es. agent-memory). |
| Campo | Descrizione |
|---|---|
| API Key | La tua API Key Mem0 dalla dashboard Mem0. |
| Base URL | L'endpoint API di Mem0. Usa quello predefinito a meno che tu non stia ospitando Mem0 autonomamente. |
| Prefisso Agent ID | Un prefisso applicato agli identificativi degli agenti, utile per separare le memorie di diverse istanze Flusso. |
Nell'editor di workflow lineare, apri il pannello di configurazione di un nodo Agent. Scorri fino alla sezione Memoria. Seleziona un Provider di Memoria configurato dal menu a tendina, scegli un ambito e opzionalmente imposta un namespace.
Nell'editor a grafo, aggiungi un nodo di configurazione Memory dalla barra laterale (categoria AI & Agents). Configuralo con il provider e l'ambito desiderati, poi traccia un arco dal nodo Memory alla porta memory_in (punto viola) sul tuo nodo Agent.
L'ambito controlla quale chiave viene usata per il namespace dei turni di memoria, determinando cosa l'agente "ricorda" e in quale contesto:
| Ambito | Condiviso tra | Caso d'uso |
|---|---|---|
| agent | Tutte le esecuzioni di questo workflow (per step agente) | Assistenti a lungo termine che ricordano tra le sessioni. |
| workflow | Tutte le esecuzioni di questo workflow | Contesto condiviso per tutti gli agenti in un workflow. |
| run | Una singola esecuzione del workflow | Cronologia conversazione durante l'esecuzione; cancellata dopo ogni esecuzione. |
| step | Un singolo step in una singola esecuzione | Contesto isolato, per singolo step. |