Home / Class/ AnalysisResponseMiddleware Class — langchain Architecture

AnalysisResponseMiddleware Class — langchain Architecture

Architecture documentation for the AnalysisResponseMiddleware class in test_middleware_typing.py from the langchain codebase.

Entity Profile

Dependency Diagram

graph TD
  5928e7c6_7ac1_2e6a_a767_005120e5117c["AnalysisResponseMiddleware"]
  689eac1f_5845_440c_f60b_988968e02ee6["test_middleware_typing.py"]
  5928e7c6_7ac1_2e6a_a767_005120e5117c -->|defined in| 689eac1f_5845_440c_f60b_988968e02ee6
  505e2df9_9e07_6291_13ee_d7bf239ab14d["wrap_model_call()"]
  5928e7c6_7ac1_2e6a_a767_005120e5117c -->|method| 505e2df9_9e07_6291_13ee_d7bf239ab14d

Relationship Graph

Source Code

libs/langchain_v1/tests/unit_tests/agents/middleware_typing/test_middleware_typing.py lines 154–169

class AnalysisResponseMiddleware(
    AgentMiddleware[AgentState[AnalysisResult], ContextT, AnalysisResult]
):
    """Middleware with correctly specified AnalysisResult response type."""

    def wrap_model_call(
        self,
        request: ModelRequest[ContextT],
        handler: Callable[[ModelRequest[ContextT]], ModelResponse[AnalysisResult]],
    ) -> ModelResponse[AnalysisResult]:
        response = handler(request)
        # Full type safety on structured_response
        if response.structured_response is not None:
            _sentiment: str = response.structured_response.sentiment
            _confidence: float = response.structured_response.confidence
        return response

Frequently Asked Questions

What is the AnalysisResponseMiddleware class?
AnalysisResponseMiddleware is a class in the langchain codebase, defined in libs/langchain_v1/tests/unit_tests/agents/middleware_typing/test_middleware_typing.py.
Where is AnalysisResponseMiddleware defined?
AnalysisResponseMiddleware is defined in libs/langchain_v1/tests/unit_tests/agents/middleware_typing/test_middleware_typing.py at line 154.

Analyze Your Own Codebase

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

Try Supermodel Free