Agentes IA con LangGraph: guía práctica

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 automáticamente para pausar/reanudar.

Primer agente con tools

El patrón más común: un LLM que decide si usar herramientas o responder. ToolNode ejecuta tools automáticamente. 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 aprobación 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.

Artículos relacionados

Aprende con el curso de IAcademy

Practica lo que has leído con lecciones y retos guiados.

Ir al módulo

Descarga la guía maestra de Claude (gratis)

Prompts avanzados, workflows y atajos que no encontrarás en la documentación oficial. PDF directo a tu email.