¿Cuánto costaría su proyecto con nosotros? Descríbalo en unas líneas y vea nuestro rango en dos minutos. Obtener estimación

¿Qué es el desarrollo RAG y cuándo lo necesita su empresa?

El desarrollo RAG es el trabajo de ingeniería que conecta un modelo de lenguaje de gran tamaño con su propio conocimiento, de modo que las respuestas salgan de sus documentos y no de lo que el modelo memorizó durante el entrenamiento. Una empresa necesita RAG cuando las personas hacen una y otra vez preguntas cuyas respuestas ya existen en algún lugar interno: macros de soporte, manuales de producto, contratos, políticas, tickets anteriores, una wiki en la que nadie encuentra nada. En lugar de reentrenar un modelo, un sistema RAG recupera los pocos fragmentos relevantes para cada pregunta y se los entrega al modelo con la instrucción de responder a partir de ellos y citarlos.

Implementaciones de RAG que nos piden con frecuencia:

  • Un asistente interno que responde a las preguntas del personal a partir de políticas, procedimientos (SOP) y la wiki.
  • Un asistente de atención al cliente basado en los artículos del centro de ayuda y los tickets resueltos (vea desarrollo de chatbots con IA).
  • Búsqueda y respuesta a preguntas sobre contratos, especificaciones o documentación técnica.
  • Una capa de "memoria" para un producto de IA, para que el asistente recuerde datos sobre un usuario o una cuenta concretos.

¿Cómo funciona un pipeline RAG en producción?

Un pipeline RAG en producción tiene dos mitades: una parte de ingesta offline que prepara su conocimiento y una parte de consulta online que responde a las preguntas. La mayoría de los problemas de precisión vienen de la parte de ingesta, por eso dedicamos ahí tiempo real de ingeniería en lugar de tratarla como un script puntual.

Etapa Qué ocurre Dónde suele fallar
1. Ingesta Los conectores extraen contenido de archivos, Confluence, Google Drive, Notion, bases de datos, herramientas de tickets o APIs Fuentes que faltan, sin sincronización incremental, copias desactualizadas
2. Limpieza y análisis Se extraen texto, tablas y encabezados; se eliminan duplicados y texto repetitivo; los PDF escaneados pasan por OCR Tablas aplanadas hasta convertirse en ruido, encabezados y pies de página repetidos en cada fragmento
3. Fragmentación Los documentos se dividen en fragmentos con metadatos (fuente, sección, fecha, nivel de acceso) Fragmentos cortados a mitad de frase o demasiado grandes para ser específicos
4. Embeddings Cada fragmento se convierte en un vector con un modelo de embeddings Modelo inadecuado para el idioma o el dominio
5. Almacenamiento Los vectores y metadatos se guardan en una base de datos vectorial Sin filtrado por permisos o por fecha
6. Recuperación Búsqueda híbrida (vectorial más palabras clave) y luego reranking de los mejores resultados La respuesta correcta existe pero aparece en el puesto 15
7. Generación El LLM responde a partir de los fragmentos recuperados, con citas El modelo ignora el contexto o mezcla conocimiento externo
8. Evaluación y monitorización Un conjunto de prueba y el feedback en vivo miden la precisión a lo largo del tiempo Nadie nota que la calidad baja tras un cambio en los datos

¿Cómo deben fragmentarse los documentos para RAG?

La fragmentación debe seguir la estructura de sus documentos, no un número fijo de caracteres. Una buena opción por defecto es dividir por encabezados y párrafos en fragmentos de unos pocos cientos de tokens, mantener un pequeño solapamiento y adjuntar metadatos a cada fragmento: título del documento, ruta de secciones, fecha, idioma y quién puede verlo. La ruta de encabezados importa, porque un fragmento que dice "el límite es de 30 días" no sirve de nada si no se sabe que viene de "Reembolsos > Clientes de la UE".

Cada tipo de contenido necesita un tratamiento específico. Las tablas se mantienen enteras o se convierten en afirmaciones por fila. Las preguntas frecuentes se dividen en una pregunta por fragmento. Los contratos largos se fragmentan por cláusula, conservando el número de cláusula. Los registros de chat y los tickets se agrupan por conversación, no por línea. Probamos dos o tres estrategias de fragmentación con el mismo conjunto de evaluación y nos quedamos con la que recupera el fragmento correcto con más frecuencia, en lugar de adivinar.

¿Qué embeddings y qué base de datos vectorial conviene usar?

