YouMind
Iniciar sesión

El almacenamiento es barato. La atención es cara. ¿Estás usando el sistema que aprovecha esa diferencia?

@S_BatMan
INGLÉS26 may 2026
1.3M
305
37
11
179

TL;DR

El análisis de 19 sistemas de IA revela que los agentes más eficaces utilizan arquitecturas de memoria por niveles para gestionar el contexto. Al separar los datos activos, intermedios y fríos, estos sistemas optimizan la recuperación y minimizan el ruido.

La asimetría que hace que la jerarquización valga la pena

Si cambias una cosa sobre cómo diseñar la memoria de un agente, que sea esta: deja de tratar el costo de almacenamiento y el costo de atención como si fueran lo mismo.

He estado profundizando en esto a lo largo de 19 sistemas, y el hallazgo que sigue apareciendo es que los que manejan bien la memoria no son necesariamente los que tienen la recuperación más sofisticada. Son los que descubrieron qué recuerdos deben estar en el prompt. Ese es un problema diferente, y tiene una solución diferente.

El almacenamiento es barato. La atención es cara. Un modelo con contexto de 128k leyendo 110k de contexto mediocre no es, empíricamente, un mejor agente que el mismo modelo leyendo 8k de contexto cuidadosamente seleccionado. La investigación al respecto es consistente: la calidad de la recuperación se degrada a medida que el contexto se llena de ruido, y la degradación no es lineal. El modelo no ignora simplemente el material irrelevante. Lo procesa, y ese procesamiento desplaza la señal.

El almacenamiento no tiene esa propiedad. Un dato en una base de datos no cuesta nada mantenerlo. El costo solo llega cuando lo recuperas y lo cargas en el prompt. Lo que significa que la pregunta no es "¿debería almacenar esto?" sino "¿debería recuperar esto y, si es así, cuándo?"

Ese replanteamiento es de donde surge la jerarquización. Los diferentes elementos de memoria tienen diferentes patrones de acceso. Algunas cosas un agente necesita en cada turno: el nombre del usuario, su proyecto actual, sus preferencias declaradas. Algunas cosas las necesita a menudo pero no siempre: decisiones recientes, preguntas abiertas, hechos episódicos de las últimas sesiones. Algunas cosas debería poder encontrarlas cuando sea necesario pero nunca deberían cargar cada turno: notas de reuniones de hace tres meses, tareas completadas, transcripciones sin procesar, material de referencia puntual.

Un almacén plano trata las tres categorías de manera idéntica. Los elementos calientes pagan el costo de búsqueda de los elementos fríos. Los elementos fríos inflan el prompt con ruido. No hay un mecanismo para que los elementos asciendan a medida que se vuelven más relevantes, ni un mecanismo para que envejezcan a medida que se vuelven menos relevantes. La analogía con el sistema operativo es exacta: las CPUs tienen L1, L2, L3, RAM, SSD y disco no porque los bytes sean diferentes, sino porque la frecuencia de acceso varía por órdenes de magnitud. Siete de los 19 sistemas que revisé ya habían construido jerarquización explícita antes de que empezara a mirar. Dos de ellos vale la pena entenderlos en detalle.

MemoryOS como implementación de referencia

MemoryOS es la implementación más clara de memoria jerarquizada entre los 19 sistemas. Tres niveles, cada uno con una forma de datos distinta, un presupuesto de latencia distinto y un rol distinto.

El nivel de corto plazo es una deque de Python con una longitud máxima de 10 pares de preguntas y respuestas. Sin embeddings, sin índice de búsqueda, sin seguimiento de calor. Es puro material conversacional sin procesar, los últimos diez intercambios, disponible con latencia de microsegundos. Cuando la deque se llena, el par más antiguo drena hacia el nivel de mediano plazo.

El nivel de mediano plazo contiene hasta 2000 sesiones. Cada sesión lleva un resumen, un embedding, un conjunto de palabras clave y contadores de calor. El nivel está indexado con Faiss y se busca por similitud coseno. Cuando el nivel alcanza su capacidad, las sesiones más frías son expulsadas. Cuando una sesión se calienta lo suficiente, se promueve al nivel de largo plazo.

El nivel de largo plazo es un esquema de psicología y alineación de 90 dimensiones, dos deques de base de conocimiento, una para hechos del usuario y otra para hechos del asistente, cada una con un máximo de 100 entradas. Esta es la capa persistente, la que sobrevive entre sesiones y lleva el modelo duradero del usuario.

La fórmula de calor que gobierna la promoción son doce líneas de Python. Tres señales: frecuencia de visita, un análogo de LFU; profundidad de interacción, un proxy del compromiso temático; y decaimiento de actualidad, exponencial con una vida media de 24 horas. Un segmento cruza el umbral de promoción en 5.0. Después de la promoción, los contadores de visita e interacción se reinician a cero, y el calor vuelve a aproximadamente 1.0.

La decisión de diseño que es fácil pasar por alto: el calor controla la promoción, no la recuperación. El recuperador es puramente semántico, similitud coseno sobre los embeddings de mediano plazo. El calor es una señal de fondo que decide si un segmento debe graduarse al nivel de largo plazo. Las dos preocupaciones están desacopladas, y ese desacoplamiento importa más que la fórmula en sí.

