# M9 · Laboratorio de Proyectos de IA y Casos Sectoriales **Máster en Inteligencia Artificial, Automatización y Agentes Digitales** · Next Educación · Próxima edición **6 ECTS · 12 sesiones de una hora · Responsable de producción y coordinación: Sami Halawa Ribas** ## Descripción Laboratorio de integración: ejecución completa de un proyecto sectorial de IA en formato de sprints, desde el encuadre y la preparación de datos hasta el asistente corporativo con recuperación aumentada, su evaluación, despliegue, optimización del coste de inferencia y presentación ante un comité. ## Competencias del módulo 1. Integrar datos, modelos y despliegue en un mismo proyecto. 2. Adaptar la solución al sector elegido. 3. Construir un asistente corporativo con RAG. 4. Optimizar costes de inferencia. 5. Presentar el proyecto. ## Evaluación | Instrumento | Peso | |---|---:| | Avance por sprints y demostraciones intermedias | 30% | | Solución desplegada y evaluada | 45% | | Presentación final ante comité | 25% | ## Mapa de sesiones | # | Sesión | Entregable | |---:|---|---| | 1 | Encuadre del proyecto sectorial y definición del alcance | Acta de encuadre aprobada con plan de sprints y métricas. | | 2 | Datos del sector: adquisición, gobierno y preparación del corpus | Corpus versionado con informe de calidad y cobertura. | | 3 | Arquitectura de la solución y preparación del entorno | Documento de arquitectura y entorno reproducible verificado. | | 4 | Sprint de prototipo: primer recorrido extremo a extremo | Prototipo ejecutable con línea base de calidad, latencia y coste. | | 5 | Asistente corporativo con RAG: indexación y recuperación | Capa de recuperación medida y con control de permisos verificado. | | 6 | Mejora de la respuesta: reordenación, citación y control de alucinación | Sistema mejorado con medición comparada de calidad, latencia y fundamentación. | | 7 | Evaluación del sistema: conjuntos de prueba y métricas | Batería de evaluación integrada con informe de la versión actual. | | 8 | Despliegue del servicio: seguridad y observabilidad | Servicio desplegado con panel de operación y prueba de reversión. | | 9 | Optimización del coste de inferencia y del rendimiento | Estudio de coste con frontera calidad-coste y configuración recomendada. | | 10 | Casos sectoriales: adaptación de la solución al sector | Informe de adaptación sectorial con comparación entre proyectos. | | 11 | Taller integrador: endurecimiento de la solución y ensayo de la defensa | Solución endurecida y presentación corregida tras el ensayo. | | 12 | Evaluación del módulo y defensa | Prueba resuelta, defensa realizada y documentación final entregada. | --- ## Programación sesión a sesión ### Sesión 01 — Encuadre del proyecto sectorial y definición del alcance **Objetivos** - Delimitar un problema sectorial abordable en el tiempo del laboratorio. - Fijar criterios de éxito medibles y una línea base honesta. - Planificar el proyecto en sprints con entregables verificables. **Contenidos** - **Elección del caso** - Sectores disponibles y datos accesibles para cada uno - Criterios de viabilidad en el plazo del laboratorio - Alcance mínimo viable y alcance ampliado - Riesgos de alcance y mecanismo de recorte - **Criterios de éxito** - Métrica de negocio, métrica técnica y umbral de aceptación - Línea base actual del proceso y método de medición - Restricciones de latencia, coste y cumplimiento - Definición de terminado para cada entregable - **Plan de sprints** - Cinco sprints, objetivos y demostraciones intermedias - Reparto de responsabilidades dentro del equipo - Gestión de dependencias externas y de accesos - Registro de decisiones y de supuestos **Práctica — Acta de encuadre del proyecto** Documento de encuadre con problema, alcance, métricas, restricciones y plan de sprints del proyecto de laboratorio. 1. Seleccionar el caso sectorial y justificar la elección. 2. Definir métricas, umbrales y línea base medida. 3. Declarar restricciones de latencia, coste y cumplimiento. 4. Planificar los cinco sprints con entregable por sprint. - *Stack:* Plantilla de acta de proyecto y tablero de seguimiento - *Entregable:* Acta de encuadre aprobada con plan de sprints y métricas. **Lecturas** - Provost & Fawcett, Data Science for Business, cap. 2 *Materiales:* `teoria/M9_S01_Encuadre_del_proyecto_sectorial_y_definicion_del.html` · `code/M9_S01_Encuadre_del_proyecto_sectorial_y_definicion_del.ipynb` --- ### Sesión 02 — Datos del sector: adquisición, gobierno y preparación del corpus **Objetivos** - Reunir y gobernar los datos y documentos del caso sectorial. - Preparar el corpus documental con metadatos y permisos. - Verificar la calidad del corpus antes de indexarlo. **Contenidos** - **Adquisición** - Fuentes internas, abiertas y de terceros del sector - Condiciones de uso, licencias y datos personales presentes - Volumen, cobertura temporal y actualización - Datos que deben quedar fuera del sistema - **Preparación del corpus** - Extracción, normalización y deduplicación - Segmentación adaptada a la estructura documental del sector - Metadatos de origen, fecha, versión y permisos - Identificadores estables para citación en la respuesta - **Control de calidad** - Muestreo manual y medición del error de extracción - Cobertura del corpus frente a las preguntas objetivo - Detección de documentos obsoletos o contradictorios - Versionado del corpus y reindexación incremental **Práctica — Corpus sectorial listo para indexar** Construcción y verificación del corpus documental del proyecto con metadatos, permisos y control de calidad. 1. Reunir y depurar las fuentes documentales del caso. 2. Segmentar y enriquecer con metadatos y permisos. 3. Medir el error de extracción sobre una muestra. 4. Evaluar la cobertura frente a treinta preguntas objetivo. - *Stack:* Python, pypdf, pdfplumber, langchain-text-splitters - *Entregable:* Corpus versionado con informe de calidad y cobertura. *Materiales:* `teoria/M9_S02_Datos_del_sector_adquisicion_gobierno_y_preparac.html` · `code/M9_S02_Datos_del_sector_adquisicion_gobierno_y_preparac.ipynb` --- ### Sesión 03 — Arquitectura de la solución y preparación del entorno **Objetivos** - Definir la arquitectura técnica completa de la solución. - Justificar la elección de modelos, almacén vectorial e infraestructura. - Dejar el entorno de desarrollo y el repositorio operativos. **Contenidos** - **Diseño de la arquitectura** - Componentes: ingesta, índice, recuperación, generación y presentación - Modelo alojado por proveedor frente a modelo abierto autoalojado - Almacén vectorial y base de datos de apoyo - Interfaces con los sistemas del sector - **Decisiones tecnológicas** - Criterios de selección de modelo: calidad, latencia, coste y residencia del dato - Almacenes vectoriales: pgvector, Qdrant y alternativas gestionadas - Marco de orquestación y grado de acoplamiento - Requisitos de cumplimiento heredados del Módulo 8 - **Preparación del entorno** - Repositorio, entornos y gestión de secretos - Integración continua mínima y pruebas automáticas - Datos de prueba y entornos separados - Convenciones de trabajo del equipo **Práctica — Documento de arquitectura y entorno operativo** Diseño de la arquitectura con decisiones justificadas y puesta en marcha del entorno de trabajo del equipo. 1. Dibujar la arquitectura de componentes y de datos. 2. Justificar cada decisión tecnológica frente a dos alternativas. 3. Configurar repositorio, entornos y gestión de secretos. 4. Ejecutar la comprobación de entorno de todo el equipo. - *Stack:* Docker, git, pgvector o Qdrant, integración continua - *Entregable:* Documento de arquitectura y entorno reproducible verificado. **Lecturas** - Documentación del almacén vectorial seleccionado por el equipo *Materiales:* `teoria/M9_S03_Arquitectura_de_la_solucion_y_preparacion_del_en.html` · `code/M9_S03_Arquitectura_de_la_solucion_y_preparacion_del_en.ipynb` --- ### Sesión 04 — Sprint de prototipo: primer recorrido extremo a extremo **Objetivos** - Construir un recorrido funcional completo aunque simple. - Detectar tempranamente los riesgos técnicos reales. - Establecer la línea base de calidad del sistema. **Contenidos** - **Recorrido mínimo** - Ingesta, indexación, recuperación y generación con citación - Interfaz mínima de consulta - Registro de la traza completa de cada consulta - Criterio de terminado del prototipo - **Detección temprana de riesgos** - Preguntas que el corpus no puede responder - Latencia y coste observados en el recorrido mínimo - Dependencias externas que fallan - Decisiones de arquitectura que conviene revisar - **Línea base** - Conjunto inicial de preguntas de referencia - Medición manual de la calidad de las respuestas - Registro de la línea base para comparaciones posteriores - Priorización de las mejoras del siguiente sprint **Práctica — Prototipo funcional y demostración de sprint** Construcción del recorrido completo y demostración ante el resto del laboratorio con línea base medida. 1. Implementar ingesta, índice, recuperación y generación con citación. 2. Ejecutar treinta preguntas de referencia y anotar la calidad. 3. Registrar latencia y coste por consulta. 4. Demostrar el prototipo y priorizar las mejoras del siguiente sprint. - *Stack:* Python, marco de orquestación, almacén vectorial, API de modelo - *Entregable:* Prototipo ejecutable con línea base de calidad, latencia y coste. *Materiales:* `teoria/M9_S04_Sprint_de_prototipo_primer_recorrido_extremo_a_e.html` · `code/M9_S04_Sprint_de_prototipo_primer_recorrido_extremo_a_e.ipynb` --- ### Sesión 05 — Asistente corporativo con RAG: indexación y recuperación **Objetivos** - Construir la capa de recuperación del asistente con criterio. - Ajustar la indexación al tipo documental del sector. - Controlar los permisos de acceso a la información recuperada. **Contenidos** - **Indexación** - Modelos de incrustación: elección, dimensión y coste - Tamaño de fragmento y solapamiento según tipo documental - Índices y parámetros de búsqueda aproximada - Reindexación incremental y coherencia del índice - **Recuperación** - Búsqueda densa, léxica e híbrida - Filtrado por metadatos y por fecha de vigencia - Número de fragmentos recuperados y ventana de contexto - Ensamblado del contexto y orden de los fragmentos - **Control de acceso** - Filtrado por permisos del usuario en la recuperación - Segregación de índices frente a filtrado en consulta - Información sensible que no debe recuperarse - Registro de qué se recuperó para cada consulta **Práctica — Capa de recuperación con control de permisos** Implementación y ajuste de la recuperación híbrida con filtrado por permisos y por vigencia. 1. Comparar dos modelos de incrustación sobre las preguntas de referencia. 2. Implementar la recuperación híbrida con filtrado por metadatos. 3. Aplicar el filtrado por permisos de usuario y verificarlo. 4. Medir recuperación y precisión frente a la línea base. - *Stack:* Python, pgvector o Qdrant, BM25, modelo de incrustaciones - *Entregable:* Capa de recuperación medida y con control de permisos verificado. **Lecturas** - Lewis et al., Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks *Materiales:* `teoria/M9_S05_Asistente_corporativo_con_RAG_indexacion_y_recup.html` · `code/M9_S05_Asistente_corporativo_con_RAG_indexacion_y_recup.ipynb` --- ### Sesión 06 — Mejora de la respuesta: reordenación, citación y control de alucinación **Objetivos** - Elevar la calidad de la respuesta sin degradar la latencia. - Garantizar la citación verificable de las fuentes. - Reducir la respuesta no fundamentada en el contexto recuperado. **Contenidos** - **Reordenación y expansión** - Reordenadores de tipo cross-encoder y su coste - Reescritura y expansión de la consulta - Recuperación en varias pasadas para preguntas compuestas - Compresión del contexto y selección de fragmentos - **Citación verificable** - Atribución de cada afirmación a su fragmento de origen - Identificadores estables y enlace al documento - Presentación de la cita al usuario final - Verificación automática de la correspondencia cita-afirmación - **Control de la alucinación** - Instrucciones de fundamentación estricta en el contexto - Abstención cuando el contexto es insuficiente - Detección de afirmaciones no soportadas - Compromiso entre cobertura y fiabilidad **Práctica — Mejora medida de la calidad de respuesta** Incorporación de reordenación, citación verificable y control de fundamentación con medición del efecto. 1. Añadir reordenación y medir el efecto en calidad y latencia. 2. Implementar la citación por afirmación con identificadores estables. 3. Introducir la abstención por contexto insuficiente. 4. Medir tasa de afirmaciones no soportadas antes y después. - *Stack:* Python, reordenador cross-encoder, marco de orquestación - *Entregable:* Sistema mejorado con medición comparada de calidad, latencia y fundamentación. *Materiales:* `teoria/M9_S06_Mejora_de_la_respuesta_reordenacion_citacion_y_c.html` · `code/M9_S06_Mejora_de_la_respuesta_reordenacion_citacion_y_c.ipynb` --- ### Sesión 07 — Evaluación del sistema: conjuntos de prueba y métricas **Objetivos** - Construir un conjunto de evaluación representativo del caso sectorial. - Medir por separado recuperación, generación y sistema completo. - Automatizar la evaluación como parte de la integración continua. **Contenidos** - **Conjunto de evaluación** - Preguntas de referencia con respuesta y fuente esperadas - Cobertura de casos frecuentes, difíciles y fuera de alcance - Anotación por experto de dominio y acuerdo entre anotadores - Mantenimiento y ampliación del conjunto - **Métricas** - Recuperación: exhaustividad en k y precisión de las fuentes - Generación: fundamentación, pertinencia y completitud - Modelo como juez: diseño, calibración y sus límites - Latencia, coste y tasa de abstención - **Evaluación automatizada** - Ejecución de la batería en cada cambio relevante - Umbrales de regresión que bloquean la promoción - Comparación entre versiones de prompt y de modelo - Muestreo de producción para evaluación continua **Práctica — Batería de evaluación automatizada** Construcción del conjunto de evaluación y de la batería automatizada con umbrales de regresión. 1. Construir cien preguntas anotadas con fuente esperada. 2. Implementar las métricas de recuperación y de generación. 3. Calibrar el modelo como juez contra la anotación humana. 4. Integrar la batería en la integración continua con umbrales. - *Stack:* Python, Ragas o marco de evaluación equivalente, integración continua - *Entregable:* Batería de evaluación integrada con informe de la versión actual. **Lecturas** - Documentación del marco de evaluación de sistemas de recuperación aumentada utilizado *Materiales:* `teoria/M9_S07_Evaluacion_del_sistema_conjuntos_de_prueba_y_met.html` · `code/M9_S07_Evaluacion_del_sistema_conjuntos_de_prueba_y_met.ipynb` --- ### Sesión 08 — Despliegue del servicio: seguridad y observabilidad **Objetivos** - Desplegar la solución como servicio accesible y estable. - Aplicar los controles de seguridad exigidos por el Módulo 8. - Instrumentar la observabilidad y las alertas de operación. **Contenidos** - **Despliegue** - Empaquetado en contenedor y variables de entorno - Servicio de inferencia, colas y tiempos de espera - Entornos de preproducción y producción - Promoción, reversión y versionado del servicio - **Seguridad** - Autenticación, autorización y gestión de secretos - Controles frente a inyección de instrucciones y a fuga de datos - Límites de tasa y de gasto por usuario - Registro de accesos y conservación de trazas - **Observabilidad** - Trazas, métricas y registros correlacionados - Alertas por latencia, error, coste y caída de calidad - Panel de operación para el equipo responsable - Procedimiento ante incidente y comunicación **Práctica — Puesta en servicio con observabilidad y controles** Despliegue del asistente en un entorno accesible con seguridad, límites y panel de operación. 1. Empaquetar y desplegar el servicio en el entorno destino. 2. Configurar autenticación, límites de tasa y de gasto. 3. Instrumentar trazas, métricas y alertas. 4. Ejecutar una prueba de carga y una reversión controlada. - *Stack:* Docker, FastAPI, OpenTelemetry, plataforma de despliegue del máster - *Entregable:* Servicio desplegado con panel de operación y prueba de reversión. *Materiales:* `teoria/M9_S08_Despliegue_del_servicio_seguridad_y_observabilid.html` · `code/M9_S08_Despliegue_del_servicio_seguridad_y_observabilid.ipynb` --- ### Sesión 09 — Optimización del coste de inferencia y del rendimiento **Objetivos** - Descomponer y medir el coste real de inferencia del sistema. - Aplicar las palancas de reducción de coste sin perder calidad. - Decidir la configuración definitiva con criterio económico. **Contenidos** - **Medición del coste** - Coste por consulta desglosado por componente - Tokens de entrada, de salida y de razonamiento - Coste de incrustaciones, de reordenación y de almacenamiento - Proyección a volumen objetivo y a picos - **Palancas de reducción** - Caché de contexto y de respuestas frecuentes - Enrutamiento por dificultad hacia modelos de distinto tamaño - Reducción del contexto y compresión de fragmentos - Procesamiento por lotes y modelos abiertos autoalojados - **Decisión final** - Frontera entre calidad y coste sobre la batería de evaluación - Cuantización y destilación: cuándo compensan - Coste de operación y de supervisión humana - Configuración recomendada y su justificación **Práctica — Optimización con frontera de calidad y coste** Aplicación de al menos tres palancas de reducción de coste con medición del efecto sobre la calidad. 1. Desglosar el coste por consulta y por componente. 2. Aplicar caché, enrutamiento por dificultad y reducción de contexto. 3. Medir calidad y coste de cada configuración con la batería. 4. Elegir la configuración definitiva y justificarla. - *Stack:* Python, caché de contexto del proveedor, batería de evaluación propia - *Entregable:* Estudio de coste con frontera calidad-coste y configuración recomendada. **Lecturas** - Documentación de caché de contexto y de precios por token del proveedor utilizado *Materiales:* `teoria/M9_S09_Optimizacion_del_coste_de_inferencia_y_del_rendi.html` · `code/M9_S09_Optimizacion_del_coste_de_inferencia_y_del_rendi.ipynb` --- ### Sesión 10 — Casos sectoriales: adaptación de la solución al sector **Objetivos** - Identificar los requisitos específicos del sector del proyecto. - Adaptar la solución a las restricciones sectoriales. - Aprender de las soluciones de los demás sectores del laboratorio. **Contenidos** - **Salud y ciencias de la vida** - Datos de salud, secreto profesional y consentimiento - Producto sanitario y su interacción con el AI Act - Supervisión clínica y responsabilidad profesional - Terminologías normalizadas e interoperabilidad - **Finanzas y sector asegurador** - Decisiones sobre crédito y su régimen de alto riesgo - Explicabilidad exigible al cliente y al supervisor - Prevención del blanqueo y detección de fraude - Resiliencia operativa digital y proveedores críticos - **Industria, sector público y comercio** - Mantenimiento predictivo y control de calidad en planta - Servicios públicos: transparencia, recurso y no discriminación - Comercio: personalización, precios y protección del consumidor - Educación y empleo como áreas de alto riesgo **Práctica — Adaptación sectorial y comparación entre sectores** Ajuste de la solución a los requisitos del sector propio y análisis comparado con los proyectos de otros sectores. 1. Enumerar los requisitos específicos del sector del proyecto. 2. Implementar las adaptaciones necesarias en la solución. 3. Comparar con dos proyectos de sectores distintos. 4. Documentar las lecciones trasladables entre sectores. - *Stack:* Entorno del proyecto y documentación sectorial de referencia - *Entregable:* Informe de adaptación sectorial con comparación entre proyectos. *Materiales:* `teoria/M9_S10_Casos_sectoriales_adaptacion_de_la_solucion_al_s.html` · `code/M9_S10_Casos_sectoriales_adaptacion_de_la_solucion_al_s.ipynb` --- ### Sesión 11 — Taller integrador: endurecimiento de la solución y ensayo de la defensa **Objetivos** - Consolidar la solución completa y cerrar las carencias detectadas. - Preparar la presentación ante un comité con perfil mixto. - Someter la presentación a crítica estructurada antes de la defensa. **Contenidos** - **Endurecimiento** - Cierre de las carencias de evaluación, seguridad y coste - Documentación de operación y traspaso a un tercero - Prueba de reproducibilidad desde cero - Riesgos abiertos y su declaración explícita - **Construcción del mensaje** - Problema, solución, evidencia y decisión solicitada - Traducción de las métricas técnicas a impacto de negocio - Demostración en vivo: guion, tiempos y plan alternativo - Anticipación de las preguntas del comité - **Ensayo crítico** - Presentación completa ante los compañeros - Crítica estructurada por rúbrica - Corrección del mensaje y de los materiales - Prueba final de la demostración en el entorno real **Práctica — Ensayo general con crítica estructurada** Presentación completa ante el grupo con crítica por rúbrica y corrección posterior de materiales y demostración. 1. Cerrar las carencias pendientes de la solución. 2. Presentar la propuesta completa con demostración en vivo. 3. Recibir y registrar la crítica por rúbrica. 4. Corregir el mensaje, los materiales y la demostración. - *Stack:* Entorno del máster y materiales de presentación - *Entregable:* Solución endurecida y presentación corregida tras el ensayo. *Materiales:* `teoria/M9_S11_Taller_integrador_endurecimiento_de_la_solucion_.html` · `code/M9_S11_Taller_integrador_endurecimiento_de_la_solucion_.ipynb` --- ### Sesión 12 — Evaluación del módulo y defensa **Objetivos** - Presentar el proyecto sectorial ante el comité evaluador. - Justificar las decisiones técnicas, económicas y de cumplimiento. - Cerrar el laboratorio con la solución documentada y transferible. **Contenidos** - **Prueba práctica** - Diagnóstico de un fallo de recuperación sobre un sistema dado - Interpretación de un informe de evaluación de recuperación aumentada - Cálculo del coste por consulta de una configuración alternativa - Justificación de una decisión de arquitectura - **Defensa ante comité** - Presentación de doce minutos con demostración en vivo - Preguntas técnicas, económicas y de cumplimiento - Defensa de la decisión solicitada al comité - Criterios de la rúbrica - **Cierre** - Devolución individual y de equipo - Estado de la solución y trabajo pendiente declarado - Traspaso de la documentación de operación - Continuidad del proyecto hacia el trabajo fin de máster **Práctica — Prueba práctica y defensa del proyecto** Evaluación sumativa del laboratorio con presentación del proyecto ante el comité. 1. Resolver la prueba práctica. 2. Presentar el proyecto con demostración en vivo. 3. Responder a las preguntas del comité. 4. Recibir devolución y entregar la documentación final. - *Stack:* Entorno del máster - *Entregable:* Prueba resuelta, defensa realizada y documentación final entregada. *Materiales:* `teoria/M9_S12_Evaluacion_del_modulo_y_defensa.html` · `code/M9_S12_Evaluacion_del_modulo_y_defensa.ipynb` ---