El modelo de embeddings y la base de datos vectorial deben elegirse según su volumen de datos, sus idiomas y sus reglas de alojamiento, y ambos deben poder sustituirse más adelante. Los mantenemos detrás de una pequeña interfaz en el código, de modo que cambiar de proveedor sea una reindexación y no una reescritura.

Opción Cuándo encaja Contrapartidas
pgvector (PostgreSQL) Equipos que ya usan PostgreSQL, hasta unos pocos millones de fragmentos, permisos guardados en la misma base de datos Requiere ajuste a mayor escala; menos funciones de búsqueda integradas
Qdrant Colecciones más grandes, filtrado rico por metadatos, autoalojamiento en su propia nube Un servicio más que operar
Weaviate o Milvus Colecciones muy grandes, búsqueda híbrida integrada Mayor carga de operación
Pinecone (gestionado) Equipos que no quieren operar ninguna base de datos Dependencia del proveedor, los datos salen de su infraestructura
OpenSearch o Elasticsearch con vectores Empresas que ya lo usan para búsqueda por palabras clave Funciones vectoriales menos maduras que en motores dedicados

Para los embeddings, los modelos alojados de OpenAI y proveedores similares son el inicio más rápido. Los modelos de embeddings abiertos se ejecutan en sus propios servidores cuando los datos no pueden salir de su entorno. El contenido multilingüe (por ejemplo, inglés más francés o ucraniano) necesita un modelo probado en esos idiomas, algo que comprobamos durante la evaluación en lugar de darlo por hecho.

¿Cómo se mide la precisión de un RAG?

La precisión de un RAG se mide con un conjunto de evaluación fijo: de 50 a 200 preguntas reales de sus usuarios, cada una con la respuesta esperada y la fuente de la que debería salir. Sin ese conjunto, cualquier discusión sobre calidad es una opinión. Con él, cada cambio en la fragmentación, los prompts, los modelos o los datos obtiene una puntuación comparable.

Seguimos cuatro cifras:

  1. Tasa de acierto de la recuperación: ¿apareció el fragmento correcto entre los primeros resultados?
  2. Fidelidad: ¿la respuesta afirma solo lo que dicen los fragmentos recuperados?
  3. Corrección de la respuesta: ¿coincide la respuesta con la esperada, según un revisor o un evaluador LLM contrastado con muestras humanas?
  4. Calidad del rechazo: cuando la respuesta no está en la base de conocimiento, ¿el sistema lo dice en lugar de inventarla?

En producción añadimos el feedback de los usuarios (pulgar arriba o abajo con un motivo), el registro de las fuentes recuperadas por respuesta, el coste por petición y la latencia. El conjunto de evaluación se ejecuta automáticamente antes de cada versión, igual que las pruebas unitarias.

¿Qué pasa con la privacidad de los datos, los permisos y la elección del modelo?

Un sistema RAG nunca debe mostrar a un usuario un fragmento que no podría abrir en la fuente original. Guardamos las reglas de acceso como metadatos de cada fragmento y filtramos en el momento de la recuperación, de modo que los permisos se aplican antes de que el modelo vea nada. Los datos sensibles pueden cifrarse en la ingesta; en nuestro proyecto AI Grief Companion cada mensaje se cifra con AES-256-GCM por mensaje bajo una clave de sobre KMS, y un usuario puede borrarlo todo con un clic.

Para la etapa de generación trabajamos con las APIs de OpenAI y Anthropic Claude y con modelos abiertos servidos en su propia infraestructura (el mismo proyecto ejecuta adaptadores de Qwen2.5-7B mediante vLLM). La elección depende de las reglas sobre los datos, los idiomas, la latencia y el coste por respuesta. Los prompts se guardan en la base de datos con historial de versiones cuando resulta útil, para poder ajustar el tono y las instrucciones sin publicar código.

¿Cuánto cuesta el desarrollo RAG?

El coste del desarrollo RAG depende sobre todo de cuántas fuentes conecta, de lo desordenadas que están y de lo estrictos que son los requisitos de precisión y permisos. Una prueba de concepto sobre una fuente con un conjunto de evaluación suele llevar de 3 a 6 semanas; un asistente en producción con varias fuentes, permisos e interfaz, de 2 a 4 meses; un RAG a nivel de plataforma entre productos con modelos propios lleva más tiempo.

