Módulo 2: Vision + LLMs

1. Introducción: LLMs con Visión

Descripción

Esta es la primera cápsula del Módulo 2 de la Guía de IA Multimodal. En el Módulo 1 aprendiste el landscape completo: qué modalidades existen, qué modelos las soportan, y cómo clasificar inputs. Ahora vas a profundizar en la modalidad más madura y demandada en producción: visión.

Los LLMs con visión pueden recibir una imagen y un prompt, y devolver análisis textual: descripciones, texto extraído (OCR), clasificaciones, respuestas a preguntas sobre el contenido visual. Esto transforma flujos de trabajo que antes requerían pipelines de computer vision especializados en llamadas a una API.

Por qué importa: La visión es la modalidad multimodal con mayor adopción en producción. Tres proveedores dominan el espacio — OpenAI (GPT-4 Vision), Anthropic (Claude 3) y Google (Gemini) — y cada uno tiene fortalezas distintas. Dominar los tres te permite elegir el mejor para cada caso, diseñar fallbacks cuando uno falla, y negociar costos con criterio técnico.

Este módulo no es una lista de APIs. Es un framework para pensar en vision como herramienta de ingeniería: cuándo usarla, con qué proveedor, en qué formato, a qué costo, y con qué limitaciones. Al final construirás un Image Analyzer multi-provider que aplica todo esto en un sistema funcional con fallback automático.


¿Dónde Estamos en la Guía?

Contexto

Phase 1: Fundamentos Multimodales (Módulos 1-3)
├── Módulo 1: Introducción a IA Multimodal    ✅ COMPLETADO
├── Módulo 2: Vision + LLMs                   ← ESTÁS AQUÍ
└── 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
└── Módulo 8: Proyecto Final — Document Analyzer Multimodal

Conexión con el módulo anterior

En el Módulo 1 aprendiste a clasificar inputs por modalidad y sugerir el modelo óptimo. Ahora vas a implementar la rama de visión de ese clasificador: dado que el input es una imagen, ¿qué proveedor uso? ¿Cómo envío la imagen? ¿Qué prompt diseño? ¿Cómo manejo errores?

Tu Clasificador del Módulo 1 detectaba modalidades. Tu Image Analyzer del Módulo 2 ejecuta la modalidad de visión con los tres proveedores principales.


Roadmap del Módulo 2

#CápsulaQué aprenderásTipo
01Introducción (esta)Vision en LLMs, proveedores, casos de uso, setupIntro
02GPT-4 Vision (OpenAI)API de vision, formatos de imagen, prompts visualesTécnica
03Claude 3 Vision (Anthropic)API de Claude, diferencias con GPT-4V, media typesTécnica
04Gemini Vision (Google)API de Gemini, capacidades nativas, tier gratuitoTécnica
05Comparación de proveedoresBenchmark: costo, calidad, latencia, cuándo usar cada unoTécnica
06Patrones de análisisDescripción, OCR, clasificación, extracción estructuradaTécnica
07Multi-image y contextMúltiples imágenes en un prompt, contexto visualTécnica
08Proyecto: Image AnalyzerAnalizador multi-provider con fallback automáticoProyecto

Flujo de aprendizaje

Primero dominarás cada proveedor de forma individual (cápsulas 02-04): su API, sus formatos, sus particularidades. Después los compararás con métricas concretas (cápsula 05). Luego aprenderás patrones de análisis que aplican a cualquier proveedor (cápsula 06) y técnicas avanzadas con múltiples imágenes (cápsula 07). Finalmente integrarás todo en el Image Analyzer (cápsula 08).

La progresión es: proveedor individual → comparación → patrones → técnicas avanzadas → proyecto.

Duración estimada del módulo: 50 minutos.


Qué Aprenderás

Objetivos técnicos

Al terminar este módulo serás capaz de:

  • Enviar imágenes a GPT-4 Vision, Claude 3 y Gemini usando sus respectivas APIs con código Python funcional
  • Comparar proveedores con criterios medibles: costo por imagen, calidad de OCR, latencia de respuesta, formatos soportados
  • Aplicar patrones de análisis visual: descripción detallada, extracción de texto (OCR), clasificación de contenido, extracción de datos estructurados
  • Enviar múltiples imágenes en un solo request para análisis comparativo o contextual
  • Diseñar prompts para vision que controlen el nivel de detalle, el formato de respuesta y el enfoque del análisis
  • Implementar un Image Analyzer con fallback automático entre proveedores: si GPT-4V falla, intenta Claude 3; si Claude falla, intenta Gemini

