Técnicas

Prompting ReAct: razonar y actuar con herramientas

El prompting ReAct intercala razonamiento con llamadas a herramientas para que un modelo pueda consultar datos y actuar. Cómo funciona el bucle, un ejemplo de prompt y sus modos de fallo.

Traducido del original en inglés. El código, los prompts y la salida de los modelos se mantienen en inglés.

ReAct, abreviatura de «reasoning and acting» (razonar y actuar), es un patrón de prompting en el que un modelo alterna entre pensar qué hacer y hacerlo con una herramienta. Lo introdujeron Yao y sus colegas en 2022, y es el bucle básico dentro de la mayoría de los agentes de IA actuales.

El bucle

Un agente ReAct repite tres pasos hasta que puede responder.

  1. Pensamiento. El modelo razona sobre lo que sabe y lo que necesita a continuación.
  2. Acción. Elige una herramienta y los argumentos con los que llamarla.
  3. Observación. La aplicación ejecuta la herramienta y devuelve el resultado al modelo.

Después el ciclo se repite, con la observación ya formando parte del contexto.

Question: Is order 8841 eligible for a refund?

Thought: I need the order date and the refund window.
Action: get_order(order_id="8841")
Observation: {"date": "2026-09-02", "status": "delivered", "custom": false}

Thought: Delivered and not custom. I need the policy window.
Action: get_policy(topic="refunds")
Observation: "Refunds within 30 days of delivery, excluding custom items."

Thought: 36 days have passed, so it is outside the window.
Answer: No. The 30-day refund window ended on 2 October 2026.

Razonar sin actuar no puede alcanzar hechos ajenos al modelo. Actuar sin razonar llama a las herramientas a ciegas. Intercalarlos permite que cada observación oriente la siguiente decisión.

ReAct con la llamada a herramientas moderna

La técnica original usaba un formato de texto que la aplicación analizaba. Las API actuales de los modelos incorporan la llamada a herramientas: describes cada herramienta con un nombre, una descripción y un JSON Schema de sus parámetros, y el modelo devuelve una solicitud estructurada para llamar a una. El bucle es el mismo; la API se encarga de la infraestructura.

Eso traslada la ingeniería de prompts a tres lugares.

1. El prompt de sistema

Describe el objetivo, los límites y cuándo parar.

You are an order support agent. Use the tools to answer questions
about a customer's orders.

- Look up facts with tools. Do not guess order details.
- Call a tool only when its result is needed for the answer.
- If a tool returns an error, try once more with corrected arguments,
  then tell the customer what could not be checked.
- Never issue a refund above $200. Escalate instead.
- Stop and answer as soon as you have enough information.

2. Las descripciones de las herramientas

Un modelo elige las herramientas solo por sus descripciones. Trata cada descripción como un prompt.

  • Débil: get_order: gets an order
  • Mejor: get_order: Returns date, status, items, and total for one order. Use when the customer mentions an order number. Does not include payment details.

Di qué devuelve la herramienta, cuándo usarla y qué no hace. Nombra los parámetros con claridad y describe sus formatos.

3. Los resultados de las herramientas

Las observaciones vuelven al contexto, así que su forma importa. Devuelve datos compactos y etiquetados, no una página HTML en bruto. Incluye un mensaje de error explícito sobre el que el modelo pueda actuar: «No order with that ID» es útil; un seguimiento de pila no.

Modos de fallo

Bucles. El agente repite la misma llamada. Fija un número máximo de pasos e indica al modelo qué hacer al alcanzar el límite.

Abuso de herramientas. Llama a herramientas para cosas que ya sabe. Indica cuándo no llamar.

Argumentos erróneos. Inventa un ID o un formato. Ajusta el esquema de los parámetros y devuelve errores que expliquen el formato esperado.

Crecimiento del contexto. Cada observación se vuelve a leer en cada paso, por lo que el coste crece con el cuadrado del número de pasos. Recorta o resume las observaciones antiguas. Consulta la optimización de tokens.

Inyección a través de las observaciones. Una página web o un documento devuelto por una herramienta puede contener instrucciones. El modelo puede seguirlas. Es inyección de prompt indirecta, y es el principal riesgo de seguridad de los agentes. Marca los resultados de las herramientas como datos, restringe lo que pueden hacer las herramientas y exige aprobación para las acciones irreversibles.

Respuestas prematuras. Responde antes de comprobar. Exige que las afirmaciones factuales procedan del resultado de una herramienta.

Cuándo usar ReAct

Situación Usa
Los pasos se conocen de antemano Una cadena de prompts: más barata y predecible
El camino depende de lo que se encuentre ReAct
La tarea necesita datos en vivo o privados ReAct con herramientas de recuperación
La tarea ejecuta acciones en otros sistemas ReAct, con aprobación para las acciones de riesgo
Una sola consulta y luego una respuesta Un paso de recuperación, no un bucle

Un agente es la opción más flexible y la más difícil de hacer fiable. Úsalo cuando la flexibilidad sea necesaria.

Dar herramientas a los agentes con MCP

El Model Context Protocol es una forma estándar de ofrecer herramientas a un agente, de modo que un solo servidor de herramientas funcione con muchas aplicaciones de IA. El servidor MCP de PromptFlowEngine expone el análisis, la reestructuración y la depuración (sanitización) de prompts como herramientas de solo lectura. Un agente puede usarlas dentro de su propio bucle, por ejemplo para sanear el contexto antes de pasarlo o para convertir una tarea vaga en una especificación antes de empezar.

Para el diseño más amplio de las instrucciones de los agentes, continúa con los prompts para agentes de IA.

Ponlo en práctica

Pruébalo con la herramienta mcp

Conecta PromptFlowEngine con agentes de IA y flujos compatibles con MCP. Es gratuito, determinista y no necesita cuenta.

Herramientas relacionadas de PromptFlowEngine

Más sobre técnicas

Ver todas las guías de ingeniería de prompts