MiddleRetryMiddleware Class — langchain Architecture
Architecture documentation for the MiddleRetryMiddleware class in test_wrap_model_call.py from the langchain codebase.
Entity Profile
Dependency Diagram
graph TD b5e58f87_c3d8_dec4_d358_2c3db52d02cc["MiddleRetryMiddleware"] 949c7cf4_56fe_f3b4_cd89_9631a7e9cb1e["AgentMiddleware"] b5e58f87_c3d8_dec4_d358_2c3db52d02cc -->|extends| 949c7cf4_56fe_f3b4_cd89_9631a7e9cb1e 573473e5_eb93_a7d7_84ba_c975071c09af["test_wrap_model_call.py"] b5e58f87_c3d8_dec4_d358_2c3db52d02cc -->|defined in| 573473e5_eb93_a7d7_84ba_c975071c09af 9a83bb7a_fde7_0640_99f0_86df7adcbba7["wrap_model_call()"] b5e58f87_c3d8_dec4_d358_2c3db52d02cc -->|method| 9a83bb7a_fde7_0640_99f0_86df7adcbba7
Relationship Graph
Source Code
libs/langchain_v1/tests/unit_tests/agents/middleware/core/test_wrap_model_call.py lines 942–954
class MiddleRetryMiddleware(AgentMiddleware):
def wrap_model_call(
self,
request: ModelRequest,
handler: Callable[[ModelRequest], ModelResponse],
) -> ModelCallResult:
execution_order.append("middle-before")
# Always retry once (call handler twice)
result = handler(request)
execution_order.append("middle-retry")
result = handler(request)
execution_order.append("middle-after")
return result
Extends
Source
Frequently Asked Questions
What is the MiddleRetryMiddleware class?
MiddleRetryMiddleware 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 MiddleRetryMiddleware defined?
MiddleRetryMiddleware is defined in libs/langchain_v1/tests/unit_tests/agents/middleware/core/test_wrap_model_call.py at line 942.
What does MiddleRetryMiddleware extend?
MiddleRetryMiddleware extends AgentMiddleware.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free