Lo que MemoryOS deja sobre la mesa merece ser nombrado. Los coeficientes están codificados en 1.0, no hay un mecanismo para aprender pesos de los patrones de uso reales. No hay caminos de degradación; una vez que algo llega al nivel de largo plazo, se queda. Y la fórmula optimiza por frecuencia sobre importancia. Un dato crítico pero raro, el nombre de una pareja, una condición médica, una restricción dura, puede que nunca cruce el umbral de promoción si solo aparece una vez. Una vez que el nivel de mediano plazo expulsa el segmento, el dato se pierde.

Los niveles derivados de la teoría de Hindsight

Hindsight llega a la misma estructura de tres niveles desde un punto de partida completamente diferente. Mientras MemoryOS se basa en la teoría de caché de sistemas operativos, Hindsight se basa en la ciencia cognitiva.

Los tres niveles son Mundo, Experiencia y Observaciones. Mundo contiene afirmaciones objetivas sobre el universo, verdad fundamental, siempre activo, de larga duración. Experiencia contiene acciones en primera persona del propio sistema, el registro episódico. Observaciones contiene creencias consolidadas derivadas de hechos de Mundo y Experiencia, llevando IDs de memoria fuente, un recuento de pruebas y un campo de historial que rastrea cómo ha evolucionado la creencia.

Los tres niveles residen en la misma tabla de base de datos, diferenciados por un discriminador de tipo de hecho. Se construyen índices HNSW parciales por tipo de hecho. El esquema es unificado; los patrones de acceso no lo son.

La promoción en Hindsight no está impulsada por contadores. Es una consolidación por lotes impulsada por LLM. Cuando se escribe un nuevo hecho, se encola en una tabla de operaciones asíncronas. Un trabajador en segundo plano obtiene los nuevos hechos junto con observaciones existentes superpuestas, construye un prompt por lotes y pide al modelo que cree, actualice y elimine. Las memorias fuente se marcan con una marca de tiempo de consolidación para evitar reprocesamiento. Cada nuevo hecho, independientemente de la frecuencia con que se haya accedido, se considera para promoción al nivel de Observaciones.

Esa es la diferencia clave con MemoryOS. Al vincular la promoción de niveles superiores a la consolidación en lugar del calor, Hindsight evita el punto ciego para hechos críticos pero raros. Una sola pasada de consolidación considera cada nuevo hecho. La frecuencia es irrelevante para si algo se gradúa.

Dicho llanamente: dos sistemas, principios fundamentales diferentes, lenguajes de implementación diferentes, casos de uso objetivo diferentes, y ambos aterrizan en tres niveles con material bruto en la base, una capa de trabajo en el medio y una capa persistente sintetizada en la cima. Ambos utilizan promoción asíncrona. Ambos llevan la proveniencia de vuelta a niveles inferiores. Así es como se ve la evolución convergente en la arquitectura de software, y es la señal más fuerte que conozco de que un patrón es estructural.

La jerarquización condicionada por género de @supermemory

supermemory opera en la forma de despliegue de API gestionada, lo que cambia la implementación sin cambiar la arquitectura. Los tres niveles son perfil estático, perfil dinámico y almacén de documentos y fragmentos.

El perfil estático contiene hechos estables a largo plazo, el nivel caliente. Se devuelve como un array estático desde el endpoint de perfil, almacenado en caché en el borde, con un presupuesto de latencia de aproximadamente 50 ms. El perfil dinámico contiene contexto reciente y episódico, el nivel cálido. Muchas entradas llevan un campo forgetAfter que establece un TTL. El almacén de documentos y fragmentos es el nivel frío, consultado a través de endpoints de búsqueda cuando es necesario.

La asignación de nivel ocurre en el momento de escritura. Un LLM de extracción clasifica cada memoria entrante con un booleano isStatic y opcionalmente un valor forgetAfter. La clasificación se aplica mediante un prompt de extracción cerrado, uniforme en todos los consumidores.

La forma de despliegue de API gestionada permite tres cosas que un diseñador en proceso no puede copiar directamente pero debería entender. Los datos del nivel frío pueden estar en hardware más barato, almacenamiento de objetos para bytes brutos, un almacén relacional estándar para metadatos y fragmentos, con el perfil caliente almacenado en caché por separado en el borde. El nivel caliente tiene su propio endpoint con su propio SLA, separado de la ruta de búsqueda. Y el prompt de extracción está centralizado, lo que significa que la asignación de nivel es consistente de una manera que la clasificación por agente rara vez lo es.

Las compensaciones son reales. Un nivel caliente remoto solo es rápido si la red es rápida. El agente no puede anular la clasificación de nivel del motor. El prompt de extracción es una caja negra. Pero el patrón arquitectónico, nivel caliente como su propio endpoint, nivel frío en hardware más barato, asignación de nivel en el momento de escritura, vale la pena copiarlo incluso si la forma de despliegue no lo es.

Promoción vs. tipología fija

mem9 es el caso de contraste que aclara lo que la jerarquización no es.

mem9 tiene una columna de tipo de memoria con tres valores: pinned, insight y digest. Las memorias pinned se asignan mediante rutas explícitas de escritura de contenido, creadas manualmente, protegidas de la reconciliación del LLM. Las insights se asignan en cada escritura extraída por LLM, mutables, versionables, reemplazables. Ambas participan en el mismo recuerdo híbrido con la misma puntuación RRF. El campo de tipo es una bandera de protección de escritura, no un filtro de recuperación ni una señal de nivel.

Esto es tipología, no jerarquización. La distinción importa porque los dos son fáciles de confundir. La tipología describe gobierno: quién puede mutar esta memoria, bajo qué condiciones. La jerarquización describe patrones de acceso: con qué frecuencia se necesita esta memoria, y qué representación de almacenamiento sirve mejor a esa frecuencia. Un sistema puede tener ambos. isStatic de supermemory es una señal de nivel, mientras que una bandera separada isInference está más cerca de una clase de gobierno. Pero confundirlos produce la mayor ambigüedad en la práctica.

Si te encuentras añadiendo un campo de tipo a tus filas de memoria, la pregunta que debes hacerte es si el campo describe un patrón de acceso o una clase de gobierno. Si es un patrón de acceso, estás construyendo jerarquización. Si es una clase de gobierno, estás construyendo tipología. Ambos son útiles. No son lo mismo.

Lo que te cuesta un almacén plano

Cuatro cosas concretas se derivan de ejecutar un almacén de memoria plano.

La ruta caliente paga el costo de búsqueda de la ruta fría. Cada recuperación escanea el mismo índice sobre los mismos elementos. El agente que busca el nombre del usuario paga el mismo costo de búsqueda que el agente que busca una nota de reunión de hace seis meses. A pequeña escala esto es invisible. A escala es un problema de latencia.

La ruta fría infla el prompt con ruido. La recuperación devuelve elementos semánticamente cercanos, lo que incluye contexto permanente, hechos superados y material que es factualmente correcto pero irrelevante para el turno actual. El modelo procesa todo ello. La relación señal-ruido en la ventana de contexto se degrada a medida que el almacén crece.

No hay mecanismo para que los elementos se gradúen. La memoria no es estática. Un hecho episódico fugaz del principio de una relación puede, con el tiempo, convertirse en una señal duradera sobre las preferencias o restricciones del usuario. Un almacén plano no proporciona maquinaria para notar esa transición. El elemento permanece en la misma representación en la que fue escrito, independientemente de cómo haya cambiado su relevancia.

No hay mecanismo para que los elementos envejezcan. La degradación no es eliminación. Un almacén plano que quiera eliminar material obsoleto debe borrarlo. Un almacén jerarquizado puede moverlo a una representación más fría, aún localizable, sin cargar la ruta caliente. El almacén plano fuerza una elección binaria que el almacén jerarquizado no.

El resultado neto

18 de los 19 sistemas implementan jerarquización, apuntan a ella o tienen recomendaciones explícitas para ella. La excepción es mem9, que tiene una capa de tipología resolviendo un problema diferente y se beneficiaría de una jerarquización encima.

Si estás construyendo memoria de agente desde cero, la progresión que señalan los 19 sistemas es esta. Identifica lo que el agente necesita en cada turno, ese es tu nivel caliente. Identifica lo que necesita a menudo pero no siempre, ese es tu nivel cálido. Identifica lo que debería encontrar cuando sea necesario pero nunca cargar cada turno, ese es tu nivel frío. Elige un mecanismo de promoción: basado en calor como MemoryOS, juicio de LLM como Hindsight, o clasificación en tiempo de extracción como supermemory. Elige un mecanismo de degradación: decaimiento temporal, TTL o categorías de frescura. Mantén la puntuación de promoción y recuperación separadas al principio, el desacoplamiento es más fácil de añadir que de deshacer. Rastrea la proveniencia desde niveles superiores hacia niveles inferiores, para que siempre puedas responder a la pregunta de dónde vino una creencia sintetizada.

Los 19 sistemas no son unánimes en mucho. En esto lo son: un único almacén de memoria plano es la opción predeterminada incorrecta para cualquier sistema de memoria de agente no trivial.

El almacenamiento es barato. La atención es cara. Construye el sistema que aproveche la diferencia.

Si te pareció interesante este artículo, por favor compártelo.

Guardar con un clic

Lee artículos virales en profundidad con IA en YouMind

Guarda la fuente, haz preguntas concretas, resume el argumento y convierte un artículo viral en notas reutilizables en un único espacio de trabajo con IA.

Explora YouMind
Para creadores

Convierte tu Markdown en un artículo de 𝕏 impecable

Cuando publicas tus propios textos largos, dar formato en 𝕏 a imágenes, tablas y bloques de código es un fastidio. YouMind convierte un borrador completo en Markdown en un artículo de 𝕏 impecable y listo para publicar.

Prueba Markdown a 𝕏

Más patrones por descifrar

Artículos virales recientes

Explorar más artículos virales