Objetivo profesional

Cuando alguien te diga "necesitamos que el sistema analice fotos de productos para generar descripciones automáticas", tú sabrás: qué proveedor usar según el volumen y presupuesto, cómo enviar las imágenes (Base64 vs URL), qué prompt diseñar para obtener descripciones consistentes, y cómo implementar un fallback para que el sistema no se caiga si un proveedor tiene downtime.


Contexto: La Era de Vision en LLMs

De texto-only a visión

Durante 2020-2022, los LLMs eran exclusivamente textuales. GPT-3, ChatGPT original, Claude 1 — todos procesaban texto como input y generaban texto como output. Si necesitabas analizar una imagen, usabas pipelines separados: OpenCV para procesamiento, YOLO para detección de objetos, Tesseract para OCR. Cada uno requería setup específico, modelos distintos, y ninguno "entendía" el contexto semántico de la imagen.

2020-2022 (era texto-only):
  Analizar imagen de factura →
    1. Tesseract para OCR (extraer texto)
    2. Regex para parsear campos (fecha, total)
    3. LLM para clasificar el tipo de factura
  = 3 herramientas, 3 puntos de fallo, sin comprensión contextual

2023-2024 (era vision):
  Analizar imagen de factura →
    1. GPT-4 Vision: "Extrae fecha, total, proveedor de esta factura"
  = 1 llamada API, comprensión contextual completa

El punto de inflexión: 2023-2024

Tres eventos cambiaron el landscape:

  1. Septiembre 2023 — GPT-4 Vision: OpenAI añadió capacidad de visión a GPT-4. Por primera vez, un LLM de propósito general podía "ver" imágenes y razonar sobre ellas con la misma profundidad que razonaba sobre texto.

  2. Marzo 2024 — Claude 3: Anthropic lanzó Claude 3 (Haiku, Sonnet, Opus) con visión nativa. La competencia directa mejoró precios y calidad para todos.

  3. Diciembre 2023 — Gemini: Google lanzó Gemini con capacidades multimodales nativas desde el diseño. No era un módulo añadido — el modelo fue entrenado para entender imágenes desde el inicio.

Por qué esto importa para ingenieros

Antes de 2023, integrar visión en una aplicación significaba:

  • Mantener modelos de CV separados (YOLO, Tesseract, clasificadores custom)
  • Entrenar o fine-tunear para cada dominio
  • Manejar pipelines complejos con múltiples puntos de fallo

Después de 2023, integrar visión significa:

  • Una llamada API con imagen + prompt
  • Zero-shot: funciona sin entrenamiento específico para tu dominio
  • El mismo modelo que ya usas para texto también entiende imágenes

El cambio no es solo técnico — es económico. Un pipeline de CV custom costaba semanas de desarrollo y mantenimiento. Una integración con GPT-4 Vision se implementa en horas y el proveedor mantiene el modelo.

El estado actual

En 2025-2026, los tres proveedores principales han madurado:

AspectoGPT-4 VisionClaude 3Gemini
MadurezAltaAltaAlta
OCRExcelenteMuy buenoExcelente
Razonamiento visualExcelenteExcelenteMuy bueno
CostoMedio-altoMedioBajo (tier gratis)
Ventana de contexto128K tokens200K tokens1M+ tokens
Multi-imagenSí (nativo)

La competencia entre proveedores significa que los precios bajan, la calidad sube, y los formatos se estandarizan. Saber usar los tres te da flexibilidad para elegir según el caso.


Los Tres Proveedores

OpenAI — GPT-4 Vision

GPT-4 Vision (GPT-4V, GPT-4o) fue el primer LLM de propósito general con visión que alcanzó adopción masiva. Su fortaleza está en el razonamiento sobre contenido visual complejo: puede interpretar gráficos, leer texto en imágenes, describir escenas con detalle, y seguir instrucciones precisas sobre qué analizar.

Lo que trae:

  • Mejor ecosistema de herramientas y documentación
  • Dos niveles de detalle: low (rápido, barato) y high (preciso, caro)
  • Integración nativa con el resto del ecosistema OpenAI (Assistants, function calling)
  • El modelo más usado en producción para vision

Formato principal: Base64 o URL directa en el campo image_url del mensaje.

