HACK A BOSS
FormaciónEvaluacionesPerfil
Volver
  • En directo

LangChain Avanzado

8h de clase en directo·HACK A BOSS·Español

Skills que aprenderás

  • LangChain

Convocatorias

Necesitas un plan activo

Para acceder a los cursos en directo necesitas un plan activo. Estamos trabajando para que los planes estén disponibles pronto — ¡mantente atento!

No hay convocatorias abiertas ahora mismo, pero no te pierdas la oportunidad: guarda este curso y te avisamos en cuanto se abra una convocatoria.

Descripción

Objetivos

Temario

Requisitos técnicos

Conocimientos previos

Detalles de la convocatoria

Recursos

No hay recursos disponibles todavía para esta convocatoria

Curso de nivel avanzado orientado a desarrolladores que construyen aplicaciones RAG y agentes con LangChain en entorno de desarrollo y necesitan llevarlas a producción con arquitecturas más complejas, resilientes y observables. El punto de partida es el dominio del diseño de agentes con herramientas, la trazabilidad con LangSmith y la organización de proyectos LangChain; el objetivo es dominar los patrones avanzados que habilitan sistemas en producción: grafos de agentes stateful con LangGraph, optimización de pipelines RAG con técnicas de reranking y búsqueda híbrida, streaming y procesamiento asíncrono para reducir la latencia percibida, arquitecturas multi-agente con coordinación y manejo de fallos, evaluación continua con datasets personalizados y alertas de regresión, y despliegue como API REST con FastAPI. Al finalizar, el participante será capaz de diseñar, optimizar y desplegar sistemas LangChain en producción con criterio técnico y capacidad de diagnóstico ante fallos reales.

