Módulo 1: Modelos y Providers

Introducción: El Ecosistema LangChain Moderno

Descripción

LangChain es el framework más adoptado para construir aplicaciones con LLMs. Pero "LangChain" ya no es un solo paquete — es un ecosistema de herramientas que va desde conectar con un modelo hasta orquestar sistemas multi-agente en producción.

En esta cápsula vas a entender cómo encaja cada pieza del ecosistema, qué paquetes necesitas instalar, y cómo configurar tu entorno para trabajar con LangChain v1.2+. Al terminar, tendrás todo listo para empezar a escribir código en la siguiente cápsula.


¿Dónde estamos en la guía?

Este es el Módulo 1 de la guía LangChain & LangGraph: From Chains to Agents. Es el punto de partida: antes de crear agentes, tools, o workflows, necesitas dominar la pieza más fundamental — conectar con modelos de lenguaje y ejecutarlos.

La guía tiene 4 bloques progresivos:

Bloque 1: LangChain Core (Módulos 1-4)     ← ESTÁS AQUÍ
Bloque 2: LangGraph Fundamentals (Módulos 5-7)
Bloque 3: LangGraph Avanzado (Módulos 8-10)
Bloque 4: Producción (Módulos 11-12)

Todo lo que construyas en módulos posteriores — tools, agentes, workflows, multi-agente — depende de saber inicializar modelos, ejecutarlos, y obtener respuestas estructuradas. Este módulo te da esa base.


El ecosistema LangChain en 2026

LangChain ya no es un solo paquete monolítico. Desde la versión 1.0 (Octubre 2025), el ecosistema se reorganizó en componentes claros con responsabilidades definidas.

Los 3 niveles de abstracción

┌────────────────────────────────────────────────┐
│  Deep Agents                                   │
│  "Batteries-included"                          │
│  Planning, subagents, filesystem, memoria      │
│  → Para agentes autónomos de larga duración    │
├────────────────────────────────────────────────┤
│  LangChain (create_agent + Middleware)         │
│  "Alto nivel"                                  │
│  Agentes en <10 líneas, tools, middleware      │
│  → Para el 80% de casos de uso                 │
├────────────────────────────────────────────────┤
│  LangGraph (StateGraph + Functional API)       │
│  "Bajo nivel"                                  │
│  Grafos, nodos, edges, workflows custom        │
│  → Para control total del flujo de ejecución   │
└────────────────────────────────────────────────┘

LangSmith complementa como la plataforma de observabilidad: tracing, debugging y evaluación de todo lo que construyas con los niveles anteriores.

¿Cuándo usas cada nivel?

  • LangGraph (bajo nivel): Cuando necesitas control total sobre el flujo — decidir exactamente qué nodo ejecuta qué, cuándo hacer loops, cuándo pausar. Piensa en un director de orquesta que controla cada instrumento.
  • LangChain (alto nivel): Cuando quieres un agente funcional en pocas líneas. create_agent te da el 80% de lo que necesitas sin tocar grafos. Piensa en usar una app — funciona sin que entiendas los detalles internos.
  • Deep Agents (batteries-included): Cuando necesitas un agente que planifique sus propios pasos, cree archivos, y delegue a sub-agentes. Piensa en un empleado senior que recibe una tarea y la ejecuta de principio a fin.

No necesitas entender los 3 niveles ahora — los irás dominando módulo a módulo. Pero es útil saber que existen para tener el mapa mental completo.

¿Cómo se conectan entre sí?

Tu código
    │
    ▼
init_chat_model("openai:gpt-4.1")      ← Módulo 1: conectar con modelos
    │
    ▼
model.bind_tools([search, calc])         ← Módulo 2: agregar herramientas
    │
    ▼
create_agent(model, tools)               ← Módulo 3: crear agente autónomo
    │
    ▼
@wrap_model_call + middleware            ← Módulo 4: interceptar y personalizar
    │
    ▼
StateGraph / @entrypoint                 ← Módulos 5-7: workflows como grafos
    │
    ▼
Checkpointing + HITL + Multi-Agent      ← Módulos 8-10: producción avanzada
    │
    ▼
