Sistemas de memoria en asistentes de IA

Memoria de trabajo, estructurada y de recuperación para asistentes.

Índice

La memoria transforma a los asistentes de reactivos a persistentes, pero también es donde muchos sistemas se deterioran silenciosamente. Las encuestas argumentan que la división entre memoria a corto y largo plazo ya no es suficiente para la memoria de los agentes modernos; los SDK de OpenAI y LangGraph apuntan a una arquitectura más simple: memoria de trabajo, estado duradero y recuperación.

Los asistentes necesitan memoria de trabajo para la ejecución actual, estado duradero para hechos y preferencias estables, y memoria de recuperación para el contexto de apoyo relevante. Mi perspectiva, ligeramente opinada, es que el estado estructurado está subutilizado, la recuperación vectorial está sobreutilizada y la mayoría de los fallos de memoria provienen de la política de promoción e inyección en lugar de la elección del almacenamiento.

Otro punto importante es que la memoria no corrige automáticamente el contexto largo. LoCoMo muestra que el recuerdo conversacional a muy largo plazo sigue siendo difícil, y “Lost in the Middle” (Perdido en el medio) muestra que simplemente añadir más tokens al modelo puede degradar el rendimiento cuando la información relevante cae en el medio del prompt. Los buenos sistemas de memoria son selectivos, estratificados y explícitos sobre la precedencia.

Esta guía se encuentra en el centro de memoria de sistemas de IA como el mapa transversal de frameworks para la capa de memoria dentro de la arquitectura de asistentes de IA.

Sistema abstracto de memoria para un asistente de IA como cuadernos apilados, puntos vectoriales y tarjetas estructuradas

Cómo pensar en la memoria de los asistentes

La memoria de los asistentes no es el mismo problema que la Gestión Personal del Conocimiento (PKM), los wikis o las tuberías RAG independientes — PKM vs RAG vs Wiki vs Sistemas de Memoria mapea esos paradigmas a nivel de arquitectura de conocimiento. Esta guía se queda un nivel más abajo, en los contratos de tiempo de ejecución que los asistentes implementan realmente.

La forma más limpia de pensar en la memoria no es como “historial de chat”, sino como un conjunto de contratos de almacenamiento con diferentes funciones. Un almacén preserva el hilo activo. Otro almacén mantiene el estado duradero del usuario. Otro apoya la búsqueda semántica sobre documentos o interacciones pasadas. La guía de OpenAI sobre memoria para la personalización hace esto explícito al separar la memoria global y la de sesión, mientras que LangGraph separa la persistencia a nivel de hilo de los almacenes a largo plazo entre conversaciones.

La memoria es importante porque los asistentes en producción repiten el trabajo, revisitan los objetivos y operan durante días o semanas. Generative Agents popularizó el patrón de almacenar experiencias, reflexionar sobre ellas y recuperarlas dinámicamente para la planificación futura. MemGPT llevó esto más allá modelando la memoria como niveles y movimiento entre almacenes rápidos y lentos. Sistemas más recientes como A-MEM y Mem0 se centran en la vinculación, consolidación y eficiencia de despliegue en lugar de solo en el volumen de recuperación.

Tipos de memoria

Los asistentes de producción suelen necesitar tres capas cooperantes. La FAQ anterior los nombra; las secciones a continuación explican cómo se comporta cada una en sistemas reales.

Memoria a corto plazo

La memoria a corto plazo es el contexto de trabajo de la conversación o ejecución actual. Las Sesiones de OpenAI prepandan automáticamente el historial de la conversación antes de cada ejecución y agregan nuevos elementos después de cada ejecución. LangGraph implementa la misma idea como persistencia a nivel de hilo a través de un checkpointer. Esta capa mantiene la coherencia local, pero también es la primera que se desborda cuando los resultados de las herramientas, las lecturas de archivos o los chats largos se acumulan.

Memoria de recuperación a largo plazo

