Python Data Science Program
📓 Abrir notebook en GitHub

Clase 154 — Agentes: tool use, ReAct, multi-agent

Parte: 2 — Deep Learning · Fuente: Yao et al. (2023) ReAct + Schick et al. (2023) Toolformer + Anthropic agent patterns (2024). ⏱️ Duración estimada: 95 min.

🎯 Objetivo

Construir agentes con LLMs: el LLM planifica, invoca tools (funciones, MCP servers, APIs), observa los resultados y decide el siguiente paso. Cubrir el paradigma ReAct (Reasoning + Acting), tool use moderno (function calling structured), y patrones multi-agent (workflows, swarms, supervisores).

📚 Resultados de aprendizaje

Al finalizar, el estudiante podrá:

🗺️ Temas

📖 Definiciones y características

📂 Dataset / recursos

🧪 Ejercicios

  1. Tool básico: definir weather(city) y search(query) tools en Claude API. Pedirle que use ambos.
  2. ReAct loop manual: implementar el loop sin librería, en Python puro.
  3. LangGraph: definir un grafo: router → tool → evaluator → end. Compilar y ejecutar.
  4. Multi-agent (CrewAI): 3 agents (researcher, writer, editor) para producir un blog post.
  5. Evaluator-optimizer: agent que escribe + agent que critica + loop hasta approved=True.

📝 Homework verificable

Agente de investigación con tools:

  1. Tools: web_search, fetch_url, extract_text, save_note.
  2. Prompt: "investigá X y produce un resumen de 200 palabras citando fuentes".
  3. Loop ReAct hasta produce el resumen.
  4. Reportar # de iteraciones, # de tool calls, costo en tokens.

Criterio de aceptación: resumen producido con ≥ 3 fuentes citadas; max_iterations no excedido.

⚠️ Errores comunes

Síntoma / mensaje Causa y cómo arreglar
Loop infinito LLM repite mismas tool calls. Fix: max_iterations, detección de loops.
Tool falla, LLM no maneja Fix: pasar el error como observation.
Costo explota Agentes son caros. Fix: usar Haiku/GPT-mini para iteraciones, GPT-4/Claude solo para decisiones críticas.
Tool schema mal LLM no llama. Fix: descriptions claras, schema válido.
Output no estructurado Fix: forzar JSON schema en respuesta final.

❓ Preguntas frecuentes

❓ Agentes vs workflows simples?

Workflow simple si la secuencia es fija. Agente cuando el path depende del input. Anthropic recomienda: empieza simple, agregá agentic complexity solo cuando justifica.

❓ LangGraph vs CrewAI vs AutoGen?

❓ MCP en agentes?

Sí — los MCP servers son una fuente de tools estándar. Combinar MCP + agente.

❓ Eval de agentes?

Difícil. AgentBench, τ-Bench, SWE-Bench (coding). Para custom: LLM-as-judge + human spot check.

❓ Memoria persistent?

Vector DB + tool recall(query). O frameworks como mem0.

🔗 Referencias

📥 Material descargable

➡️ Siguiente clase

Clase 155 — LLM Evaluation: MMLU, MT-Bench, LLM-as-judge, evals propios