ReAct Agents Waste 90% of Their Retries — Here's How to Fix It
A recent study conducted on a benchmark of 200 tasks revealed that ReAct agents waste 90.8% of their retries on errors that cannot be resolved. The issue stems from the system's tendency to keep attempting to use tools that do not exist. This is not just about unlikely errors; it’s a guaranteed failure. The root cause was identified as an architectural decision allowing the model to choose the tool name at runtime. This creates significant issues, as monitoring does not reveal how many of those retries were impossible from the outset.
As a result, companies using such agents are effectively paying for retries that cannot succeed, while starving themselves of the retries that could. It is important to note that monitoring often shows acceptable success rates and latencies but fails to indicate the number of failed attempts that were impossible from the start.
The analysis found that 90.8% of retries were wasted on errors that could never be fixed. This is due to the system not classifying errors before retrying, leading to a waste of retry budget. Three structural fixes can eliminate this problem: classifying errors before retrying, using per-tool circuit breakers, and moving tool routing into code.
These changes would result in 0% wasted retries, threefold reduction in step variance, and predictable task execution. The key point is that retrying only makes sense for errors that can change. If a tool does not exist, retrying it is guaranteed to be wasteful.
It is crucial to recognize that many developers face this issue when their logs show retries on non-existent tools. This often leads to a situation where, when genuine failures occur, there is no available budget left to handle them. Therefore, if your logs contain retries on TOOL_NOT_FOUND, you are already encountering this problem, and it is essential to determine what fraction of your budget it consumes.
MiniMax Open Sources MiniMax M2.7 Model with High Performance Metrics
The Issue with AI Memory: Limitations of Traditional Systems
Related articles
Applying Claude Code to Non-technical Tasks on Your Computer
Claude Code helps efficiently tackle non-technical tasks on your computer.
Effective reward functions for customizing Amazon Nova with AWS Lambda
How to effectively utilize AWS Lambda for customizing Amazon Nova models.
Model Drift: Understanding and Fixing Performance Issues Over Time
Model drift refers to the deterioration of predictive model performance over time. Learn how to detect and fix it.