Módulo 7: Casos de Uso
1. Introducción: Casos de Uso
Descripción
Esta es la primera cápsula del Módulo 7 de la Guía de IA Multimodal. Aquí vas a entender cómo las piezas individuales que aprendiste en los módulos anteriores — vision, documentos, generación de imágenes, audio, y RAG — se combinan en patrones de diseño que resuelven problemas reales. No se trata de aprender APIs nuevas, sino de aplicar lo que ya sabes en arquitecturas que funcionan en producción.
Por qué importa: Los módulos 1-6 te dieron herramientas individuales: enviar una imagen a GPT-4o, transcribir audio con Whisper, indexar documentos con embeddings. Pero en el mundo real, nadie usa una sola herramienta. Un sistema de análisis documental combina extracción de texto, visión para diagramas, RAG para búsqueda, y generación para respuestas. Un asistente de reuniones combina transcripción de audio, análisis de presentaciones, y resumen textual. Este módulo te enseña a diseñar esas combinaciones de forma sistemática, no improvisada.
Conexión con el proyecto final: El proyecto de este módulo — Use Case Selector — es el "cerebro" del Document Analyzer que construirás en el Módulo 8. Recibe un input (PDF, imagen, audio), detecta su tipo, y aplica el pipeline correcto. Es la pieza de routing que conecta todas las capacidades multimodales en un solo sistema.
¿Dónde Estamos en la Guía?
Contexto
Esta guía tiene 8 módulos organizados en 3 fases:
Phase 1: Fundamentos Multimodales (Módulos 1-3)
├── Módulo 1: Introducción a IA Multimodal
├── Módulo 2: Vision + LLMs
└── Módulo 3: Comprensión de Documentos
Phase 2: Generación y Audio (Módulos 4-5)
├── Módulo 4: Generación de Imágenes
└── Módulo 5: Procesamiento de Audio
Phase 3: RAG, Casos de Uso y Proyecto (Módulos 6-8)
├── Módulo 6: RAG Multimodal
├── Módulo 7: Casos de Uso ← ESTÁS AQUÍ
└── Módulo 8: Proyecto Final — Document Analyzer Multimodal
Duración total estimada: 6-7 horas (self-paced).
¿Hacia dónde vamos?
Los módulos anteriores te dieron las piezas:
- Módulo 1 — Entendiste el landscape: qué modelos existen, qué modalidades soportan, cómo enviar datos
- Módulo 2 — Dominaste vision: análisis de imágenes con GPT-4o, Claude 3, Gemini
- Módulo 3 — Procesaste documentos: PDFs, OCR, extracción estructurada
- Módulo 4 — Generaste imágenes: DALL-E 3, variaciones, edición
- Módulo 5 — Procesaste audio: Whisper, TTS, pipelines de voz
- Módulo 6 — Construiste RAG multimodal: embeddings, indexación, retrieval sobre texto + imágenes
Ahora, en el Módulo 7, tomas todo eso y lo aplicas en 4 patrones de diseño que cubren el 90% de los casos de uso reales:
- Document Q&A — Preguntas y respuestas sobre documentos
- Image Analysis Automatizado — Clasificación y análisis en batch
- Video Analysis via Frames — Análisis de video extrayendo frames
- Combinaciones Multi-Modalidad — Pipelines que mezclan texto, imagen y audio
Además, aprenderás patrones de producción (caching, batching, costos) y troubleshooting específico para estos casos de uso.
El Módulo 8 toma el Use Case Selector que construyes aquí y lo integra en el Document Analyzer completo.
De Piezas a Patrones
El problema
Conocer APIs individuales no es suficiente. Saber llamar a GPT-4o con una imagen, o transcribir audio con Whisper, son habilidades atómicas. El desafío real es combinarlas en flujos coherentes que resuelvan problemas de negocio:
Problema: "Quiero que mis usuarios puedan hacer preguntas sobre PDFs"
Piezas necesarias:
├── Extracción de texto (Módulo 3)
├── Extracción de imágenes (Módulo 3)
├── Chunking y embeddings (Módulo 6)
├── Retrieval por similitud (Módulo 6)
├── Generación de respuesta (Módulo 1-2)
└── Citación de fuentes (nuevo en este módulo)
Patrón: Document Q&A
Pipeline: Documento → Extraer → Indexar → Query → Retrieval → LLM → Respuesta con fuentes
La solución: patrones de diseño
Un patrón de diseño en IA multimodal es una secuencia probada de pasos que transforma un input en un output útil. No es inventar cada vez, sino reutilizar arquitecturas que funcionan.
Así como en software hay patrones como MVC, Observer, o Strategy, en IA multimodal hay patrones como:
| Patrón | Input | Pipeline | Output | Módulos usados |
|---|---|---|---|---|
| Document Q&A | PDF + pregunta | Extraer → RAG → LLM | Respuesta con fuentes | M3, M6, M1 |
| Image Analysis | Imagen(es) | Vision → clasificación/extracción | Datos estructurados | M2, M1 |
| Video Analysis | Video | Frames → Vision → LLM | Análisis temporal | M2, M1 |
| Multi-Modal | Texto + imagen + audio | Combinar pipelines | Respuesta integrada | M1-M6 |
| Production | Cualquier input | Caching + batching + retry | Resultado optimizado | Transversal |
Cada patrón tiene su cápsula dedicada en este módulo, con implementación completa, troubleshooting, y ejercicios.
Objetivos del Módulo
Al terminar este módulo vas a poder:
Habilidades técnicas
- Construir un pipeline Document Q&A — Cargar documento, extraer contenido, indexar, recuperar chunks relevantes, generar respuesta con fuentes citadas
- Automatizar análisis de imágenes en batch — Clasificar, extraer datos, y procesar catálogos de imágenes usando Vision APIs
- Analizar video via frames — Extraer frames clave, enviarlos a Vision, combinar análisis en resumen temporal
- Diseñar pipelines multi-modales — Combinar texto + imagen + audio en flujos coherentes (reuniones, documentos, contenido)
- Aplicar patrones de producción — Caching, batching, rate limit management, optimización de costos
- Diagnosticar problemas en pipelines — Identificar y resolver errores comunes en cada tipo de caso de uso
Habilidades de diseño
- Elegir el patrón correcto — Dado un problema de negocio, seleccionar el patrón de diseño apropiado
- Construir un router de pipelines — El Use Case Selector que detecta tipo de input y aplica el pipeline correspondiente
Nivel de profundidad
Este módulo no repite lo que ya viste. Asume que sabes:
- Enviar imágenes a Vision APIs (M2)
- Extraer texto de PDFs (M3)
- Generar imágenes con DALL-E (M4)
- Transcribir audio con Whisper (M5)
- Construir índices con embeddings (M6)
Lo nuevo aquí es cómo combinar esas piezas en sistemas que funcionan end-to-end.
Roadmap del Módulo 7
| # | Cápsula | Tipo | Qué vas a construir | Duración |
|---|---|---|---|---|
| 01 | Introducción (esta) | Contexto | Mapa del módulo, objetivos | 5 min |
| 02 | Document Q&A | Técnica | Pipeline completo de Q&A con fuentes | 8 min |
| 03 | Image Analysis Automatizado | Técnica | Clasificación y análisis en batch | 8 min |
| 04 | Video: Frames + LLM | Técnica | Extracción de frames y análisis | 8 min |
| 05 | Combinaciones Multi-Modalidad | Técnica | Pipelines texto + imagen + audio | 8 min |
| 06 | Patrones de Producción | Técnica | Caching, batching, costos | 8 min |
| 07 | Troubleshooting Casos de Uso | Técnica | Diagnóstico y resolución | 6 min |
| 08 | Proyecto: Use Case Selector | Proyecto | Router de pipelines | 12 min |
Duración total estimada: 60-65 min
Flujo recomendado
Cápsulas 02-04: Patrones individuales (Document Q&A, Image, Video)
↓
Cápsula 05: Combinaciones (integrar los patrones anteriores)
↓
Cápsula 06: Producción (hacer los pipelines robustos)
↓
Cápsula 07: Troubleshooting (resolver problemas)
↓
Cápsula 08: Proyecto (Use Case Selector que los une todos)
Casos de Uso del Mundo Real
Para motivar lo que viene, estos son ejemplos concretos de cada patrón en producción:
Document Q&A
Escenario: Una plataforma legal permite a abogados hacer preguntas sobre contratos de 200 páginas.
- Input: PDF del contrato + pregunta "¿Cuál es la cláusula de penalización?"
- Pipeline: Extraer → Chunkear → Indexar → Buscar chunks relevantes → LLM genera respuesta citando páginas
- Output: "La cláusula de penalización está en la sección 12.3 (página 45)..." + chunks fuente
Image Analysis Automatizado
Escenario: Un e-commerce recibe 500 fotos de productos al día y necesita clasificarlas y extraer atributos.
- Input: Batch de 500 imágenes
- Pipeline: Por cada imagen → Vision API → Clasificar categoría + extraer color/tamaño/material
- Output: CSV con categoría, color, tamaño, material para cada producto
Video Analysis
Escenario: Una plataforma educativa analiza videos de clases para generar resúmenes y detectar momentos clave.
- Input: Video de 45 minutos
- Pipeline: Extraer frame cada 30 segundos → Vision describe cada frame → LLM identifica temas y transiciones → Resumen
- Output: "0:00-5:00: Introducción al tema X, 5:00-15:00: Demostración de Y..."
Combinaciones Multi-Modalidad
Escenario: Un sistema de meeting notes toma la grabación de una reunión + las diapositivas presentadas.
- Input: Audio de la reunión + PDF de la presentación
- Pipeline: Transcribir audio → Extraer texto e imágenes del PDF → Combinar contextos → LLM genera acta
- Output: Acta de reunión que conecta lo discutido con las diapositivas mostradas
Prerrequisitos
Conocimientos necesarios (de módulos anteriores)
| Módulo | Concepto clave | Por qué lo necesitas aquí |
|---|---|---|
| M1 | APIs multimodales, formatos | Base para todas las llamadas |
| M2 | Vision: GPT-4o, Claude 3 | Image analysis y video frames |
| M3 | Extracción de documentos | Document Q&A pipeline |
| M4 | DALL-E 3, generación | Combinaciones multi-modales |
| M5 | Whisper, TTS | Audio en pipelines |
| M6 | Embeddings, ChromaDB, RAG | Retrieval en Document Q&A |
Herramientas
openai >= 1.0 # API calls (GPT-4o, Whisper, DALL-E, TTS, embeddings)
anthropic >= 0.20 # Claude 3 (opcional, para fallback)
pymupdf >= 1.24 # Extracción de PDFs
chromadb >= 0.4 # Vector store para RAG
opencv-python >= 4.8 # Extracción de frames de video
Pillow >= 10.0 # Procesamiento de imágenes
Setup rápido
pip install openai anthropic pymupdf chromadb opencv-python Pillow
import os
from openai import OpenAI
client = OpenAI()
assert os.environ.get("OPENAI_API_KEY"), "Configura OPENAI_API_KEY"
print("Setup OK — listo para Módulo 7")
Qué NO Cubre Este Módulo
Para mantener el foco, este módulo no incluye:
| Tema | Dónde verlo |
|---|---|
| Fundamentos de cada API | Módulos 1-5 |
| Construcción de índices RAG desde cero | Módulo 6 |
| Deployment a producción (Docker, cloud) | Fuera del alcance de esta guía |
| Fine-tuning de modelos | Fuera del alcance de esta guía |
| Streaming de respuestas | Módulo 8 lo usa, pero no lo explica en detalle |
| Interfaces de usuario (frontends) | Fuera del alcance de esta guía |
Este módulo asume que ya sabes usar las APIs individuales y se enfoca en cómo combinarlas en sistemas funcionales.
Auto-Evaluación
Antes de empezar, verifica que puedes responder estas preguntas. Si alguna no te queda clara, revisa el módulo indicado:
Nivel 1: Conceptos (deberías responder sin código)
- ¿Qué es RAG y por qué es útil para Document Q&A? → M6
- ¿Qué modelos soportan input de imágenes y texto simultáneo? → M1, M2
- ¿Qué hace Whisper y en qué formato devuelve resultados? → M5
- ¿Qué es un embedding y para qué sirve? → M6
- ¿Cuál es la diferencia entre
gpt-4oygpt-4o-minien términos de costo y capacidad? → M1
Nivel 2: Código (deberías poder escribirlo)
- Enviar una imagen + pregunta a GPT-4o y obtener respuesta → M2
- Extraer texto de un PDF con PyMuPDF → M3
- Transcribir un archivo de audio con Whisper → M5
- Crear embeddings y buscar por similitud con ChromaDB → M6
- Generar una imagen con DALL-E 3 desde un prompt → M4
Nivel 3: Diseño (lo que aprenderás aquí)
- Diseñar un pipeline que combine extracción + RAG + generación — cápsula 02
- Procesar 100 imágenes en batch con retry y rate limits — cápsula 03
- Extraer frames de un video y analizarlos — cápsula 04
- Combinar audio + documento en un solo flujo — cápsula 05
- Implementar caching y optimización de costos — cápsula 06
Si las preguntas 1-10 te parecen claras, estás listo. Si no, revisa los módulos indicados antes de continuar.
Convenciones de Este Módulo
Código
- Todo el código es Python 3.10+
- Se usa
openai >= 1.0(nueva API conclient.chat.completions.create) - Los bloques de código son completos y ejecutables — no fragmentos sueltos
- Cada cápsula técnica incluye al menos una implementación completa que puedes copiar y adaptar
Estructura de cada cápsula técnica
1. Descripción y contexto
2. Pipeline visual (diagrama ASCII)
3. Implementación paso a paso
4. Implementación completa
5. Variaciones y extensiones
6. Troubleshooting (errores comunes)
7. Ejercicios (3-4 por cápsula)
8. Recursos adicionales
Estructura de la cápsula proyecto
1. Descripción y especificaciones
2. Implementación por pasos (6 pasos)
3. Extensiones opcionales
4. Troubleshooting
5. Checklist de completitud
6. Ejercicios de extensión
Arquitectura General del Módulo
Este diagrama muestra cómo se conectan las cápsulas entre sí y con el proyecto final:
┌─────────────────┐
│ 02: Document │
│ Q&A │───────────┐
└─────────────────┘ │
┌─────────────────┐ │
│ 03: Image │ │
│ Analysis │───────────┤
└─────────────────┘ │
┌─────────────────┐ ▼
│ 04: Video │ ┌──────────────┐
│ Frames + LLM │───▶│ 08: Proyecto │
└─────────────────┘ │ Use Case │
┌─────────────────┐ │ Selector │
│ 05: Multi- │───▶│ │
│ Modalidad │ └──────────────┘
└─────────────────┘ ▲
┌─────────────────┐ │
│ 06: Patrones │───────────┤
│ Producción │ │
└─────────────────┘ │
┌─────────────────┐ │
│ 07: Trouble- │───────────┘
│ shooting │
└─────────────────┘
Cada cápsula técnica (02-05) define un patrón de diseño. La cápsula 06 agrega robustez. La 07 resuelve problemas. La 08 integra todo en un router.
Setup Técnico
Antes de empezar las cápsulas técnicas, verifica que tu entorno está listo:
import os
from openai import OpenAI
client = OpenAI()
assert os.environ.get("OPENAI_API_KEY"), "Falta OPENAI_API_KEY"
response = client.chat.completions.create(
model="gpt-4o-mini",
messages=[{"role": "user", "content": "Responde OK si recibes esto."}],
max_tokens=10
)
print(f"LLM: {response.choices[0].message.content}")
emb = client.embeddings.create(
model="text-embedding-3-small",
input=["test"]
)
print(f"Embeddings: {len(emb.data[0].embedding)} dimensiones")
try:
import fitz
print(f"PyMuPDF: {fitz.version}")
except ImportError:
print("FALTA: pip install pymupdf")
try:
import chromadb
print(f"ChromaDB: OK")
except ImportError:
print("FALTA: pip install chromadb")
try:
import cv2
print(f"OpenCV: {cv2.__version__}")
except ImportError:
print("FALTA: pip install opencv-python")
try:
from PIL import Image
print(f"Pillow: OK")
except ImportError:
print("FALTA: pip install Pillow")
print("\nSetup completo — listo para Módulo 7")
Si todo imprime sin errores, estás listo. Si falta alguna dependencia, instálala antes de continuar.
Evidencia de Éxito
Al terminar este módulo, sabrás que tuviste éxito si:
- ✅ Puedes diseñar un pipeline de Document Q&A que combine extracción (M3), RAG (M6), y generación con LLM
- ✅ Puedes procesar un batch de 100 imágenes con retry, rate limiting y tracking de progreso
- ✅ Puedes extraer frames de un video, analizarlos con Vision API, y generar un resumen
- ✅ Sabes combinar múltiples modalidades (audio + documento + imagen) en un solo flujo
- ✅ Implementas patrones de producción: caching, circuit breaker, cost tracking, fallbacks
- ✅ Tu Use Case Selector funciona: recibe un input, detecta su tipo, y aplica el pipeline correcto
Resumen
- Casos de uso es el módulo que aplica todo lo aprendido en M1-M6 a patrones de diseño para problemas reales.
- Los 4 patrones principales son: Document Q&A (extracción + RAG + generación), Image Analysis Automatizado (batch + retry + clasificación), Video Frames (extracción + análisis temporal), y Combinaciones Multi-Modalidad (audio + documento + imagen en un solo flujo).
- Los patrones de producción incluyen: caching multi-nivel, rate limiting con token bucket, circuit breaker, cost tracking granular, y fallback multi-proveedor.
- El proyecto del módulo es un Use Case Selector que detecta el tipo de input y enruta al pipeline correcto — es el "cerebro" del Document Analyzer del Módulo 8.
Glosario Rápido
| Término | Definición |
|---|---|
| Pipeline | Secuencia de pasos que transforma un input en un output |
| Routing | Decidir qué pipeline aplicar según el tipo de input |
| Batch | Procesar múltiples items en una sola operación |
| Rate limit | Límite de llamadas a una API por unidad de tiempo |
| Fallback | Alternativa cuando el método principal falla |
| Circuit breaker | Patrón que detiene llamadas a un servicio que está fallando repetidamente |
| TTL | Time To Live — cuánto tiempo un cache es válido |
| Embedding | Representación numérica de texto para búsqueda por similitud |
| Retrieval | Recuperar información relevante de un índice |
| RAG | Retrieval-Augmented Generation — combinar búsqueda con generación |
Recursos Adicionales
- OpenAI Best Practices — Guías oficiales de uso
- Anthropic Production Patterns — Patrones de producción con Claude
- LangChain Use Cases — Implementaciones de referencia
- ChromaDB Documentation — Vector store para RAG
- OpenCV Documentation — Procesamiento de video