RAG Local: Chatea con tus Documentos sin Nube

Malla de puntos azules sobre fondo oscuro representando datos vectoriales

Un RAG local te permite hacer preguntas sobre tus propios documentos y recibir respuestas basadas en ellos, sin subir nada a internet. Es la aplicación más útil de la IA local: convierte un modelo genérico en un experto sobre tus contratos, apuntes o documentación técnica.

RAG significa Retrieval Augmented Generation, generación aumentada por recuperación. Suena complicado, pero la idea es simple y las herramientas actuales lo han vuelto accesible sin programar. Si vienes de la guía de IA local, este es el paso natural siguiente.

Por qué hace falta un RAG

Un modelo de lenguaje solo conoce lo que vio durante su entrenamiento. No ha leído tus documentos, y su conocimiento se congela en una fecha concreta. Si le preguntas por la cláusula de un contrato tuyo, se lo inventará.

La solución intuitiva sería pegar el documento entero en el prompt, pero eso choca con dos límites: la ventana de contexto es finita y, cuanto más texto metes, más lento y más despistado se vuelve el modelo.

El RAG resuelve esto con una idea elegante: en lugar de darle todo, le damos solo los fragmentos relevantes para cada pregunta. El modelo recibe justo el contexto que necesita y responde apoyado en él.

El beneficio secundario es igual de importante: como la respuesta se basa en fragmentos concretos, puedes comprobar de dónde sale. Eso reduce drásticamente las invenciones.

Cómo funciona por dentro

El proceso tiene cuatro pasos. Entenderlos ayuda a diagnosticar cuando algo no funciona:

  1. Fragmentación. Tus documentos se parten en trozos de unos cientos de palabras. Es el paso que más influye en la calidad final: un corte a mitad de idea produce fragmentos inútiles.
  2. Vectorización. Cada fragmento se convierte en una lista de números que representa su significado. Textos con sentido parecido acaban en posiciones cercanas.
  3. Búsqueda. Al preguntar, tu pregunta se vectoriza igual y se buscan los fragmentos más próximos. No busca palabras exactas, busca significado: preguntar por «despido» encuentra un párrafo que habla de «extinción del contrato».
  4. Generación. Los fragmentos encontrados se envían al modelo junto con tu pregunta, y este redacta la respuesta basándose en ellos.

Todo esto ocurre en tu máquina. Ni los documentos ni las preguntas salen a ninguna parte.

Herramientas para montarlo sin programar

HerramientaDificultadMejor para
AnythingLLMMuy bajaEmpezar hoy con interfaz completa
Open WebUIBajaQuien ya usa Ollama y quiere una interfaz web
LM StudioMuy bajaConsultas puntuales sobre pocos archivos
LlamaIndexAltaControl total, requiere Python
Todas funcionan sobre modelos locales y no envían datos a servidores externos.

La vía rápida: AnythingLLM

AnythingLLM es la opción más directa para empezar. Se instala como una aplicación normal, detecta tu Ollama si lo tienes y gestiona toda la parte compleja por ti.

El flujo es literalmente: crear un espacio de trabajo, arrastrar los documentos y empezar a preguntar. Acepta PDF, Word, texto plano y Markdown. Organiza los documentos por espacios, lo que permite mantener separados distintos proyectos o clientes.

Si ya usas Ollama, la integración es automática: detecta el servidor local y lista tus modelos descargados.

Cómo mejorar los resultados

Un RAG mal configurado da respuestas mediocres y hace pensar que la tecnología no sirve. Casi siempre el problema está en uno de estos puntos:

El tamaño de los fragmentos

Es el ajuste con más impacto. Fragmentos muy pequeños pierden el contexto; muy grandes diluyen lo relevante entre relleno. Un punto de partida razonable son 500 a 800 palabras con cierto solapamiento entre fragmentos consecutivos, para que ninguna idea quede partida por la mitad.

La calidad de los documentos

Un PDF escaneado sin capa de texto es invisible para el sistema. Los PDF con columnas o tablas complejas suelen extraerse desordenados. Antes de culpar al modelo, comprueba que el texto se ha leído bien: si puedes seleccionar y copiar el texto del PDF, buena señal.

El número de fragmentos recuperados

Por defecto suelen enviarse entre 3 y 5. Si las respuestas se quedan cortas, sube esa cifra; si el modelo se despista, bájala. Más contexto no siempre es mejor.

Preguntar con precisión

La búsqueda funciona por similitud semántica, así que una pregunta vaga recupera fragmentos vagos. «¿Qué dice el contrato sobre el plazo de preaviso?» funciona mucho mejor que «habla del contrato».

Preguntas frecuentes

¿Cuántos documentos aguanta?

Miles sin problema. La búsqueda vectorial escala muy bien; lo que crece es el tiempo de procesado inicial, que se hace una sola vez por documento.

¿Necesito un modelo grande?

No. Con RAG el modelo no necesita saber, solo leer bien y redactar. Un modelo de 8B en Q4 funciona perfectamente porque la información se le sirve en el contexto.

¿Puede seguir inventando cosas?

Menos, pero sí. Si la respuesta no está en tus documentos, algunos modelos rellenan el hueco con su conocimiento general. Un system prompt que le indique responder solo con el contexto aportado, y admitir cuando no lo sabe, reduce mucho el problema.

¿Sirve para código?

Sí, y es uno de los usos más prácticos: indexar un proyecto entero y preguntar dónde se define una función o cómo se conecta un módulo con otro. Conviene fragmentar respetando los límites de funciones y clases.

En resumen

Un RAG local es lo que transforma la IA local de curiosidad técnica en herramienta de trabajo real. Deja de ser un chat genérico y pasa a conocer tus documentos.

Instala AnythingLLM, conéctalo a tu Ollama, arrastra una carpeta de documentos y prueba. Si las respuestas no convencen, el culpable casi siempre es la fragmentación, no el modelo.

// sin comentarios, mejor hablamos

¿Alguna duda con esto?

Si algo no te ha funcionado o quieres contarme tu caso, escríbeme directamente. Respondo a todos los mensajes.