Blog

IA vertical local: un RAG privado para despachos y consultoras

Un socio pregunta por la cláusula de indemnización de un contrato de 2019. El asociado tarda hora y media en dar con la versión correcta entre unidades compartidas, correos y duplicados. Con un RAG privado montado sobre los documentos de la firma, la misma pregunta devuelve el pasaje exacto con su cita en segundos, y ningún byte sale del servidor.

Ese es el hueco de la IA vertical: no un chatbot genérico, sino recuperación y generación ajustadas a un dominio de documentos concreto, dentro de tu propia infraestructura. Para abogacía y consultoría, lo de "privado" es condición de uso, no adorno. Vamos por partes: por qué, qué piezas y cómo arrancar el piloto.

Por qué la nube pública queda descartada

El RGPD rige desde mayo de 2018 y la LOPDGDD lo desarrolla en España; ambos alcanzan los datos personales que llenan cualquier expediente. Se añade el secreto profesional de la abogacía y el deber de confidencialidad en consultoría. Un chat público de consumidor no está pensado para ese nivel de riesgo.

La exposición empieza al pegar un contrato en un chat de consumo: la conversación puede acabar en el entrenamiento del proveedor salvo que la desactives, y atraviesa su infraestructura igualmente. A cada proveedor se suman subencargados y jurisdicciones nuevas. Con el Reglamento europeo de IA en vigor desde agosto de 2024 y de aplicación por fases, improvisar con datos de terceros en servicios ajenos queda en terreno difícil.

Paso previo a elegir modelo: separa el corpus en dos pilas, lo que contiene datos de clientes y lo que no. Ese reparto define el aislamiento, y la pila con datos de clientes exige servidor propio.

Qué significa verticalizar un RAG

Las siglas significan generación aumentada por recuperación: el sistema busca en un corpus los fragmentos pertinentes y los entrega al modelo como contexto. Un RAG genérico admite cualquier documento. Uno vertical cambia el diseño del índice y del prompt para un dominio específico, el jurídico o el de consultoría en este caso.

En despachos esto son decisiones concretas: parsear con herramientas que respetan la estructura del texto (Docling o Apache Tika, ambas open source), trocear por artículos y cláusulas en vez de por tokens, y anotar metadatos como materia, expediente, parte o fecha. Con esos metadatos, filtrar en Qdrant o pgvector acierta más que un índice plano; Qdrant suma búsqueda híbrida con vectores dispersos, útil para nombres propios y cifras.

El mismo esqueleto sirve en una consultora con propuestas, informes y entregables; cambian la taxonomía y las instrucciones del sistema. La jerga pesa: si en tus papeles se habla de prórroga tácita o cláusula suelo, el índice debe entenderlo. Cierra el diseño antes de indexar nada, porque corregir la taxonomía de metadatos más tarde obliga a reindexar todo el corpus.

El stack, pieza por pieza

El arranque lo marca el servidor de modelos: Ollama para empezar hoy, vLLM cuando el tráfico suba. Bastan los modelos abiertos: Llama 3.1 alcanza contextos de 128K tokens, Mistral y Qwen generan bien en español. Regla de tamaño: un cuantizado de la gama 8B corre en GPU de consumo e incluso en CPU; los 70B ya piden tarjeta grande.

En los embeddings para español, bge-m3 o multilingual-e5 resuelven sin complicaciones. El almacén de vectores: pgvector si ya vive un PostgreSQL en tu VPS, Chroma o Qdrant si arrancas de cero. En la cara de usuario, Open WebUI trae su propio RAG de documentos, con lo que probar el circuito completo no exige programar nada.

Como frontal también vale algo más humilde: un bot de Telegram deja la consulta en el bolsillo del socio, y montarlo en tu VPS es tarea de una tarde con la guía de cómo montar un bot de Telegram con IA local en tu servidor con Ollama y Python. Para automatizar lo periódico (resúmenes de expedientes, vigilancia de vencimientos), el enfoque de Hermes Agent con docker compose funciona como orquestación. El conjunto resulta un RAG privado funcional sin exponer el modelo a internet.

Siguiente decisión: un caso de uso solo, precedentes de cláusulas por ejemplo, y una colección reducida. Lo demás se añade cuando ese primero funcione.

Dónde se tuerce la cosa

El cuello de botella no es el modelo, es el parseo. Los PDF escaneados fuerzan OCR, el OCR mete errores y esos errores contaminan índice y respuestas. El troceado torpe corta una cláusula por la mitad y la reparte en dos contextos sin sentido.

Antes de fiarte del sistema, compruébalo con tus preguntas: escribe veinte con respuesta conocida y mide si las encuentra y si cita el documento acertado. Pide cita obligatoria en cada respuesta; la que no señala su origen, no vale. Una persona revisa cada respuesta antes de que llegue al cliente.

Con el conjunto de pruebas escrito, el reparto del tiempo cambia: parseo y evaluación ocupan la primera semana, y la elección entre Llama o Mistral llega al final. Cambiar de modelo cuesta una línea de configuración; limpiar un índice sucio, mucho más.

Un piloto de dos semanas

Primera semana: una materia, de 50 a 100 documentos, Ollama más Open WebUI y la colección indexada. Segunda: las veinte preguntas de la evaluación, puntuación de aciertos y anotación de cada fallo con su causa (parseo, troceado, metadatos o modelo). Los fallos marcan por dónde seguir, y suelen apuntar al troceado.

La ventaja de un despacho o una consultora con esto montado no vive en el modelo, que cualquiera descarga esta tarde, sino en el corpus y la taxonomía, que solo existen en tu servidor. El proyecto entero depende de una decisión: la carpeta con la que arrancas. Elígela hoy y mañana tienes el primer índice.

Pruébalo en 3 minutos

Instala Ollama + Open WebUI en tu ordenador, gratis y en privado.