Episode #837
ATA 837 Conecta tus notas con IA, el fin de las búsquedas que fallan
Hay algo que me pasa desde hace años y que seguro que a ti también te suena. Voy tomando notas en Markdown, las organizo por temas y por proyectos, les pongo etiquetas, y en mi cabeza todo tiene sentido. Hasta que un día busco algo con grep y no aparece. No es que la nota no exista, es que mi yo del pasado usó otras palabras y la búsqueda clásica no compara significados, compara letras. Tienes el conocimiento, pero no tienes el mapa. En este episodio te hablo de GraphRAG , esa evolución del RAG que une vectores y grafos de conocimiento para que tus notas dejen de ser ficheros aislados. Primero te cuento por qué la búsqueda literal falla justo cuando tu cerebro digital crece, con esos tres ejemplos de siempre. Buscas particiones y la nota se llama Redimensionar LVM . Buscas monitorización de red y tienes guardadas ntopng e iftop . Buscas alta disponibilidad y aparecen keepalived, Nginx y certificados sin que se vean como un mismo sistema. Después repasamos los tres límites del RAG clásico . El fragmento pierde el contexto, no entiende relaciones y no tiene visión global. Y ahí entran los grafos, con sus nodos, sus aristas y sus pesos, que no escribes a mano, sino que genera el sistema leyendo tus propios .md . Con la idea de fondo bien clara: los vectores te dicen a qué se parece algo, el grafo te dice cómo se conecta. Luego lo ves funcionar de verdad, con un único binario en Rust , SQLite embebido y Ollama para los embeddings y el reconocimiento de entidades. Todo local, sin Python ni contenedores, y lo puedes llevar en un pendrive. Te enseño cómo se crea el grafo, cómo se exploran las estadísticas, la diferencia entre la búsqueda semántica y la literal, cómo se trazan rutas entre dos conceptos que nunca aparecen juntos en una nota, el mapa en la terminal y la integración con Neovim para que te sugiera notas relacionadas mientras escribes. De fondo hay toda una familia de soluciones. Microsoft GraphRAG formalizó la idea con su pipeline de comunidades, LightRAG la hizo más ligera e incremental, y aquí tienes una versión utilitaria, personal y offline que cabe en un único binario. No es un clon de nada, es la misma idea llevada a mi terreno. Un aviso honesto, porque me gusta contar las cosas como son. Sin Ollama no hay magia, la búsqueda vectorial necesita el modelo vivo. Es el precio de tenerlo todo en casa y bajo tu control, que para mí vale la pena. Esto es solo la primera parte de una serie. Hoy entendemos qué es GraphRAG, en el episodio 839 construimos el grafo con tus notas y en el 841 aprendemos a interrogarle. Si llevas tiempo tomando notas y sientes que tu buscador te falla, este episodio es para ti. Capítulos: 0:00 - Introducción: notas, Zettelkasten y el cerebro digital 3:56 - Por qué la búsqueda clásica (grep) falla 7:05 - Qué es GraphRAG: embeddings y vectores 10:45 - Los tres límites del RAG clásico 13:40 - Grafos de conocimiento: nodos, aristas y pesos 17:50 - La herramienta en Rust con Ollama 20:20 - Demo: crear el grafo y explorar estadísticas en SQLite 23:00 - Búsqueda semántica (search) frente a búsqueda literal (FTS) 25:40 - Rutas y relaciones: path y graph 28:10 - El mapa en la terminal (TUI) 29:40 - Conclusiones y cierre Más información y enlaces en las notas del episodio Aquí lo puedes encontrar todo https://atareao.es ✈️ Telegram (el grupo) https://t.me/atareao_con_linux ✈️ Telegram (el canal) https://t.me/canal_atareao Mastodon https://mastodon.social/@atareao Twitter https://twitter.com/atareao GitHub https://github.com/atareao