Que es LangGraph
LangGraph extiende LangChain para soportar agentes con ciclos y estado. LangChain chains son lineales (A→B→C). LangGraph soporta ciclos: un agente piensa, actua, observa el resultado, y decide si necesita actuar de nuevo o terminar.
Conceptos core
StateGraph: el grafo principal. Nodos: funciones que reciben y devuelven estado. Edges condicionales: deciden a que nodo ir basandose en el estado. Checkpointing: guarda estado automaticamente para pausar/reanudar.
Primer agente con tools
El patron más comun: un LLM que decide si usar herramientas o responder. ToolNode ejecuta tools automaticamente. tools_condition decide si ir a tools o terminar.
graph = StateGraph(State)
graph.add_node("agent", agent_node)
graph.add_node("tools", ToolNode(tools))
graph.add_edge(START, "agent")
graph.add_conditional_edges("agent", tools_condition)
graph.add_edge("tools", "agent")
app = graph.compile(checkpointer=MemorySaver())
Human-in-the-loop
interrupt() pausa el grafo para pedir aprobacion humana. Command(resume="si") reanuda con la decisión. Esencial para acciones criticas (enviar emails, modificar BD).
Patrones avanzados
Reflection: escribe → critica → reescribe → repite. Plan-and-Execute: un nodo planifica, otro ejecuta paso a paso. Multi-agente: Coordinator delega a Workers especializados via subgraphs.
Producción
SIEMPRE incluir max_iterations (circuit breaker), checkpointer persistente (SQLite/PostgreSQL), y observabilidad (Langfuse). Sin esto, un agente puede entrar en loop infinito.
Aprende más en IAcademy
Los 3 primeros módulos son gratis. Cubre desde prompting hasta agentes IA y deploy en producción.
Empieza gratisCurso completo: 151 módulos de IA aplicada
13 especializaciones. Claude API, LangChain, Ollama, fine-tuning. Dashboard con progreso. Desde 399 EUR.