Anthropic — Claude 3 Vision

Claude 3 destaca en análisis detallado y seguimiento de instrucciones complejas. Donde GPT-4V puede ser conciso, Claude tiende a dar análisis más exhaustivos. Su ventana de contexto de 200K tokens permite enviar muchas imágenes en un solo request.

Lo que trae:

  • Análisis más detallado y estructurado por defecto
  • Mejor seguimiento de formatos de respuesta específicos (JSON, tablas)
  • Tres tiers: Haiku (rápido/barato), Sonnet (balance), Opus (máxima calidad)
  • Excelente para documentos con layouts complejos

Formato principal: Base64 con media_type explícito en el bloque image del contenido.

Google — Gemini Vision

Gemini fue diseñado como multimodal desde su arquitectura. No es un modelo de texto al que le añadieron visión — procesa texto e imágenes de forma nativa. Su ventaja principal es la ventana de contexto masiva (1M+ tokens) y un tier gratuito generoso.

Lo que trae:

  • Tier gratuito para experimentación (Gemini Flash)
  • Ventana de contexto de 1M+ tokens para análisis de muchas imágenes
  • Procesamiento nativo de imágenes (no como módulo añadido)
  • Buena relación calidad/precio en el tier de pago

Formato principal: Objetos Part con imágenes como inline_data o file_data.


Casos de Uso Reales

1. Análisis documental

El caso más demandado en producción. Empresas procesan miles de facturas, recibos, contratos y formularios diariamente. Un LLM con visión puede extraer campos estructurados (fecha, total, proveedor, líneas de detalle) de una imagen o scan sin necesidad de templates OCR específicos por tipo de documento.

Ejemplo real: Una fintech procesa 10,000 recibos/día. Antes: pipeline de Tesseract + regex con 78% de accuracy. Después: GPT-4 Vision con prompt estructurado y 95% de accuracy, sin mantenimiento de templates.

2. Descripción de productos (e-commerce)

Plataformas de e-commerce generan descripciones automáticas a partir de fotos de productos. El modelo ve la imagen, identifica el producto, sus características, colores, materiales, y genera una descripción optimizada para SEO.

Ejemplo real: Un marketplace con 50,000 productos nuevos/mes. Los vendedores suben fotos y el sistema genera título, descripción, categoría y tags automáticamente.

3. Accesibilidad

Los LLMs con visión pueden describir imágenes para personas con discapacidad visual. A diferencia de alt-text genérico, un LLM genera descripciones contextuales: no solo "una persona en un parque" sino "una mujer joven leyendo un libro en un banco de parque, con un perro golden retriever a sus pies, en un día soleado de otoño".

4. Control de calidad

Manufactura e inspección visual: el modelo analiza fotos de productos en línea de producción y detecta defectos, desalineamientos, o componentes faltantes. No reemplaza sistemas de CV industrial especializados, pero funciona como primer filtro o como solución para volúmenes bajos donde un sistema custom no se justifica.

5. Análisis médico básico

Los LLMs con visión pueden describir imágenes médicas (radiografías, fotos dermatológicas) como herramienta de pre-screening. No reemplazan diagnóstico profesional, pero pueden priorizar casos o generar reportes iniciales que un médico revisa.

Nota importante: Este caso de uso requiere consideraciones éticas y regulatorias que están fuera del alcance de esta guía. Lo mencionamos porque es real y creciente, no porque lo implementaremos.

6. Seguridad y vigilancia

Análisis de frames de cámaras de seguridad: detección de anomalías, identificación de objetos, descripción de escenas. Un LLM con visión puede responder "¿hay alguien en esta imagen?" o "describe qué está pasando en esta escena" sin necesidad de un modelo de detección de objetos entrenado específicamente.


Prerrequisitos

Lo que necesitas del Módulo 1

Este módulo asume que completaste el Módulo 1 y manejas:

  • Concepto de modalidades: Sabes qué es visión (imagen → texto) y cómo se diferencia de otras modalidades
  • Base64: Entiendes por qué las imágenes se codifican en Base64 para enviarlas por API y cómo hacerlo
  • API keys: Tienes configuradas tus keys de al menos OpenAI; idealmente también Anthropic y Google
  • Estimación de costos: Sabes que las llamadas con imágenes cuestan más que texto-only y cómo calcular el costo aproximado
  • Formatos de input: Conoces la diferencia entre enviar una imagen como Base64 vs URL