Los costes de funcionamiento van aparte: tokens del modelo por respuesta, coste de embeddings en cada reindexación y alojamiento de la base de datos vectorial. Estimamos el coste por cada 1.000 preguntas durante la prueba de concepto para que no haya sorpresas, y le damos un presupuesto cerrado para los hitos acordados tras una breve llamada para definir el alcance. Con nosotros, un asistente RAG sobre su conocimiento parte de 5.000 USD; nuestra guía sobre el coste del desarrollo de chatbots con IA cubre los alcances mayores.

¿Dónde hemos construido sistemas RAG y LLM?

Nuestro trabajo de recuperación más completo es el AI Grief Companion para una startup estadounidense: una pasarela de ingesta en Python convierte diez formatos de exportación de chats en una única tabla de mensajes normalizada, y un pipeline de ML construye un perfil de personalidad, un grafo de hechos en Neo4j, memoria RAG y adaptadores LoRA. El chat usa siempre la etapa que esté lista, de modo que los usuarios pueden hablar con el sistema antes de que termine el entrenamiento.

En el lado de producto, AI Resume Master, nuestro propio creador de currículums, usa LLM para generar, reescribir y mejorar el contenido de currículums y cartas de presentación, y alcanzó 50.000 usuarios activos mensuales. Para una visión más amplia de cómo añadir funciones con LLM a un producto existente, consulte servicios de integración de IA y nuestra guía de implementación de RAG.

Cómo trabajamos en proyectos RAG

Empezamos con una breve llamada para definir el alcance y una fase de descubrimiento: revisamos sus fuentes, recopilamos preguntas reales y construimos el conjunto de evaluación junto con su equipo. Después entregamos una prueba de concepto sobre una fuente con la precisión medida, y solo entonces escalamos a más fuentes, permisos y una interfaz de producción. Los ingenieros sénior son responsables de la arquitectura; internamente usamos agentes de programación con IA para avanzar más rápido en la infraestructura.

Si tiene una base de conocimiento sobre la que la gente hace siempre las mismas preguntas, reserve una llamada de definición del alcance y traiga cinco preguntas de ejemplo. Le diremos con honestidad si RAG es la herramienta adecuada.

Casos de estudio

Preguntas frecuentes

RAG (generación aumentada por recuperación) busca en su propio contenido en el momento de la pregunta y entrega al modelo los fragmentos más relevantes, a partir de los cuales responde y a los que cita. Un chatbot genérico no conoce sus documentos internos, no puede respetar quién tiene permiso para ver qué y no puede mostrar de dónde sale una respuesta. RAG añade esas tres cosas y mantiene sus datos en un almacén que usted controla.

Use RAG cuando el modelo necesita datos que cambian: políticas, documentación de producto, tickets, contratos. Use fine-tuning cuando el modelo necesita un estilo, un formato o un comportamiento concreto en el que falla una y otra vez. La mayoría de los asistentes empresariales necesitan primero RAG. El fine-tuning llega después, si es que llega, y ambos se combinan bien: en nuestro proyecto AI Grief Companion un adaptador LoRA aporta la voz y la recuperación aporta los hechos.

Una prueba de concepto acotada sobre una fuente de conocimiento con conjunto de evaluación suele llevar de 3 a 6 semanas. Un sistema en producción con varias fuentes, permisos, sincronización incremental, monitorización e interfaz de usuario suele llevar de 2 a 4 meses. La mayor variable no es el modelo, sino el estado de los datos de origen: los PDF escaneados, los duplicados y las páginas obsoletas añaden trabajo de limpieza.

Si ya usa PostgreSQL y tiene hasta unos pocos millones de fragmentos, pgvector suele ser la opción más sencilla, porque mantiene los vectores junto a sus datos relacionales y sus permisos. Qdrant o Weaviate tienen sentido para colecciones más grandes, filtrado intensivo o escalado dedicado. Los servicios gestionados como Pinecone reducen el trabajo de operación, pero añaden un proveedor más. Elegimos después de revisar el volumen de datos, los filtros y las reglas de alojamiento.

Las alucinaciones no se pueden eliminar por completo, pero sí medir y reducir. Indicamos al modelo que responda solo a partir de los fragmentos recuperados y que diga cuando no lo sabe, mostramos citas en cada respuesta, añadimos reranking para que los fragmentos correctos lleguen al modelo y ejecutamos un conjunto de evaluación fijo con cada cambio. Las respuestas por debajo de un umbral de confianza pasan a una persona o devuelven una respuesta de respaldo segura.

Empecemos su proyecto
Agendar una llamada