gandiatech
Gandia
Por Equipo GandiaTech

Arquitectura de un Pipeline RAG en Producción: De la Ingesta al Despliegue

RAG Arquitectura Python Producción

Construir un prototipo RAG funcional en un notebook de Jupyter puede llevar pocas horas. Llevar ese sistema a producción, con fiabilidad, escalabilidad y mantenibilidad, es un proyecto de ingeniería completamente diferente. Esta guía cubre los componentes críticos que la mayoría de tutoriales omite.

Fase 1: Ingesta y chunking inteligente

La calidad del sistema RAG depende en un 70% de la calidad del chunking. No existe una estrategia universal: documentos legales, artículos periodísticos y manuales técnicos requieren estrategias diferentes. El chunking recursivo por separadores semánticos suele dar mejores resultados que el chunking fijo por número de tokens, ya que respeta la estructura natural del texto.

Fase 2: Generación de embeddings

La elección del modelo de embeddings es crítica. Para texto en español, modelos como intfloat/multilingual-e5-large o sentence-transformers/paraphrase-multilingual-mpnet-base-v2 superan a los modelos en inglés. El modelo de embeddings debe ser el mismo durante la ingesta y durante las consultas, sin excepción.

Fase 3: Orquestación con FastAPI

El endpoint de consulta debe manejar: gestión del historial de conversación (context window), reranking de resultados vectoriales con un modelo cross-encoder, y construcción dinámica del prompt según la naturaleza de la pregunta.

Fase 4: Observabilidad

En producción, necesitas métricas de: latencia por fase del pipeline, tasa de respuestas sin contexto relevante encontrado, y feedback implícito del usuario (preguntas de seguimiento como señal de respuesta insatisfactoria). Sin observabilidad, un sistema RAG es una caja negra imposible de mejorar.