
GLIA: Sistema de memoria para agentes de IA que recupera contexto como el cerebro (por asociación, no por búsqueda de texto)
Hola a todos!
Hace un tiempo me preguntaba si era posible emular en alguna medida el sistema neuronal humano para uso de IA, al menos en la forma en que almacena y recupera información.
Nuestro cerebro no almacena información como si fuese un archivo o en un sitio o estructura particular, por el contrario, la información conceptual, sensorial, etc está distribuida, pero conectada por relaciones de significado, emotividad y otros factores complejos. Cuando pensamos en una pizza (Por ejemplo) no solo recordamos "que es una pizza" podemos a su vez traer el recuerdo de sabores, personas con las que hemos compartido, imágenes, etc. Ósea, un recuerdo no es una sola entidad de información, es un conjunto relacionado que construye un significado.
¿Pero como llevar eso a la practica? ¿como podríamos almacenar el conocimiento de un proyecto de software, por ejemplo, a fin de que sea extremadamente eficiente buscar información para entregarle a los LLM?
Y para resolver esto, he creado a modo de POC, el sistema GLIA.
La idea central:
- Los nodos no almacenan contenido: Son punteros puros. Su significado emerge de sus conexiones con otros nodos.
- Propagación de energía: Cuando preguntas algo, GLIA no busca texto — propaga energía por un grafo ponderado y te devuelve el subgrafo que "se encendió".
- Evolución del grafo: Las conexiones se fortalecen cada vez que se usan (aprendizaje Hebbiano) y se debilitan si dejan de usarse (decaimiento temporal). El grafo está vivo y evoluciona con el proyecto.
Lo que devuelve no es texto — es estructura
Un mapa cognitivo con los conceptos activados, cómo se conectan entre sí, cuántas veces se usó cada conexión, y dónde buscar si necesitas más detalle. El agente recibe un mapa de navegación, no un bloque de texto para descifrar.
¿Cómo funciona? Spreading Activation
El mecanismo de recuperación de GLIA se llama Spreading Activation (Activación por Propagación), un concepto de la ciencia cognitiva de los años 70 (Collins & Loftus, 1975) que describe cómo el cerebro recupera información.
Funciona así:
Estímulo: El usuario pregunta "¿por qué se caen las sesiones?"
Resolución: GLIA encuentra el nodo más cercano: session_bug
Propagación: La energía (1.0) se propaga por las aristas ponderadas:
- session_bug → token_refresh (energía × 0.95 × decay = 0.57)
- token_refresh → auth_jwt (0.57 × 0.92 × decay = 0.31)
- session_bug → ms_vs_seconds_bug (energía × 0.95 × decay = 0.57)
Resultado: Un "subgrafo" "se enciende" — los conceptos activados y sus relaciones forman el contexto reconstruido.
¿Qué lo diferencia de RAG?
- RAG responde: "¿Qué texto se parece a mi pregunta?"
- GLIA responde: "¿Qué conceptos están asociados a mi pregunta y cómo se relacionan entre sí?"
Primeros resultados y ahorro de tokens con Gemini (Pruebas iniciales)
Contexto:
Proyecto: Proyecto de automatización de pruebas con Python, Behave y Haka-Playwirght -engine
IA Utilizada: Gemini (CLI)
Paso a Paso
- ejecutar "glia init" en el proyecto
- ejecutar "glia scan" (esto crea el conocimiento inicial de todo el proyecto no consume tokens en absoluto)
- configurar el MCP local de glia en gemini cli
- se pidió a Gemini CLI que ejecutara y generara telemetría para la consulta: "usando la herramienta glia recall dime ¿Cómo creo una prueba desktop?"
- se pidió a Gemini CLI que "Sin utilizar glia recall dime ¿Cómo genero una prueba web?"
*Se utilizaron tipos de prueba diferentes para evitar que reusará el conocimiento ya obtenido.
Aquí el resultado del análisis de Gemini.
Aquí tienes los resultados de la prueba comparativa solicitada:
1. Prueba con glia_recall: "Cómo hacer una prueba de desktop"
* Herramienta usada: mcp_glia_glia_recall
* Resultado: GLIA activó conceptos relacionados con la configuración (BASE_URL, BROWSER, TEST_EMAIL) y me dirigió directamente a un archivo fuente
clave: docs\guias\GUIA_INSTALACION_NotebookLM.txt. También identificó que la arquitectura de pruebas de escritorio en este framework suele
involucrar configuraciones en el archivo .env.
* Eficiencia de Tokens: Muy Alta. La respuesta de GLIA es una síntesis estructurada (mapa cognitivo) que ocupa poco espacio en el contexto pero
proporciona rutas exactas y variables necesarias.
2. Prueba sin GLIA (Búsqueda Manual): "Cómo hacer una prueba de web"
* Herramienta usada: grep_search
* Resultado: Se obtuvieron 56 coincidencias en múltiples archivos .feature. Aunque encontré ejemplos útiles como
docs\ejemplos\demo_completo_hakalab.feature, tuve que procesar una lista larga de líneas de código para filtrar cuál era la información
relevante.
* Eficiencia de Tokens: Baja/Media. El comando grep_search devolvió una gran cantidad de texto (todas las líneas que contenían la palabra "web"),
lo que aumenta significativamente el tamaño del historial de la sesión y consume más tokens de entrada para el modelo en los siguientes turnos.
Nótese como en este primer análisis Gemini reconoce que glia lo guió directamente a los contenidos y sus relaciones relevantes.
>A nivel de gastos, según el análisis interno de Gemini, el consumo pasa de entre 1.500 a 3.000 tokens utilizando solo Gemini a 300 a 500 tokens utilizando GLIA
Siguientes pasos
Podemos considerar esto como una primer acercamiento conceptual que debe ser puesta a prueba de forma exhaustiva con diferentes modelos y proyectos, Por lo que ahora es:
- Testear
- Corregir
- Refinar el modelo
- e iterar.
Pueden darle un vistazo al proyecto en su etapa mas verde (o aportar) en: