LimitedRetryMiddleware Class — langchain Architecture
Architecture documentation for the LimitedRetryMiddleware class in test_wrap_model_call.py from the langchain codebase.
Entity Profile
Dependency Diagram
graph TD 9f905a6a_1d73_4a83_1649_44d4d74e3d88["LimitedRetryMiddleware"] 949c7cf4_56fe_f3b4_cd89_9631a7e9cb1e["AgentMiddleware"] 9f905a6a_1d73_4a83_1649_44d4d74e3d88 -->|extends| 949c7cf4_56fe_f3b4_cd89_9631a7e9cb1e 573473e5_eb93_a7d7_84ba_c975071c09af["test_wrap_model_call.py"] 9f905a6a_1d73_4a83_1649_44d4d74e3d88 -->|defined in| 573473e5_eb93_a7d7_84ba_c975071c09af 2205bdec_dfee_45ca_c41a_45b6bdf556a3["__init__()"] 9f905a6a_1d73_4a83_1649_44d4d74e3d88 -->|method| 2205bdec_dfee_45ca_c41a_45b6bdf556a3 b06525f4_6f31_f815_f20b_a5437273ab4d["wrap_model_call()"] 9f905a6a_1d73_4a83_1649_44d4d74e3d88 -->|method| b06525f4_6f31_f815_f20b_a5437273ab4d
Relationship Graph
Source Code
libs/langchain_v1/tests/unit_tests/agents/middleware/core/test_wrap_model_call.py lines 256–281
class LimitedRetryMiddleware(AgentMiddleware):
"""Middleware that limits its own retries."""
def __init__(self, max_retries: int = 10):
super().__init__()
self.max_retries = max_retries
self.attempt_count = 0
def wrap_model_call(
self,
request: ModelRequest,
handler: Callable[[ModelRequest], ModelResponse],
) -> ModelCallResult:
last_exception = None
for _attempt in range(self.max_retries):
self.attempt_count += 1
try:
return handler(request)
except Exception as e:
last_exception = e
# Continue to retry
# All retries exhausted, re-raise the last error
if last_exception:
raise last_exception
pytest.fail("Should have raised an exception")
Extends
Source
Frequently Asked Questions
What is the LimitedRetryMiddleware class?
LimitedRetryMiddleware is a class in the langchain codebase, defined in libs/langchain_v1/tests/unit_tests/agents/middleware/core/test_wrap_model_call.py.
Where is LimitedRetryMiddleware defined?
LimitedRetryMiddleware is defined in libs/langchain_v1/tests/unit_tests/agents/middleware/core/test_wrap_model_call.py at line 256.
What does LimitedRetryMiddleware extend?
LimitedRetryMiddleware extends AgentMiddleware.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free