GuíaIntermedio
Guía de RAG de Producción e Ingesta de Documentos
Construye la plomería de datos de un RAG de producción sobre documentos reales de Reservo —trece documentos en tres formatos crudos: markdown, HTML y un `.txt` deliberadamente "sucio" que simula una extracción de PDF/OCR— y la conecta a un agente como una herramienta más. Cubre el pipeline completo de ingestión: parsear cada formato crudo, limpiar artefactos reales (headers repetidos, guionado roto, saltos de página), aplicar chunking con criterio y adjuntar los metadatos que hacen falta para citar la fuente después. Indexa esos chunks con un índice BM25 construido desde cero ($0, determinista, rotulado siempre como recuperación léxica real —el mismo algoritmo detrás de Elasticsearch/OpenSearch— y nunca como búsqueda semántica), y expone la búsqueda como la tool `search_docs(query, k)` que el agente invoca dentro de su propio bucle: recuperación agéntica, no un pipeline RAG monolítico de una sola pasada, con el agente decidiendo cuándo buscar y combinando la búsqueda con las tools de negocio de Reservo en el mismo turno. Cubre también la ingestión incremental e idempotente (reingestar documentos que cambian sin duplicar, detectando altas/modificaciones/bajas por hash de contenido), la evaluación de la calidad de recuperación con un set de queries de ground-truth fijo y métricas de forma —recall@k, precision@k, nunca un juez semántico—, y la operación del sistema: citar fuentes, manejar el caso de cero resultados sin alucinar, filtrar chunks irrelevantes y estimar el costo del pipeline. Toda la ingeniería se ejecuta de verdad con Python 3.14 y `numpy`; la decisión del LLM es concepto. No enseña la teoría de embeddings ni construye un vector database —eso queda nombrado como el paso siguiente de AI Engineering.
- 64
- lecciones
- 8
- módulos
- Inglés · Español
- disponible en
- Sí
- certificado
- Gratis
- acceso
Resultados
Lo que vas a poder hacer
- Parsear formatos de documento crudos —HTML, markdown, texto "sucio" tipo extracción de PDF/OCR— y limpiar artefactos reales: headers y footers repetidos, guionado roto, saltos de página
- Aplicar chunking con criterio (tamaño fijo, consciente de la estructura del documento, con límite de oración) y entender el trade-off entre chunks pequeños (precisos, sin contexto) y chunks grandes (con contexto, relevancia diluida)
- Adjuntar a cada chunk los metadatos necesarios para citar su fuente después: documento de origen, título, sección y posición
- Construir un índice de búsqueda BM25 desde cero —índice invertido, term frequency, IDF, scoring— y reconocer honestamente su límite frente a la búsqueda semántica (no captura sinónimos ni paráfrasis)
- Exponer la búsqueda como una tool (`search_docs`) con su contrato en JSON Schema, integrable al bucle de un agente exactamente igual que cualquier otra herramienta
- Implementar recuperación agéntica: decidir cuándo conviene llamar a `search_docs`, reformular una query que no trajo resultados útiles, y combinarla con otras tools en el mismo turno
- Construir ingestión incremental e idempotente: reingestar el corpus sin duplicar, detectar documentos nuevos, modificados o borrados por hash de contenido, y actualizar solo lo que cambió
- Evaluar la calidad de la recuperación con un set de queries de ground-truth fijo y métricas deterministas —recall@k, precision@k— incluyendo un caso trampa que expone el límite real de la búsqueda léxica
- Operar el sistema en producción: citar la fuente en cada respuesta, manejar el caso de cero resultados sin inventar, filtrar chunks irrelevantes con un umbral de score, y estimar el costo del pipeline
- Ensamblar el pipeline completo —ingestión, índice, tool, recuperación agéntica, evaluación— como una herramienta de búsqueda de documentos lista para que un agente de Reservo la use
Antes de empezar
Qué necesitas traer
Es para ti si...
- Devs que ya tienen un agente con tool calling y necesitan darle acceso confiable a documentos reales: políticas, FAQs, manuales
- Backend o AI engineers responsables de ingerir documentos "sucios" (PDFs, HTML, texto extraído) para un sistema de búsqueda de producción
- Quien necesita entender BM25 y la recuperación léxica de producción antes de dar el salto a embeddings y vector databases
- Devs que quieren aprender recuperación agéntica —el agente decide cuándo buscar— en vez de un pipeline RAG monolítico de una sola pasada
Requisitos y materiales
- Guía de Fundamentos de Agentes y Tool Calling completada (o equivalente: el contrato de una tool, el protocolo `tool_use`/`tool_result`)
- Python básico e intermedio: expresiones regulares, `dataclasses`, una primera idea de `sqlite3`
- Python 3.14 con su librería estándar y `numpy` (ya instalado); no requiere API key, conexión a internet ni instalar librerías de embeddings o vector databases
Contenido
El temario, módulo por módulo
Abre cualquiera para ver sus lecciones.
- Módulo 1: Parseo y chunking de documentos
- Por qué la ingestión es el bloque más grande
- Parsear HTML con `html.parser`
- Parsear markdown y limpiar texto sucio
- Estrategias de chunking: tamaño fijo vs. consciente de estructura
- El trade-off del tamaño de chunk
- Metadatos para poder citar
- Mini-proyecto: ingesta el corpus de Reservo
- Módulo 3: `search_docs` como herramienta del agente
- De índice a herramienta
- El contrato de `search_docs`
- Qué devuelve la tool al modelo
- Escribir la `description` para que el modelo sepa cuándo
- Acotar la tool: `k` y truncado
- `search_docs` ejecutada de punta a punta
- Mini-proyecto: `search_docs` como una tool más
- Módulo 4: Recuperación agéntica en el bucle
- Cuándo busca el agente
- Reformular y reintentar la query
- Recuperación multi-hop
- Combinar `search_docs` con las tools de Reservo
- Grounding: anclar la respuesta en los chunks
- Recuperación agéntica vs. RAG monolítico
- Mini-proyecto: una corrida de recuperación agéntica
Dudas frecuentes
Lo que suele preguntarse
Sin límite. Es una guía gratuita: entras cuando quieras, las veces que quieras.
No. Los módulos están ordenados de menos a más, pero puedes saltar al que necesites. Tu progreso se guarda por lección.
Lo que haga falta está en «Qué necesitas traer», arriba. Si no aparece nada ahí, puedes empezar desde cero.
En el grupo de WhatsApp del Club, y cada quince días hay un live con un instructor donde se resuelven dudas en vivo.
Sí. Al terminar todas las lecciones se emite automáticamente, con un código verificable que puedes compartir en LinkedIn.
Empieza cuando quieras
Lo que dicen los estudiantes
Estas reseñas son de estudiantes inscritos que completaron al menos el 50% del curso. Moderamos las reseñas solo por motivos de contenido (spam, lenguaje ofensivo, datos personales), nunca por ser críticas o negativas.
Aún no hay reseñas aprobadas.
¡Sé el primero en compartir tu experiencia!