MemGPT: Gestión de contexto virtual para agentes de LLM
La restricción que limita a la mayoría de los agentes de LLM no es la inteligencia, sino la memoria. He estado pensando en esto concretamente en el contexto de los libros mayores de Beancount que abarcan años de transacciones: no importa cuán capaz sea el modelo subyacente, una vez que el historial del libro mayor excede la ventana de contexto, el agente comienza a olvidar. MemGPT (Packer et al., UC Berkeley, 2023) aborda este problema directamente tomando prestada una solución que los sistemas operativos resolvieron hace décadas.
El artículo
"MemGPT: Towards LLMs as Operating Systems" (Packer, Wooders, Lin, Fang, Patil, Stoica, Gonzalez; arXiv:2310.08560) propone la gestión de contexto virtual, una analogía deliberada de cómo los sistemas operativos crean la ilusión de una gran memoria virtual mediante la paginación entre la memoria RAM rápida y el disco lento. La ventana de contexto del LLM desempeña el papel de la RAM: escasa, rápida y directamente accesible. Dos almacenes externos desempeñan el papel del disco: un almacenamiento de recuperación (historial de mensajes recientes) y un almacenamiento de archivo (una base de datos a largo plazo con capacidad de búsqueda para texto arbitrario). El propio agente decide qué leer del almacenamiento externo y qué desalojar del contexto, utilizando llamadas a funciones explícitas, herramientas que mueven datos entre niveles. El sistema activa una advertencia de desalojo al 70% de la capacidad del contexto y fuerza una limpieza al 100%, generando un resumen recursivo de los mensajes desalojados para evitar la pérdida total de información.
El artículo evalúa MemGPT en dos dominios: agentes conversacionales multisesión (el conjunto de datos Multi-Session Chat) y análisis de documentos sobre grandes corpus que exceden la ventana de contexto nativa del modelo.
Ideas clave
- Tres niveles de memoria: memoria de trabajo en contexto (rápida, limitada), almacenamiento de recuperación (mensajes recientes, con capacidad de búsqueda) y almacenamiento de archivo (a largo plazo, indexado). El agente escribe en los tres a través de llamadas a herramientas.
- Recuperación de Memoria Profunda (DMR): la tarea de evaluación que requiere un recuerdo consistente a través de múltiples sesiones pasadas. Con GPT-4, la base de referencia estándar de contexto fijo logra una precisión del 32,1%; MemGPT la eleva al 92,5%. Base de referencia de GPT-4 Turbo: 35,3% → 93,4%.
- Recuperación de clave-valor anidada: la prueba de estrés de análisis de documentos. GPT-4 estándar alcanza un 0% de precisión en tres niveles de anidamiento; MemGPT con GPT-4 mantiene el rendimiento realizando búsquedas de archivo iterativas.
- Flujo de control mediante interrupciones: el agente señala cuando necesita más tiempo (para realizar operaciones de memoria) antes de responder, de forma análoga a una interrupción del SO. Esto mantiene el sistema receptivo sin forzar que todo ocurra en un solo paso de inferencia.
- El problema del desalojo: cuando el contexto está lleno, el contenido se resume y se limpia. La resumización recursiva preserva la esencia pero inevitablemente pierde detalles, un compromiso que el artículo reconoce pero no cuantifica completamente.
Lo que se mantiene y lo que no
Las cifras de DMR son sorprendentes: una brecha de precisión de 60 puntos entre MemGPT y una base de referencia estándar de GPT-4 en el conjunto de datos Multi-Session Chat no es ruido. El resultado de KV anidado (donde las bases de referencia fallan al 0% mientras MemGPT continúa funcionando) demuestra algo real sobre el valor de la recuperación iterativa mediada por herramientas frente a la exposición pasiva a contextos largos. Esto conecta con el hallazgo "Lost in the Middle" (Perdido en el medio) de Liu et al. (arXiv:2307.03172): incluso cuando la información cabe físicamente en la ventana de contexto, los modelos se degradan con el contenido enterrado en el medio. MemGPT esquiva esto recuperando solo lo que se necesita de inmediato.
Dicho esto, la evaluación tiene lagunas reales. El conjunto de datos Multi-Session Chat es estrecho: chats de personajes generados por humanos con formatos estrechamente controlados. No se ha probado cómo escala el enfoque a conversaciones del mundo real más desordenadas o a corpus específicos de un dominio (presentaciones financieras, correspondencia regulatoria). El almacenamiento de archivo en los experimentos es una base de datos vectorial simple; queda abierta la cuestión de si la calidad de la recuperación sigue siendo alta a medida que el archivo crece hasta alcanzar millones de documentos. Fundamentalmente: la estrategia de recuperación del agente es tan buena como sus consultas. Si el agente no sabe lo que no sabe (un modo de falla común en tareas de horizonte largo), nunca realizará la búsqueda de archivo correcta, y toda la arquitectura colapsará elegantemente hacia el mismo modo de falla de contexto fijo.
También hay un costo de latencia que el artículo trata superficialmente. Cada búsqueda en el archivo es una llamada de inferencia de LLM adicional (para generar la consulta) más una búsqueda vectorial. Para un agente de Beancount que maneja una conciliación rutinaria sobre años de datos, esto podría multiplicarse en muchos viajes de ida y vuelta por respuesta. El artículo no informa comparaciones de latencia de tiempo real.
Trabajos posteriores han agudizado estas críticas. A-MEM (arXiv:2502.12110) afirma un rendimiento al menos 2 veces mejor que MemGPT en tareas de saltos múltiples, argumentando que la estructura rígida de niveles de MemGPT rinde menos que una curación de memoria más dinámica. Las pruebas de rendimiento de Mem0 (2024-2025) muestran enfoques de la competencia superando a MemGPT en precisión y velocidad en algunos entornos. Los autores originales han evolucionado desde entonces el proyecto hacia Letta (septiembre de 2024), un marco de agentes de código abierto con "cómputo en tiempo de sueño" asíncrono para la consolidación de la memoria, un reconocimiento implícito de que el diseño síncrono de un solo agente tiene límites de escalado.
Por qué esto es importante para la IA financiera
Un libro mayor de Beancount para una pequeña empresa acumula decenas de miles de transacciones a lo largo de una década. Un agente encargado de la conciliación de fin de año, la investigación de anomalías o el análisis de tendencias de varios años no puede ajustar todo en el contexto. El diseño de tres niveles de MemGPT se mapea casi directamente: la memoria de trabajo contiene el lote de transacciones actual bajo revisión; el almacenamiento de recuperación contiene el contexto de la sesión reciente (lo que estábamos conciliando la última vez); el almacenamiento de archivo contiene el historial completo del libro mayor, los asientos de diario y los informes de anomalías anteriores. La interfaz de llamada a funciones para las operaciones de memoria es esencialmente la misma interfaz que el agente ya necesita para las operaciones de escritura; esto no es una nueva clase de capacidad, sino una nueva aplicación de la misma maquinaria de llamada a herramientas.
La relevancia más profunda es el cambio de enfoque: en lugar de preguntar "¿podemos meter más en el contexto?", MemGPT pregunta "¿puede el agente gestionar su propia atención?". Para las finanzas, esa es la pregunta correcta. Una auditoría fiscal puede plantear una pregunta sobre una transacción de hace tres años. Un contador humano competente recupera la factura original, la coteja con el libro mayor y recuerda el contexto de la política de ese año. Ese comportamiento de recuperación bajo demanda es exactamente para lo que MemGPT nos entrena a diseñar.
La advertencia honesta: MemGPT no fue evaluado con datos financieros, y los documentos financieros son estructuralmente diferentes de los chats de personajes. La calidad de la recuperación sobre datos numéricos densos, transacciones multi-moneda y esquemas de contabilidad por partida doble necesitará su propia prueba de rendimiento.
Qué leer a continuación
- Lost in the Middle: How Language Models Use Long Contexts (Liu et al., arXiv:2307.03172): la base empírica de por qué las ventanas de contexto más largas por sí solas no resuelven el problema; los modelos no logran atender al contenido de la mitad del documento, lo que motiva enfoques basados en la recuperación como MemGPT.
- A-MEM: Agentic Memory for LLM Agents (arXiv:2502.12110): un seguimiento de 2025 que afirma un rendimiento superior de memoria de saltos múltiples al reemplazar la estructura de niveles rígida de MemGPT con una curación de memoria dinámica; un punto de comparación necesario.
- Gorilla: Large Language Model Connected with Massive APIs (arXiv:2305.15334): el siguiente en esta lista de lectura; el diseño de llamada a herramientas aumentado por recuperación allí complementa la gestión de memoria de MemGPT al abordar cómo los agentes seleccionan la herramienta adecuada de una gran superficie de API.
