Cómo montar un loop agéntico con Claude

Resumen

Un loop agéntico convierte a Claude de una herramienta que responde a medias en un agente que razona, actúa y decide su próximo paso solo. Si programas agentes de IA y quieres que iteren hasta armar una mejor respuesta, aquí aprendes a montar ese bucle con un tope de seguridad.

Imagina que le preguntas a tu agente algo de dos partes: ¿quién ganó el último partido y cuántos goles metió el delantero estrella? Recibe la petición, busca en Internet y encuentra el marcador. La primera parte queda resuelta, pero la segunda no aparece por ningún lado, porque la página trae el marcador y no los goleadores.

Cualquiera de nosotros haría lo obvio: buscar otra vez con otras palabras. Claude no. Ya gastó su única búsqueda, así que te responde con la mitad de la información. Y aquí viene lo interesante: ¿y si pudiera intentarlo de nuevo, notar que le falta un dato y volver a buscar antes de responderte?

Qué es un loop agéntico y por qué importa

El loop agéntico es un ciclo de tres tiempos que le permite a Claude autocorregirse en lugar de rendirse en el primer intento.

  • Claude razona qué necesita.
  • Actúa usando una herramienta.
  • Observa el resultado.

Si le alcanza, responde. Si no, razona otra vez y repite. Lo interesante es que va a iterar tantas veces como tú se lo permitas hasta armar una mejor respuesta. Tu trabajo es montar el bucle y ponerle un tope para que no se quede procesando sin fin [00:52].

¿Qué es un loop agéntico? Es un ciclo de razonar, actuar y observar que repite Claude hasta reunir la información suficiente para responder. Si no le alcanza con un intento, vuelve a intentarlo dentro del mismo bucle.

Cómo pongo un límite de búsquedas al web search tool

Partimos del código de la clase anterior, que hacía una búsqueda en Internet usando el web search tool que provee Anthropic. Lo que haremos es extenderlo.

Lo primero es darle un límite de usos a esa herramienta con el parámetro max_uses, que permite fijar un máximo de cinco búsquedas por iteración [01:33]. Este tope evita que el agente se dispare buscando sin control.

Después reemplazamos el prompt viejo por una pregunta de varios pasos, guardada en una variable llamada question para mejor lectura [01:50]. La consigna: comparar los precios actuales por millón de tokens de OpenAI, Anthropic y Google para sus modelos más caros, con información actualizada al año 2026, haciendo múltiples búsquedas si es necesario, y devolviendo solo una tabla con nombre del modelo, proveedor y precio, más una referencia con link y nombre de la página.

Cómo sé cuántas búsquedas hizo el agente

Queremos algo más que la respuesta final: saber cuántas búsquedas hizo. Para eso agregamos un for loop que revisa si se utilizó alguna tool, específicamente la del web search, e imprime cada búsqueda realizada [02:40].

Luego, un print extra separa ese listado de la respuesta final. Al ejecutarlo en la terminal, la respuesta tarda más porque hace varias búsquedas en paralelo antes de mostrar el resultado completo [03:14].

En el ejemplo, Claude iteró tres veces:

  • OpenAI: modelo más caro y su precio por millón de tokens en 2026 (GPT Pro 5.5).
  • Anthropic: precio del modelo más caro (Claude Fable).
  • Google: precio del modelo más top (Gemini 3.1 Pro).

Además devolvió la tabla comparativa con input y output por millón de tokens, una nota aclaratoria sobre modelos de acceso restringido, y las fuentes con link y fecha de actualización de cada una [04:26]. Lo importante no es la tabla: es que hizo tres búsquedas antes de armarla.

Sirve un loop agéntico sin buscar en Internet

Sí, y este es un punto clave. Los loops agénticos no siempre tienen que ver con buscar en Internet. A veces el agente no necesita más información externa, sino pensar mejor el problema, dividirlo en pasos y revisar lo que ya resolvió [05:07].

Con un problema matemático grande no conviene resolver todo de una sola vez. Es mejor separarlo:

  1. Entender qué se pregunta.
  2. Identificar los datos.
  3. Elegir una estrategia.
  4. Resolver paso a paso.
  5. Revisar si el resultado tiene sentido.

Esa también es una forma de loop: razonar, actuar, observar y decidir si hace falta repetir.

¿Un agente necesita siempre buscar en Internet para iterar? No. Puede iterar solo razonando: dividir un problema en pasos, resolver cada parte y revisar el avance sin consultar ninguna fuente externa.

Cómo construyo el ejemplo matemático con Claude

El agente web queda en el archivo agente_web.py, y el ejemplo matemático lo armamos en main.py. Empezamos con los imports [05:52]:

  • El árbol de sintaxis abstracta (ast), que lee un texto dentro de una string y lo asume como fórmula matemática.
  • El operator, que permite crear una calculadora de forma sencilla.
  • os y Anthropic, que venimos usando en clases anteriores.

Luego definimos tres variables importantes [06:22]:

  • El modelo Claude Sonnet 4.6.
  • Un máximo de pasos de iteración fijado en cuatro.
  • Los operadores permitidos: suma, resta, multiplicación, división y valores negativos.

La función evaluate sigue iterando si quedan operaciones pendientes. La función calculator recibe una expresión como string, la calcula y la devuelve también como string [06:56].

El prompt pide: "Calcula cuánto es 128 por 7 más 34 entre 52 y explica el resultado", una operación por pasos [07:39]. En las tools declaramos la calculadora, con la expresión como único parámetro requerido, y un for loop que responde según los cuatro pasos máximos, con max_tokens en 500 [08:00].

Por cada bloque, si hay un tool use, agrega ese uso llamando a calculator; si no, imprime un mensaje de texto. Al final hace append al listado de mensajes con el contenido de tool results, que empezó como un array vacío. Y si llega al límite, imprime que el agente alcanzó el tope de pasos [08:44].

El resultado en terminal se separa en tres partes: explicación paso a paso, detalles y resumen. Lo más importante es que no hizo todo de una vez, sino tres pasos progresivos [09:15]:

  • 128 por 7 igual a 896.
  • 896 más 34 igual a 930.
  • 930 dividido entre 52.

Acabas de cruzar una línea importante. Antes tenías a Claude usando herramientas. Ahora tienes algo que razona, prueba, mira el resultado y decide su próximo paso por su cuenta. Eso ya merece llamarse agente. ¿Qué otro problema te gustaría resolver con un loop agéntico? Cuéntanos en los comentarios.