Deep Agents + LangSmith                 ← Módulos 11-12: autonomía y observability

Cada módulo construye sobre el anterior. Lo que aprendes aquí — inicializar modelos y ejecutarlos — es el cimiento de todo lo demás.


Arquitectura de paquetes

El ecosistema moderno se divide en paquetes con responsabilidades claras:

PaqueteQué contieneCuándo lo usas
langchain-coreInterfaces base (BaseChatModel, BaseMessage, Runnable)Siempre — es la dependencia de todo
langchaininit_chat_model, create_agent, middleware systemCuando creas agentes y aplicaciones
langchain-openaiChatOpenAI, OpenAIEmbeddingsSi usas modelos de OpenAI
langchain-anthropicChatAnthropicSi usas modelos de Anthropic
langchain-google-genaiChatGoogleGenerativeAISi usas modelos de Google
langchain-ollamaChatOllamaSi usas modelos locales con Ollama
langgraphStateGraph, Functional API, checkpointingCuando necesitas workflows como grafos
langsmithSDK para tracing y evaluaciónCuando monitoreas en producción

La idea clave: en vez de un paquete gigante que instala todo, solo instalas lo que necesitas. Si usas OpenAI y Anthropic, instalas langchain, langchain-openai y langchain-anthropic.

Analogía: Piensa en un sistema de bloques LEGO. langchain-core es la base plate sobre la que todo se monta. langchain son las piezas de construcción principales. Los paquetes de proveedores (langchain-openai, etc.) son kits temáticos que agregas según lo que quieras construir. No compras todos los kits — solo los que necesitas.


¿Por qué v1.2+ y no legacy?

Si buscas tutoriales de LangChain en internet, encontrarás mucho código que usa APIs que ya no se recomiendan:

API Legacy (pre-v1.0)API Moderna (v1.2+)
LLMChainmodel.invoke()
SequentialChainchain1 | chain2 (pipe)
AgentExecutorcreate_agent()
ConversationChainAgent + memoria
from langchain.llms import OpenAIinit_chat_model("openai:gpt-4.1")

Esta guía enseña exclusivamente las APIs modernas — las que usarás en producción y las que tienen soporte activo. En la Cápsula 07 incluimos un mapeo completo legacy → moderno para que puedas traducir cualquier tutorial antiguo.

¿Por qué importa? Si aprendes con APIs legacy, tendrás que reaprender cuando migres a producción. Si aprendes con APIs modernas desde el principio, tu código es production-ready desde el día uno. Además, las APIs modernas son más simples — init_chat_model("openai:gpt-4.1") reemplaza 5-10 líneas de imports y configuración manual.


Qué dominarás en este módulo

Al completar las 8 cápsulas de este módulo, serás capaz de:

  • ✅ Inicializar modelos de cualquier proveedor con init_chat_model
  • ✅ Configurar parámetros como temperature, max_tokens, timeout y retries
  • ✅ Ejecutar modelos con los 3 modos fundamentales: invoke, stream y batch
  • ✅ Obtener respuestas structured con Pydantic, TypedDict y JSON Schema
  • ✅ Procesar contenido multimodal (imágenes, audio, video)
  • ✅ Configurar modelos locales, caching y rate limiting para producción

Mapa del módulo

CápsulaTemaQué aprenderás
02init_chat_model y proveedoresInicializar modelos de OpenAI, Anthropic, Google y Ollama con una sola función
03Parámetros y configuracióntemperature, max_tokens, timeout, retries, modelos configurables en runtime
04Invoke, Stream y BatchLos 3 modos de ejecución: respuesta completa, tokens progresivos, procesamiento paralelo
05Structured OutputObtener respuestas tipadas (Pydantic, TypedDict, JSON Schema) en vez de texto libre
06Multimodal y ReasoningProcesar imágenes/audio/video, surfacing de pasos de razonamiento del modelo
07Modelos locales, caching y rate limitingOllama, prompt caching, InMemoryRateLimiter, mapeo API legacy → moderna
08Proyecto: Chat multi-proveedorSistema de chat con fallback automático entre proveedores, streaming y metadata

Flujo de aprendizaje: Primero aprenderás a conectar con modelos (02). Luego a configurarlos finamente (03). Después a ejecutarlos de 3 formas diferentes (04). Con eso dominado, avanzarás a obtener respuestas structured (05), procesar contenido multimodal (06), y optimizar para producción (07). Al final, integrarás todo en un mini-proyecto funcional (08).


Conexión con el proyecto

Mini-Proyecto de este módulo: Chat Multi-Proveedor con Fallback

En la Cápsula 08 construirás un sistema de chat que:

  1. Conecta con 3 proveedores (OpenAI, Anthropic, Google)
  2. Implementa fallback automático — si un proveedor falla, pasa al siguiente
  3. Muestra respuestas con streaming (tokens progresivos)
  4. Retorna metadata structured (qué proveedor respondió, latencia, tokens usados)

Cada concepto que aprendes en las cápsulas 02-07 se aplica directamente en este proyecto.

Conexión con la guía completa

Los modelos que configuras aquí son la base de todo lo que viene:

  • Módulo 2: Les agregarás tools (herramientas que el modelo puede invocar)
  • Módulo 3: Los convertirás en agentes autónomos con create_agent
  • Módulo 4: Interceptarás sus llamadas con el sistema de middleware
  • Módulos 5-12: Los orquestarás en workflows, grafos y sistemas multi-agente

Límites: qué NO cubre este módulo

  • Tools y tool calling — Se cubre en Módulo 2
  • Agentes (create_agent) — Se cubre en Módulo 3
  • RAG (Retrieval-Augmented Generation) — Se cubre en la guía Advanced RAG Techniques
  • Embeddings — Se usan en RAG; se mencionan brevemente pero no se profundizan
  • APIs deprecated (LLMChain, AgentExecutor) — Solo se incluye tabla de mapeo en Cápsula 07

Setup técnico

Prerequisitos

Antes de continuar, verifica que tienes:

  • Python 3.11+ instalado
  • pip o uv como gestor de paquetes
  • ✅ Al menos una API key de un proveedor LLM (OpenAI o Anthropic recomendado)
  • ✅ Un editor de código (VS Code, Cursor, PyCharm)
  • ✅ Familiaridad con terminal/CLI

Verificación rápida:

python --version
# Debe mostrar Python 3.11.x o superior

Instalación

# Crear entorno virtual
python -m venv langchain-env
source langchain-env/bin/activate  # Mac/Linux
# langchain-env\Scripts\activate   # Windows

# Instalar paquetes core
pip install langchain langchain-core

# Instalar proveedores (instala los que vayas a usar)
pip install langchain-openai       # Para OpenAI
pip install langchain-anthropic    # Para Anthropic
pip install langchain-google-genai # Para Google Gemini
pip install langchain-ollama       # Para modelos locales

# Utilidades
pip install python-dotenv          # Para manejar API keys
pip install pydantic               # Para Structured Output

Configurar API keys

Crea un archivo .env en la raíz de tu proyecto:

# .env
OPENAI_API_KEY=sk-proj-tu-key-aqui
ANTHROPIC_API_KEY=sk-ant-tu-key-aqui
GOOGLE_API_KEY=tu-key-aqui

Cárgalas en tu código:

from dotenv import load_dotenv
load_dotenv()

# Las API keys se cargan automáticamente como variables de entorno
# Los paquetes de LangChain las detectan sin configuración adicional

Nunca hardcodees API keys en tu código. Siempre usa .env + python-dotenv.

Agrega .env a tu .gitignore para que nunca se suba a un repositorio:

# .gitignore
.env
__pycache__/
langchain-env/

Verificar que todo funciona

from dotenv import load_dotenv
load_dotenv()

from langchain.chat_models import init_chat_model

model = init_chat_model("openai:gpt-4.1-mini")
response = model.invoke("Di 'hola' en una palabra")
print(response.content)
# Output esperado: Hola

Si ves la respuesta del modelo, tu setup está listo.

Si algo falla, los errores más comunes son:

ErrorCausaSolución
ModuleNotFoundError: No module named 'langchain'Paquete no instaladopip install langchain
AuthenticationErrorAPI key inválida o ausenteVerifica tu .env y que load_dotenv() se ejecute antes
ModuleNotFoundError: No module named 'langchain_openai'Paquete de proveedor faltantepip install langchain-openai
RateLimitErrorExcediste la cuota de tu API keyEspera o configura rate limiting (Cápsula 07)

Versiones y compatibilidad

Esta guía cubre LangChain v1.2+ y LangGraph v1.0+.

Versiones mínimas requeridas:

PaqueteVersión mínima
langchain0.3+
langchain-core0.3+
langchain-openai0.3+
langchain-anthropic0.3+
langgraph0.2+
Python3.11+

Para verificar tus versiones:

pip show langchain langchain-core langchain-openai

¿Por qué LangChain y no directamente las APIs?

Podrías usar directamente openai.chat.completions.create() o anthropic.messages.create(). Funcionan bien. Entonces, ¿por qué un framework?

Sin LangChain — cambiar de OpenAI a Anthropic requiere reescribir código:

# OpenAI directo
from openai import OpenAI
client = OpenAI()
response = client.chat.completions.create(
    model="gpt-4.1",
    messages=[{"role": "user", "content": "Hola"}]
)
print(response.choices[0].message.content)

# Anthropic directo — API diferente, estructura diferente
from anthropic import Anthropic
client = Anthropic()
response = client.messages.create(
    model="claude-sonnet-4-20250514",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Hola"}]
)
print(response.content[0].text)

Con LangChain — cambias una línea:

from langchain.chat_models import init_chat_model

# Cambiar proveedor = cambiar UN string
model = init_chat_model("openai:gpt-4.1")
# model = init_chat_model("anthropic:claude-sonnet-4-20250514")
# model = init_chat_model("google_genai:gemini-2.0-flash")

response = model.invoke("Hola")
print(response.content)

Misma interfaz, cualquier proveedor. Además, LangChain te da streaming, batch processing, structured output, tool calling, y middleware — todo con la misma API consistente. A medida que tus aplicaciones crecen, el framework te ahorra semanas de código repetitivo.


Evidencia de éxito

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

  • ✅ Puedes inicializar un modelo de cualquier proveedor con una sola línea
  • ✅ Entiendes la diferencia entre invoke, stream y batch y cuándo usar cada uno
  • ✅ Obtienes respuestas structured (Pydantic) en vez de parsear texto libre
  • ✅ Tu proyecto de chat multi-proveedor funciona con fallback automático
  • ✅ Puedes traducir código legacy de LangChain a APIs modernas

Resumen

  • LangChain en 2026 es un ecosistema de paquetes con 3 niveles de abstracción: LangGraph (bajo nivel), LangChain (alto nivel), y Deep Agents (batteries-included)
  • Solo instalas los paquetes que necesitas — no hay monolito
  • La ventaja principal del framework es la interfaz unificada: misma API para cualquier proveedor
  • Esta guía enseña exclusivamente APIs modernas (v1.2+), no legacy
  • Este módulo cubre la pieza más fundamental: conectar con modelos, ejecutarlos, y obtener respuestas structured
  • El mini-proyecto integra todo: chat multi-proveedor con fallback, streaming y metadata
  • Setup: Python 3.11+, paquetes instalados, API keys en .env
  • Todo lo que aprendes aquí es el cimiento de los 11 módulos siguientes

Recursos adicionales

  1. LangChain Python Documentation - Documentación oficial completa
  2. LangChain API Reference - Referencia de todas las clases y funciones
  3. LangGraph Documentation - Documentación oficial de LangGraph
  4. LangSmith Documentation - Plataforma de observabilidad
  5. LangChain Blog - Artículos técnicos y announcements del equipo
  6. LangChain GitHub - Código fuente y ejemplos


Módulo 1 — LangChain & LangGraph: From Chains to Agents

Siguiente cápsula: init_chat_model y proveedores — aprenderás a conectar con cualquier modelo de lenguaje con una sola función universal.