Si no completaste el Módulo 1

Puedes continuar si tienes experiencia previa con APIs de LLMs y Python. Los conceptos críticos que necesitas:

ConceptoPor qué lo necesitasDónde aprenderlo
Base64 encodingTodas las APIs de vision aceptan imágenes en Base64Módulo 1, Cápsula 06
API keys y .envVas a usar 3 proveedores distintosMódulo 1, Setup Técnico
Costos por tokenLas imágenes consumen muchos tokensMódulo 1, Cápsula 06
Prompt designLos prompts de vision tienen estructura específicaMódulo 1, Cápsulas 02-03

Setup Técnico

Dependencias

Este módulo requiere los SDKs de los tres proveedores principales:

pip install openai>=1.0.0 anthropic>=0.25.0 google-generativeai>=0.5.0 python-dotenv pillow
PaquetePara qué
openaiGPT-4 Vision API
anthropicClaude 3 Vision API
google-generativeaiGemini Vision API
python-dotenvCargar API keys desde .env
pillowManipulación de imágenes (resize, formato)

Variables de entorno

Crea o actualiza tu archivo .env con las tres API keys:

OPENAI_API_KEY=sk-...
ANTHROPIC_API_KEY=sk-ant-...
GOOGLE_API_KEY=AI...

Script de verificación

Ejecuta este script para confirmar que los tres proveedores están configurados y responden:

import os
import sys
from dotenv import load_dotenv

load_dotenv()

providers = {
    "OpenAI": os.getenv("OPENAI_API_KEY"),
    "Anthropic": os.getenv("ANTHROPIC_API_KEY"),
    "Google": os.getenv("GOOGLE_API_KEY"),
}

print("=" * 50)
print("Verificación de proveedores — Módulo 2")
print("=" * 50)

results = {}

for name, key in providers.items():
    if not key:
        print(f"\n❌ {name}: API key no encontrada en .env")
        results[name] = False
        continue

    try:
        if name == "OpenAI":
            from openai import OpenAI
            client = OpenAI()
            response = client.chat.completions.create(
                model="gpt-4o-mini",
                messages=[{"role": "user", "content": "Responde solo OK"}],
                max_tokens=5,
            )
            print(f"\n✅ {name}: {response.choices[0].message.content}")
            results[name] = True

        elif name == "Anthropic":
            import anthropic
            client = anthropic.Anthropic()
            response = client.messages.create(
                model="claude-3-haiku-20240307",
                max_tokens=5,
                messages=[{"role": "user", "content": "Responde solo OK"}],
            )
            print(f"\n✅ {name}: {response.content[0].text}")
            results[name] = True

        elif name == "Google":
            import google.generativeai as genai
            genai.configure(api_key=key)
            model = genai.GenerativeModel("gemini-1.5-flash")
            response = model.generate_content("Responde solo OK")
            print(f"\n✅ {name}: {response.text.strip()}")
            results[name] = True

    except Exception as e:
        print(f"\n❌ {name}: Error — {e}")
        results[name] = False

print("\n" + "=" * 50)
active = sum(1 for v in results.values() if v)
print(f"Resultado: {active}/3 proveedores activos")

if active == 0:
    print("⚠️  Necesitas al menos 1 proveedor para continuar.")
    sys.exit(1)
elif active < 3:
    print("⚠️  Puedes continuar, pero algunas cápsulas requieren los 3.")
else:
    print("✅ Setup completo. Listo para el Módulo 2.")

Output esperado (con los 3 proveedores):

==================================================
Verificación de proveedores — Módulo 2
==================================================

✅ OpenAI: OK

✅ Anthropic: OK

✅ Google: OK

==================================================
Resultado: 3/3 proveedores activos
✅ Setup completo. Listo para el Módulo 2.

Costos estimados para este módulo

ProveedorModeloCosto por imagen (~)Estimado módulo completo
OpenAIgpt-4o (high detail)$0.01-0.03$1.00-2.00
OpenAIgpt-4o-mini$0.002-0.005$0.20-0.50
Anthropicclaude-3-haiku$0.001-0.003$0.10-0.30
Anthropicclaude-3-sonnet$0.005-0.015$0.50-1.50
Googlegemini-1.5-flashGratis (tier free)$0.00
Googlegemini-1.5-pro$0.003-0.01$0.30-1.00

