Postgres Chat Memory
Postgres Chat Memory es un componente que permite guardar y recuperar los mensajes de una conversación directamente en una base de datos PostgreSQL.
Con él, cada sesión de chat se almacena de forma persistente, lo que facilita la continuidad de las conversaciones y la auditoría de los mensajes.
¿Cómo funciona?
Cuando configuras el componente, se crea una conexión a tu servidor PostgreSQL usando la cadena de conexión que has guardado en la credencial Postgres SQL.
Para cada sesión, el componente utiliza el Session ID que le indiques para identificar un conjunto de mensajes.
Internamente, LangChain crea una tabla (si no existe) y guarda cada mensaje con su rol (usuario, asistente, sistema).
Al volver a usar la misma sesión, el componente recupera todos los mensajes anteriores y los devuelve como un objeto BaseChatMessageHistory
, listo para que el modelo de IA los utilice como contexto.
Entradas
Nota: Este componente necesita una credencial Postgres SQL.
- Configura la credencial en la sección de credenciales de Nappai.
- Selecciona esa credencial en el campo Credential del componente.
Campos de Entrada
- Session ID: Identificador único de la conversación.
- Visible en: Todas las configuraciones del componente.
Salidas
- Memory: Un objeto
BaseChatMessageHistory
que contiene todos los mensajes de la sesión.
Este objeto puede conectarse a otros componentes de LangChain, como modelos de lenguaje, para que utilicen el historial como contexto.
Ejemplo de Uso
-
Configura la credencial
- Ve a Credenciales → Agregar credencial → Postgres SQL.
- Introduce la URL de conexión (ej.
postgresql://user:pass@host:5432/dbname
).
-
Añade el componente
- Arrastra Postgres Chat Memory al flujo.
- Selecciona la credencial creada.
- Escribe un Session ID (por ejemplo,
chat-1234
).
-
Conecta la salida
- Conecta la salida Memory a un componente de chat (por ejemplo, OpenAI Chat).
- El modelo leerá el historial y responderá en base a los mensajes anteriores.
Resultado: cada vez que el usuario envíe un nuevo mensaje, el componente guardará el intercambio y lo recuperará en la siguiente interacción, manteniendo la conversación coherente.
Componentes Relacionados
- InMemoryChatMemory – Guarda el historial en memoria (no persistente).
- RedisChatMemory – Usa Redis como almacenamiento rápido y persistente.
- OpenAI Chat – Modelo de IA que consume el historial para generar respuestas.
Consejos y Mejores Prácticas
- Usa un Session ID único y descriptivo para evitar colisiones.
- Mantén la cadena de conexión segura; Nappai la cifra automáticamente.
- Si la conversación es larga, considera truncar el historial para no sobrecargar la base de datos.
- Revisa los logs de la base de datos para detectar accesos no autorizados.
Consideraciones de Seguridad
- La credencial Postgres SQL almacena la cadena de conexión de forma cifrada.
- Asegúrate de que solo los usuarios autorizados tengan acceso a la sección de credenciales.
- Si tu base de datos está expuesta a Internet, habilita TLS y usa roles con permisos mínimos.