Home / Class/ AsyncMiddleware Class — langchain Architecture

AsyncMiddleware Class — langchain Architecture

Architecture documentation for the AsyncMiddleware class in test_framework.py from the langchain codebase.

Entity Profile

Dependency Diagram

graph TD
  492223bc_1f62_a781_1757_303ce38d5e6f["AsyncMiddleware"]
  949c7cf4_56fe_f3b4_cd89_9631a7e9cb1e["AgentMiddleware"]
  492223bc_1f62_a781_1757_303ce38d5e6f -->|extends| 949c7cf4_56fe_f3b4_cd89_9631a7e9cb1e
  8310d669_2524_e019_e333_8473b50a4990["test_framework.py"]
  492223bc_1f62_a781_1757_303ce38d5e6f -->|defined in| 8310d669_2524_e019_e333_8473b50a4990
  ef00a503_751e_81db_e7f3_3574b9b9827e["abefore_model()"]
  492223bc_1f62_a781_1757_303ce38d5e6f -->|method| ef00a503_751e_81db_e7f3_3574b9b9827e
  7caabf75_c7f6_610c_9ebb_09ae9729e4cc["awrap_model_call()"]
  492223bc_1f62_a781_1757_303ce38d5e6f -->|method| 7caabf75_c7f6_610c_9ebb_09ae9729e4cc
  08f5c817_8c76_4321_c5f5_654923a10b86["aafter_model()"]
  492223bc_1f62_a781_1757_303ce38d5e6f -->|method| 08f5c817_8c76_4321_c5f5_654923a10b86

Relationship Graph

Source Code

libs/langchain_v1/tests/unit_tests/agents/middleware/core/test_framework.py lines 555–569

    class AsyncMiddleware(AgentMiddleware):
        async def abefore_model(self, state: AgentState[Any], runtime: Runtime) -> None:
            calls.append("AsyncMiddleware.abefore_model")

        async def awrap_model_call(
            self,
            request: ModelRequest,
            handler: Callable[[ModelRequest], Awaitable[ModelResponse]],
        ) -> ModelCallResult:
            calls.append("AsyncMiddleware.awrap_model_call")
            request.messages.append(HumanMessage("async middleware message"))
            return await handler(request)

        async def aafter_model(self, state: AgentState[Any], runtime: Runtime) -> None:
            calls.append("AsyncMiddleware.aafter_model")

Extends

Frequently Asked Questions

What is the AsyncMiddleware class?
AsyncMiddleware is a class in the langchain codebase, defined in libs/langchain_v1/tests/unit_tests/agents/middleware/core/test_framework.py.
Where is AsyncMiddleware defined?
AsyncMiddleware is defined in libs/langchain_v1/tests/unit_tests/agents/middleware/core/test_framework.py at line 555.
What does AsyncMiddleware extend?
AsyncMiddleware extends AgentMiddleware.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free