Estrategia de costos: Usa gpt-4o-mini y gemini-1.5-flash para desarrollo y experimentación. Reserva gpt-4o (high detail) y claude-3-sonnet para las comparaciones de calidad en la cápsula 05.

Estructura de archivos para el módulo

module_02/
├── 01_verify_setup.py          # Script de verificación (arriba)
├── 02_gpt4_vision.py           # Ejercicios GPT-4V
├── 03_claude_vision.py         # Ejercicios Claude 3
├── 04_gemini_vision.py         # Ejercicios Gemini
├── 05_comparison.py            # Benchmark comparativo
├── 06_analysis_patterns.py     # Patrones: OCR, descripción, etc.
├── 07_multi_image.py           # Multi-imagen
├── 08_image_analyzer.py        # Proyecto final del módulo
└── images/
    ├── test_photo.jpg          # Foto de prueba general
    ├── test_document.png       # Documento/factura de prueba
    └── test_product.jpg        # Producto para descripción

Límites: Qué NO Cubre Este Módulo

  • Fine-tuning de modelos de visión — Usamos modelos pre-entrenados vía API. No entrenamos ni fine-tuneamos modelos custom de vision.
  • Computer vision clásica — No cubrimos OpenCV, YOLO, ni técnicas de CV tradicional. El enfoque es LLMs con visión.
  • Análisis de video en profundidad — Mencionaremos extracción de frames, pero el análisis de video completo se cubre en módulos posteriores.
  • Modelos open-source de visión — Nos enfocamos en las tres APIs cloud principales. No deployamos LLaVA, Qwen-VL, ni otros modelos locales.
  • Generación de imágenes — Este módulo es sobre análisis de imágenes (imagen → texto). La generación (texto → imagen) se cubre en el Módulo 4.

Evidencia de Éxito

Al terminar este módulo, sabrás que tuviste éxito si:

  • ✅ Puedes enviar una imagen a GPT-4 Vision, Claude 3 y Gemini con código Python funcional
  • ✅ Dado un caso de uso ("necesito extraer texto de recibos"), eliges el proveedor óptimo y justificas por qué
  • ✅ Conoces las diferencias de formato entre los tres proveedores (cómo cada uno recibe imágenes)
  • ✅ Puedes aplicar al menos 3 patrones de análisis: descripción, OCR, clasificación
  • ✅ Sabes enviar múltiples imágenes en un solo request y diseñar prompts que las comparen
  • ✅ Tu Image Analyzer funciona: recibe una imagen, la analiza con un proveedor, y si falla, intenta el siguiente

Test rápido de autoevaluación

Si puedes responder estas preguntas, vas por buen camino:

  1. ¿Cuál es la diferencia en cómo OpenAI, Anthropic y Google reciben imágenes en su API?
  2. ¿En qué caso elegirías Claude 3 sobre GPT-4V para análisis de documentos?
  3. ¿Por qué Gemini es buena opción para prototipar y experimentar?
  4. ¿Qué significa "high detail" vs "low detail" en GPT-4 Vision y cómo afecta el costo?
  5. ¿Cómo implementarías un fallback si tu proveedor principal tiene un rate limit error?

Resumen

  • Los LLMs con visión transformaron el análisis de imágenes: de pipelines de CV complejos a una llamada API con imagen + prompt.
  • 2023-2024 fue el punto de inflexión: GPT-4 Vision, Claude 3 y Gemini llevaron vision a producción masiva.
  • Los tres proveedores principales tienen fortalezas distintas: OpenAI en ecosistema, Anthropic en análisis detallado, Google en costo y ventana de contexto.
  • Los casos de uso reales incluyen: análisis documental, e-commerce, accesibilidad, control de calidad, y más.
  • Este módulo cubre las APIs de los tres proveedores, patrones de análisis, multi-imagen, y culmina en un Image Analyzer multi-provider con fallback.
  • Necesitas los tres SDKs instalados (openai, anthropic, google-generativeai) y las API keys configuradas.

Recursos Adicionales

  1. OpenAI Vision Guide — Documentación oficial de GPT-4 Vision
  2. Anthropic Vision Docs — Claude 3 con imágenes
  3. Google Gemini Vision — Gemini multimodal y vision
  4. OpenAI Pricing — Precios actualizados de GPT-4V
  5. Anthropic Pricing — Precios de Claude 3 por tier
  6. Google AI Pricing — Tiers gratuitos y de pago de Gemini