Al finalizar el curso, el participante será capaz de:

  • Diseñar un grafo de agentes stateful con LangGraph implementando ciclos, routing condicional y gestión de estado entre nodos, verificando cada rama con pruebas diferenciadas
  • Optimizar un pipeline RAG aplicando técnicas de reranking, búsqueda híbrida o HyDE para mejorar la calidad del retrieval sobre el baseline, documentando métricas comparativas antes y después
  • Implementar streaming de respuestas y procesamiento asíncrono con .astream() y endpoints async en FastAPI, midiendo la reducción de latencia percibida con métricas de tiempo hasta el primer token
  • Arquitecturar un sistema multi-agente con LangGraph donde agentes especializados colaboran bajo coordinación de un orquestador, con protocolo de manejo de fallos entre agentes
  • Diseñar una estrategia de evaluación continua con LangSmith incluyendo datasets representativos, evaluadores personalizados para el dominio y alertas de regresión configuradas
  • Desplegar una aplicación LangChain como API REST con FastAPI, soporte de streaming, gestión de estado de sesión persistente en almacén externo y configuración externalizada
  1. LangGraph y grafos de agentes stateful StateGraph como modelo de control: diferencias con LCEL y AgentExecutor; definición del estado compartido con TypedDict y reductores para escrituras concurrentes; nodos como funciones que leen y transforman el estado; add_conditional_edges y funciones de routing que inspeccionan el estado para decidir el siguiente nodo; implementación de ciclos: condición de terminación, guards contra loops infinitos; herramientas y subgrafos como nodos; compilación del grafo con .compile() y ejecución con .invoke() y .astream(); pruebas por rama: inyección de estado inicial para forzar cada path del routing condicional

  2. Optimización avanzada de RAG Diagnóstico del pipeline RAG con métricas RAGAS: context precision, faithfulness, context recall; reranking con cross-encoder: diferencia con bi-encoder, integración con ContextualCompressionRetriever y FlashrankRerank o CohereRerank; búsqueda híbrida: combinación de recuperación densa (embeddings) y dispersa (BM25) con EnsembleRetriever; HyDE (Hypothetical Document Embeddings): generación de documento hipotético para mejorar la query de búsqueda; metodología de optimización iterativa: medir baseline, aplicar una técnica, medir impacto, documentar trade-off con latencia; cuándo cada técnica aporta mayor beneficio según el perfil de métricas

  3. Streaming y procesamiento asíncrono Modelo de generación token a token: por qué reduce la latencia percibida sin reducir el tiempo total de generación; .stream() vs .astream() vs astream_events(): cuándo usar cada uno; integración con FastAPI: StreamingResponse con generador async; errores frecuentes de implementación async: llamada síncrona bloqueante dentro de endpoint async def; métricas de validación: tiempo hasta primer token (TTFT) y tiempo total de generación; manejo de errores en mitad del stream: cleanup y respuesta parcial

  4. Sistemas multi-agente con LangGraph Topologías multi-agente: supervisor centralizado vs red peer-to-peer; nodo orquestador con routing condicional basado en el estado; agentes especializados como subgrafos o nodos; protocolo de fallo diferenciado: reintentar con query alternativa, continuar con resultado parcial, escalar a revisión humana; gestión del estado compartido entre agentes: reductores y campos de errores; comunicación entre agentes: handoffs explícitos vs escritura en estado compartido; patrones de coordinación: fan-out con agregación, pipeline secuencial, ciclo de refinamiento

  5. Evaluación continua con LangSmith Datasets de evaluación en LangSmith: construcción del dataset inicial con casos representativos y casos límite, enriquecimiento continuo con traces de producción; tipos de evaluadores: exactitud de string, LLM-as-judge genérico, evaluador personalizado con criterios de dominio; implementación de evaluador personalizado: función Python que recibe output y ejemplo esperado y devuelve una puntuación; ejecución de benchmarks con comparación de versiones: evaluate() con experiment_prefix; umbral de alerta y protocolo de regresión; diferencia entre evaluación pre-despliegue y monitorización de producción continua

  6. Despliegue como API REST con FastAPI Estructura de una aplicación LangChain en producción: separación entre lógica de chain, capa de API y gestión de sesiones; endpoints necesarios: chat con streaming, health check; persistencia del historial de conversación: RedisChatMessageHistory y SQLChatMessageHistory con session_id por usuario; gestión de secretos y configuración: variables de entorno con python-dotenv en desarrollo, secretos de Docker o Kubernetes en producción; Dockerfile para aplicación FastAPI + LangChain; verificación del despliegue: prueba del endpoint de streaming con cliente HTTP y del estado persistente entre sesiones

  • Python 3.10+ instalado con pip
  • pip con acceso a instalar: langchain, langchain-openai (o langchain-anthropic), langgraph, langchain-community, fastapi, uvicorn, redis o sqlalchemy, ragas, python-dotenv
  • Cuenta activa con acceso a la API de un proveedor LLM (OpenAI, Anthropic u otro indicado por el docente) — cuenta de pago recomendada para los ejercicios de optimización de coste
  • Cuenta gratuita en LangSmith (smith.langchain.com) con clave de API activa
  • Docker Desktop instalado para el bloque de despliegue
  • Editor de código (VS Code recomendado) y terminal

→ LCH02 — LangChain Intermedio: RAG y Agentes (Intermedio, 8h)

  • Diseñar cadenas modulares con LCEL usando RunnableParallel, RunnablePassthrough y RunnableLambda para flujos multi-etapa
  • Construir aplicaciones RAG funcionales con grounding explícito que recuperen contexto relevante y eviten alucinaciones
  • Implementar memoria conversacional con RunnableWithMessageHistory para mantener el contexto en interacciones multi-turno
  • Desarrollar agentes con herramientas personalizadas usando @tool y AgentExecutor, argumentando cuándo un agente es preferible a una cadena fija
  • Evaluar la calidad de un flujo LangChain diagnosticando fallos e iterando sobre prompt, retriever o estructura de cadena
  • Instrumentar trazabilidad con LangSmith para obtener trazas de ejecución completas e identificar cuellos de botella en producción
  • Organizar un proyecto LangChain con separación de responsabilidades entre configuración, lógica de cadena, acceso a datos y capa de presentación