
RAG como Servicio Modular: Por Que la Recuperacion Debe Ser Infraestructura, No Codigo Embebido
La mayoria de los equipos embeben la logica de recuperacion directamente en el codigo de su aplicacion. Cuando el pipeline RAG necesita actualizarse, esto significa redesplegar toda la aplicacion. Tratar RAG como infraestructura modular resuelve este problema.
Nadie embebe la logica del controlador de base de datos en su manejador HTTP y lo llama arquitectura. Las bases de datos se convirtieron en infraestructura hace decadas — abstraidas detras de cadenas de conexion, interfaces de consulta y servicios gestionados. Pero por alguna razon, la mayoria de los equipos que construyen con generacion aumentada por recuperacion estan haciendo el equivalente a codificar SQL directamente en sus manejadores de rutas, excepto que el "SQL" es logica de fragmentacion, llamadas de embedding, configuracion de busqueda vectorial y heuristicas de re-clasificacion, todo entrelazado en codigo de aplicacion que no deberia saber nada de esto.
Este es el problema de acoplamiento en el corazon de la mayoria de las implementaciones RAG actuales, y esta creando silenciosamente el mismo tipo de deuda tecnica que la industria paso anos aprendiendo a evitar con bases de datos, caches y colas de mensajes.
El Problema de Acoplamiento
Una implementacion RAG tipica se ve algo asi: la aplicacion recibe una consulta del usuario, el codigo de la aplicacion llama a un modelo de embedding para vectorizar la consulta, el codigo de la aplicacion consulta una base de datos vectorial con parametros de busqueda especificos, el codigo de la aplicacion aplica logica de re-clasificacion o filtrado, el codigo de la aplicacion construye un prompt con el contexto recuperado, y luego la aplicacion envia ese prompt a un LLM.
Cada uno de esos pasos vive dentro de la aplicacion. La estrategia de fragmentacion, la eleccion del modelo de embedding, el umbral de similitud, el numero de documentos recuperados, el algoritmo de re-clasificacion — todo esta embebido en el codigo de la aplicacion, a menudo disperso en multiples archivos y funciones.
Ahora considera que sucede cuando necesitas cambiar cualquiera de estas decisiones.
Cambias de un modelo de embedding a uno mas nuevo con mejor rendimiento. Eso es un despliegue de aplicacion. Ajustas tu estrategia de fragmentacion porque los documentos con tablas se estaban dividiendo incorrectamente. Despliegue de aplicacion. Agregas un filtro de metadatos para restringir la recuperacion a documentos de los ultimos 90 dias. Despliegue de aplicacion. Agregas un paso de re-clasificacion para mejorar la precision. Despliegue de aplicacion.
Cada mejora de recuperacion requiere un ciclo completo de lanzamiento de la aplicacion. El pipeline de recuperacion y la aplicacion comparten el mismo limite de despliegue, el mismo pipeline CI/CD, el mismo procedimiento de rollback. Un error en tu logica de re-clasificacion puede tirar toda tu aplicacion. Una regresion en tu estrategia de fragmentacion requiere revertir funcionalidades de la aplicacion que se enviaron en el mismo lanzamiento.
Esta no es una preocupacion teorica. Los equipos que construyen sistemas RAG en produccion informan que el ajuste de recuperacion — ajustar tamanos de fragmentos, experimentar con modelos de embedding, afinar parametros de busqueda — representa una porcion significativa del trabajo de mantenimiento continuo. Cuando ese trabajo esta acoplado a los despliegues de la aplicacion, ralentiza tanto al equipo de recuperacion como al equipo de la aplicacion.
La Analogia de la Base de Datos
Considera como tu aplicacion interactua con una base de datos PostgreSQL. Tu aplicacion no contiene el planificador de consultas. No gestiona la creacion de indices. No maneja decisiones del motor de almacenamiento. Se conecta a un endpoint, envia una consulta a traves de una interfaz bien definida y recibe resultados. El equipo de base de datos puede reconstruir indices, actualizar el motor, cambiar la topologia de replicacion y optimizar planes de consulta — todo sin que el equipo de la aplicacion despliegue nada.
Esta separacion existe porque la industria aprendio, a traves de experiencia dolorosa, que acoplar la infraestructura de almacenamiento a la logica de la aplicacion crea sistemas que son fragiles, lentos para iterar y dificiles de razonar.
La recuperacion es la misma categoria de preocupacion. Es infraestructura. Tiene sus propias caracteristicas de rendimiento, sus propios parametros de ajuste, sus propios modos de fallo, sus propios requisitos de versionado. Tratarla como codigo de aplicacion es un error de categoria arquitectonica.
Como Se Ve RAG como Servicio
Un endpoint API de recuperacion RAG separa el pipeline de recuperacion de la aplicacion de forma limpia. La aplicacion envia una consulta. Recibe contexto clasificado y relevante. No sabe ni le importa como se recupero ese contexto.
Detras del endpoint, el servicio de recuperacion tiene su propio ciclo de vida de despliegue. El equipo de recuperacion puede:
- Intercambiar modelos de embedding sin tocar la aplicacion. Pasar de un modelo de proposito general a uno especifico de dominio, o actualizar a una arquitectura completamente nueva. El contrato API permanece igual.
- Cambiar estrategias de fragmentacion por tipo de documento. Los contratos legales obtienen un enfoque de fragmentacion, la documentacion tecnica obtiene otro, las transcripciones de soporte al cliente obtienen un tercero. La aplicacion nunca lo sabe.
- Agregar o eliminar etapas de re-clasificacion. Comenzar solo con similitud vectorial, luego agregar re-clasificacion con codificador cruzado, luego agregar impulso por metadatos. Cada cambio es un despliegue independiente.
- Versionar pipelines de recuperacion. Ejecutar v1 y v2 en paralelo. Dirigir el 10% del trafico al nuevo pipeline. Comparar metricas de calidad de recuperacion. Promover o revertir sin ningun cambio en la aplicacion.
- Instrumentar de forma independiente. Rastrear latencia de recuperacion, puntuaciones de relevancia, tasas de acierto de cache y rendimiento de embedding como metricas operativas de primera clase, separadas de la observabilidad a nivel de aplicacion.
Esto es lo que un pipeline RAG con integracion de especificaciones de llamada a herramientas habilita para los agentes de IA. El agente no contiene logica de recuperacion. Llama a una herramienta de recuperacion a traves de una interfaz estandarizada. El servicio de recuperacion detras de esa herramienta puede evolucionar de forma independiente.
Por Que las Empresas Necesitan Esta Separacion
Para los equipos empresariales que evaluan RAG como servicio en sus instalaciones, la separacion entre la infraestructura de recuperacion y el codigo de la aplicacion no es opcional — es un requisito de gobernanza.
Auditabilidad. Cuando la recuperacion es un servicio separado, puedes auditar exactamente que se recupero para cualquier consulta dada. Puedes registrar la version del pipeline de recuperacion, los documentos considerados, las puntuaciones de clasificacion y el contexto final pasado al modelo. Este registro de auditoria vive en el servicio de recuperacion, no disperso en los logs de la aplicacion.
Control de acceso. Diferentes colecciones de documentos pueden tener diferentes politicas de acceso. El servicio de recuperacion puede aplicar permisos a nivel de documento de forma centralizada, en lugar de requerir que cada aplicacion implemente su propia logica de control de acceso alrededor del contenido recuperado.
Residencia de datos. Cuando el pipeline de recuperacion es un servicio desplegable, controlas exactamente donde se ejecuta. El despliegue en las instalaciones de la capa de recuperacion significa que los embeddings, vectores y contenido de documentos nunca salen de tu infraestructura, incluso si la capa de aplicacion usa un LLM alojado en la nube para la generacion.
Escalado independiente. Las cargas de trabajo de recuperacion y las cargas de trabajo de generacion tienen diferentes perfiles de recursos. El embedding y la busqueda vectorial son intensivos en computo pero rapidos. La generacion con LLM es mas lenta e intensiva en memoria. Cuando estos son servicios separados, escalas cada uno de forma independiente segun sus demandas reales de recursos.
Como Ertas Trata la Recuperacion como Infraestructura
Ertas aborda la recuperacion como un pipeline desplegable que es arquitectonicamente separado de las aplicaciones que lo consumen. El pipeline de recuperacion — ingesta de documentos, fragmentacion, embedding, indexacion y busqueda — es un servicio gestionado con su propia configuracion, versionado y ciclo de vida de despliegue.
Cuando una aplicacion o agente impulsado por Ertas necesita contexto, llama al pipeline de recuperacion a traves de una interfaz definida. La aplicacion especifica lo que necesita: una consulta, filtros opcionales, un numero deseado de resultados. El pipeline maneja como cumplir esa solicitud, incluyendo que modelo de embedding usar, como buscar, si re-clasificar y que colecciones de documentos consultar.
Esto significa que el equipo que gestiona la ingesta de documentos y la calidad de recuperacion puede iterar independientemente del equipo que construye la aplicacion orientada al usuario. Las estrategias de fragmentacion pueden refinarse. Los modelos de embedding pueden actualizarse. Nuevas colecciones de documentos pueden indexarse. Ninguno de estos cambios requiere redespliegue de la aplicacion.
Para los equipos que despliegan en sus instalaciones, el pipeline de recuperacion se ejecuta completamente dentro de su infraestructura. El contenido de documentos, embeddings e indices vectoriales permanecen en el sitio. El pipeline puede configurarse para trabajar con los almacenes de documentos existentes de la organizacion, extrayendo de recursos compartidos de archivos, sistemas de gestion de contenido o bases de datos internas sin requerir migracion de datos a servicios externos.
El Principio Arquitectonico
El patron aqui no es novedoso. Es el mismo principio que impulso la separacion de bases de datos, caches, colas de mensajes y servicios de autenticacion del codigo de la aplicacion. Las preocupaciones de infraestructura merecen tratamiento de infraestructura: servicios dedicados con interfaces definidas, ciclos de vida de despliegue independientes y herramientas operativas especializadas.
La recuperacion es infraestructura. Ha estado haciendose pasar por codigo de aplicacion porque el patron RAG es relativamente nuevo y los equipos optaron por el camino mas rapido hacia un prototipo funcional. Pero los prototipos se convierten en sistemas de produccion, y los sistemas de produccion necesitan limites arquitectonicos.
Los equipos que trazan este limite temprano — tratando su pipeline RAG como un servicio modular, desplegable de forma independiente, en lugar de codigo embebido en su aplicacion — iteraran mas rapido en la calidad de recuperacion, desplegaran cambios de aplicacion con menos riesgo y mantendran una visibilidad operativa mas limpia en ambos sistemas.
Los equipos que no tracen este limite llegaran eventualmente a la misma conclusion a la que llego la industria sobre las bases de datos hace treinta anos: la infraestructura pertenece a la infraestructura, no al codigo de la aplicacion. La unica pregunta es cuanto acoplamiento acumulan antes de hacer el cambio.
Turn unstructured data into AI-ready datasets — without it leaving the building.
On-premise data preparation with full audit trail. No data egress. No fragmented toolchains. EU AI Act Article 30 compliance built in.
Keep reading

How to Deploy a RAG Pipeline as an API Endpoint Your AI Agent Can Call
Most RAG tutorials stop at the vector store. Production AI agents need a callable retrieval endpoint with tool-calling specs. Here is how to build and deploy RAG as modular infrastructure, not embedded code.

RAG Pipeline Architecture: Indexing vs Retrieval as Separate Concerns
Most RAG implementations tangle indexing and retrieval into one codebase. Separating them into distinct pipelines — each independently observable, deployable, and maintainable — is how production RAG systems stay reliable.

Agentic RAG: How to Build a Retrieval Tool Your AI Agent Discovers and Calls Automatically
AI agents need retrieval as a callable tool, not embedded code. Here is how to build a RAG pipeline that generates tool-calling specs so agents can discover and query your knowledge base without custom integration.