RAG falla en las tuberías, no en el modelo
Cuando el asistente se equivoca, el problema suele estar en el camino que recorren los datos hasta él. Dos casos reales de un proyecto mío.
¿Cómo logra un chat responder con precisión sobre un documento que el modelo nunca vio en el entrenamiento?
Esa es la pregunta que resolví en la práctica al construir el asistente de mi currículum en línea: un chat que responde, en tiempo real, preguntas sobre mi trayectoria.
La técnica detrás tiene nombre: RAG, generación aumentada por recuperación. En lugar de depender solo de lo que aprendió en el entrenamiento, el modelo busca la información correcta antes de responder.
Simple de explicar. Sofisticado de hacer.
Cómo funciona el flujo
- Su pregunta se convierte en un vector numérico, el embedding: un punto en un mapa de significado.
- Ese punto se compara con miles de otros en una base de datos vectorial, en busca de los fragmentos más cercanos en significado.
- Solo después de esa búsqueda el modelo recibe la pregunta junto con esos fragmentos y escribe una respuesta sujeta a lo que está en los documentos, no a la imaginación.
Tres pasos en la teoría. En la práctica, es donde la cosa se pone interesante.
Problema 1: el enrutamiento roto
Las preguntas sobre la experiencia más reciente rompían el enrutamiento por sección del currículum. El motivo: la comparación de palabras clave se hacía por fragmento de texto, no por palabra entera. Sin encontrar la sección correcta, el sistema caía en la búsqueda por similitud pura y podía responder con una experiencia antigua en lugar de la actual.
La causa raíz ni siquiera era el modelo. Era la lógica de enrutamiento y una caché del índice de embeddings que nunca se renovaba cuando el currículum cambiaba.
Problema 2: la memoria de la conversación
Alguien hacía una pregunta y enseguida otra que dependía de la primera ("¿y dónde está la sede de esa empresa?"). El sistema no entendía que "esa empresa" se refería a lo que se había dicho antes.
La solución fue reescribir la pregunta con el propio modelo antes de la búsqueda, trayendo la referencia del mensaje anterior, sin cambiar la respuesta final.
Lo que queda
Esa es la parte que más me llama la atención de AI Engineering: RAG rara vez falla en el modelo. Falla en las tuberías a su alrededor.
RAG no es magia. Es arquitectura bien pensada.
Publicado originalmente en portugués en LinkedIn, donde la conversación sigue en los comentarios.