La memoria de recuperación a largo plazo almacena elementos que se consultan cuando son relevantes en lugar de reproducirlos en cada turno. Esto se superpone con RAG como una técnica de recuperación, pero no es toda la historia de la memoria del asistente — los wikis y los corpus de PKM a menudo alimentan el índice mientras el estado estructurado y la memoria de sesión viven en otro lugar, como aclara la comparación PKM/RAG/wiki/memoria anterior. En el RAG clásico, el modelo combina memoria paramétrica con memoria no paramétrica como un índice vectorial denso. Self-RAG mejora la recuperación ingenua al hacer la recuperación bajo demanda en lugar de fija para cada solicitud. En los sistemas de asistentes prácticos, esto suele ser el almacén vectorial o la capa de transcripciones buscables.

Memoria estructurada

La memoria estructurada almacena hechos duraderos, preferencias o restricciones en campos explícitos con reglas de precedencia. El libro de cocina de personalización de OpenAI es inusualmente claro aquí. La memoria global y de sesión tienen roles diferentes, la última instrucción del usuario gana, la memoria de sesión puede anular la memoria global para la tarea actual, y la memoria que entra en conflicto con la intención actual del usuario debe desencadenar una aclaración en lugar de una obediencia silenciosa. Por eso el estado estructurado suele ser mejor que la recuperación para preferencias estables, políticas o restricciones permanentes.

Mecánica de recuperación

Un flujo de recuperación típico tiene cinco pasos: captura, codificación, búsqueda, reranking o filtrado, y luego inyección. Pinecone, Weaviate, Qdrant, Redis y Milvus documentan variantes de este patrón. Algunos soportan solo vectores densos, otros soportan recuperación híbrida que combina búsqueda semántica y léxica, y algunos exponen filtros de metadatos o espacios de nombres para el control de tenencia y alcance. El punto de ingeniería es sencillo. La calidad de la recuperación depende tanto de la estrategia de filtrado, segmentación (chunking) y ranking como del propio modelo de embedding.

La recuperación híbrida suele ser el predeterminado sensato cuando las consultas mezclan significado y términos exactos. Weaviata documenta la búsqueda híbrida con un parámetro alpha que equilibra los componentes vectorial y de palabra clave, Qdrant soporta consultas híbridas y multi-etapa a través de su API de Query y métodos de fusión de puntuación, y Milvus describe la recuperación densa, dispersa e híbrida en el mismo sistema. Esto es importante para los asistentes porque los usuarios a menudo preguntan tanto por significado aproximado como por identificadores exactos, nombres de archivo, números de revisión o códigos de producto. Cuando el lado léxico vive en Postgres o Elasticsearch en lugar de dentro de la base de datos vectorial, Búsqueda de texto completo en PostgreSQL vs Elasticsearch le ayuda a elegir dónde debe ejecutarse la búsqueda de palabras clave en producción.

Un punto más de opinión: la recuperación no debería decidir la política. Debería suministrar candidatos. El asistente aún necesita reglas estructuradas para precedencia, privacidad, relevancia temporal y resolución de conflictos. El ejemplo de memoria basada en estado de OpenAI hace esto explícito, y es un patrón mucho más saludable que pretender que la búsqueda de similitud sola puede resolver el estado del usuario contradictorio.

Problemas comunes

El fallo más común es la memoria obsoleta o contradictoria. El libro de cocina de memoria a largo plazo de OpenAI llama a la consolidación de memoria la etapa más sensible y propensa a errores, listando la contaminación del contexto, la pérdida de memoria, las memorias duplicadas y el manejo de contradicciones como preocupaciones centrales. Eso es correcto, y es donde muchos asistentes fallan silenciosamente. Recuerdan demasiado, demasiado pronto, y sin una regla para olvidar.

El segundo fallo es la sobrecarga de contexto. LangGraph advierte que las conversaciones largas pueden exceder la ventana de contexto del LLM y recomienda recortar, eliminar, resumir o gestionar los puntos de control (checkpoints). OpenClaw poda de manera similar las salidas de herramientas antiguas del contexto en memoria mientras preserva la transcripción completa en disco. Estas no son optimizaciones opcionales. Son requeridas si su asistente lee, busca o ejecuta algo no trivial.

El tercer fallo es asumir que el contexto largo equivale a un recuerdo fiable. LoCoMo muestra que la memoria conversacional a largo plazo sigue siendo difícil, y “Lost in the Middle” muestra la sensibilidad a la posición dentro de prompts largos. Si la memoria es importante, no confíe en la inserción bruta de prompts. Use compactación, recuperación y estado explícito.

Compensaciones (Trade-offs)

La capa de base de datos vectorial es donde muchos equipos de asistentes hacen apuestas de plataforma tempranas. La comparación a continuación se centra en características de producto documentadas que importan para el diseño de memoria de asistentes.

Sistema Qué destaca Mejor ajuste
Pinecone Base de datos vectorial gestionada con embedding integrado, reranking, filtros de metadatos, espacios de nombres y soporte para texto completo estilo denso, disperso y BM25 en un esquema Equipos que quieren recuperación gestionada con infraestructura mínima
Weaviate Base de datos vectorial de código abierto que almacena objetos y vectores, con búsqueda semántica e híbrida y fuerte posicionamiento en RAG Equipos que quieren flexibilidad de código abierto con recuperación híbrida
Qdrant Búsqueda vectorial nativa de IA con filtrado, consultas híbridas y multi-etapa, más un modo Edge incorporado capaz de funcionar offline Equipos que quieren control de búsqueda, despliegue en edge o filtrado fuerte
pgvector Búsqueda de similitud vectorial dentro de Postgres, con búsqueda exacta y aproximada más características ACID, JOINs y recuperación Equipos ya estandarizados en Postgres y datos relacionales
Milvus Base de datos vectorial nativa de la nube con almacenamiento y computación desacoplados, más recuperación densa, dispersa e híbrida Cargas de trabajo de recuperación a gran escala y despliegues distribuidos

Una vez que elija un backend, operarlo es un problema de infraestructura de datos — Postgres con pgvector para metadatos de sesión y vectores en una pila, o Neo4j cuando la memoria de recuperación tiene forma de grafo en lugar de fragmentos planos.

El patrón de latencia y costo a continuación es una síntesis de diseño basada en los modelos operativos descritos en OpenAI Sessions y orientación de compactación, gestión de memoria de LangGraph, memoria basada en estado de OpenAI y el comportamiento de recuperación documentado de Redis y almacenes vectoriales. Es intencionalmente cualitativo, porque los números reales dependen del tamaño del corpus, del modelo de embedding, de la ubicación de la red y del almacenamiento en caché.

Táctica de memoria Latencia de lectura Latencia de escritura Presión de costo de tokens Costo de infraestructura Cuándo vale la pena
Historial de sesión crudo Más baja Más baja Más alta Más baja Chat multi-turno simple y ejecuciones cortas
Memoria de resumen o compactación Baja a media Media, porque el resumen en sí es un paso del modelo Media a baja Baja a media Trabajo de larga duración donde la ejecución activa debe continuar
Perfil y estado estructurado Baja Media Baja Baja Preferencias duraderas, reglas y restricciones permanentes
Recuperación vectorial o híbrida Media Media Baja a media Media Grandes corpus, historial buscable, anclaje de documentos
Reproducción completa de todo Alta e inestable progresivamente Baja Más alta Infraestructura baja, gasto alto en modelo Casi nunca, excepto corpus diminutos y depuración

Ejemplos de implementación

La pila actual de OpenAI ofrece dos patrones de referencia útiles. El primero son las Sesiones para la continuidad a corto plazo entre ejecuciones. El segundo es la memoria a largo plazo basada en estado, donde los campos de perfil estructurados y las notas de memoria global se inyectan al inicio de la sesión, las notas de sesión se destilan durante la ejecución y un paso de consolidación promueve solo elementos duraderos a la memoria global. Ese bucle de inyectar → razonar → destilar → consolidar es uno de los patrones de memoria públicos más claros disponibles actualmente.

LangGraph proporciona una división similar pero agnóstica al framework. Los Checkpointers manejan la memoria de hilo a corto plazo y los almacenes manejan la búsqueda a largo plazo entre conversaciones. El almacén puede ser buscado dentro de los nodos en tiempo de ejecución, lo que lo convierte en un buen diseño de referencia para asistentes que necesitan orquestación explícita en lugar de magia oculta del framework.

