## Plan de Investigación: Gestión de Memoria en LangChain (v1+)

### Pregunta central
¿Cómo maneja LangChain (v1+) la memoria de conversaciones, y cuál es la mejor estrategia para conservarla a largo plazo (con sesión ID) usando bases de datos o Redis, tanto en agentes de LangChain como en Deep Agent?

### Sub-preguntas clave
1. ¿Cuáles son los tipos de memoria integrados en LangChain (v1+) y cómo se usan en agentes?
2. ¿Es posible conservar memoria como texto plano con un session ID directamente usando LangChain sin almacenamiento externo?
3. ¿Cómo implementar almacenamiento persistente de memoria usando Redis o una base de datos SQL (ej. SQLite, PostgreSQL) para sesiones largas?
4. ¿Qué diferencias hay entre la gestión de memoria en LangChain Agent estándar y en Deep Agent (si es un agente personalizado)?
5. ¿Cuál es un flujo de ejemplo completo (creación de agente, carga/guardado de memoria, uso de session ID) con la solución recomendada?

### Fuentes a consultar
- **Documentación oficial de LangChain sobre memoria**  
  URL base: `https://python.langchain.com/docs/modules/memory/`  
  Queries sugeridas: `"langchain memory persistence"`, `"langchain memory redis"`, `"langchain memory session id"`
- **Tutoriales y ejemplos en blogs/artículos técnicos**  
  Queries: `"langchain memory database storage example"`, `"langchain memory with sqlite"`, `"langchain agent memory persist conversation"`
- **Repositorios de ejemplo en GitHub**  
  Queries: `"langchain memory redis conversation history"`, `"langchain deep agent persistence"`

### Lo que NO cubre
- Implementación detallada de Deep Agent (solo nociones básicas de cómo se integraría la memoria).
- Despliegue con FastAPI y URLs de prueba (eso se aborda en otra investigación separada).
- LangChain v0 (solo v1+).
- Comparación exhaustiva de bases de datos (solo Redis o SQL como opciones viables).

### Formato del entregable
- Respuesta en **párrafos explicativos** intercalados con **listas con bullets** para tipos de memoria y ventajas/desventajas.
- **Un diagrama de flujo textual** (o descripción paso a paso) de la solución recomendada con session ID y persistencia externa.
- **Fragmentos de código clave** (Python) para configurar memoria con Redis y cargarla en un agente.
- Al final, una **tabla comparativa** entre almacenar en texto plano, Redis y base de datos.