Hermes es un ejemplo público útil de memoria estratificada en la vida real. Su memoria incorporada usa MEMORY.md, USER.md y búsqueda de sesión SQLite FTS5, mientras que los plugins de proveedores externos añaden memoria de grafo, recuperación semántica, extracción automática de hechos y modelado de usuario. La mecánica completa está documentada en Sistema de Memoria del Agente Hermes, y los ocho backends enchufables se comparan en Proveedores de memoria de agentes comparados.

OpenClaw ofrece un enfoque diferente, con poda de sesiones, memoria activa opcional que se ejecuta antes de la respuesta principal y un sistema de Sueño (Dreaming) opt-in para consolidación de memoria en segundo plano. Esos ejemplos merecen atención porque tratan la memoria como un subsistema operativo, no solo como un truco de recuperación. Para ver cómo OpenClaw se mapea en la pila más amplia de asistentes de cinco capas, consulte la visión general del sistema OpenClaw.

Los prototipos de investigación apuntan en la misma dirección. MemGPT usa niveles de memoria jerárquica y flujo de control para la gestión del contexto, A-MEM usa indexación y vinculación dinámica inspirada en Zettelkasten, y Mem0 informa una mejor precisión con una latencia p95 y un costo de tokens mucho más bajos que las líneas base de contexto completo en LoCoMo. No necesita copiar estos sistemas por completo, pero su lección compartida es clara. La calidad de la memoria proviene de la selección y la organización, no de almacenar todo para siempre.

Cuando la memoria ayuda en lugar de perjudicar

La memoria ayuda cuando el asistente encuentra repetidamente preferencias estables, restricciones duraderas, lecciones de flujo de trabajo reutilizables o grandes corpus externos que no caben en un prompt. La guía de agentes confiables de OpenAI hace bien la distinción. La compactación ayuda a que la ejecución actual de larga duración continúe, mientras que la memoria ayuda a que futuras ejecuciones reutilicen las lecciones del flujo de trabajo. Ese es el modelo mental correcto para la mayoría de los asistentes empresariales.

La memoria perjudica cuando la tarea es de un solo disparo, el estado del usuario cambia a menudo, el índice de recuperación es ruidoso o el sistema no puede reconciliar conflictos. El ejemplo de memoria de viajes de OpenAI advierte que la memoria de sesión no debería convertirse automáticamente en memoria global, y establece explícitamente que la memoria no es un límite de seguridad. Si su asistente trata cada cadena recordada como verdad, ha construido un motor de confusión, no un sistema de memoria.

Un bucle de memoria selectiva

El bucle de memoria más simple y robusto es selectivo y escalonado. Cargue el estado duradero, recupere el contexto de apoyo, responda, capture solo memorias candidatas y luego consolide más tarde. Tanto el patrón basado en estado de OpenAI como los papeles recientes sobre memoria avanzan en esta dirección.

agent-memory-sequence-diagram

Sin rastreo (tracing) y evaluaciones, los cambios de memoria son difíciles de depurar. Cuando promueva nuevos hechos o cambie la política de recuperación, combine esos cambios con los patrones de observabilidad en Observabilidad para Sistemas de LLM para que pueda ver qué capa inyectó qué.

Conclusión

La pila de memoria práctica para asistentes no es “simplemente usar una base de datos vectorial”. Es memoria de trabajo para la ejecución en vivo, estado estructurado para la verdad duradera, memoria de recuperación para evidencia de apoyo y una política de consolidación conservadora que olvida tan deliberadamente como recuerda. La investigación reciente y la orientación actual de los SDKs apuntan en esa dirección.

Para la pila completa de asistentes alrededor de esta capa, comience con Arquitectura de Asistentes de IA. Para la memoria acotada específica de Hermes y los plugins de proveedores, siga Sistema de Memoria del Agente Hermes y Proveedores de memoria de agentes comparados.

Suscribirse

Recibe nuevas publicaciones sobre sistemas, infraestructura e ingeniería de IA.