Home / Class/ ConfigCapturingModel Class — langchain Architecture

ConfigCapturingModel Class — langchain Architecture

Architecture documentation for the ConfigCapturingModel class in test_summarization.py from the langchain codebase.

Entity Profile

Dependency Diagram

graph TD
  eecf1cc4_88fc_befe_ee29_3f8060e1bf4b["ConfigCapturingModel"]
  48aa29b8_65e7_522f_a445_a441eeb6baff["BaseChatModel"]
  eecf1cc4_88fc_befe_ee29_3f8060e1bf4b -->|extends| 48aa29b8_65e7_522f_a445_a441eeb6baff
  1911a463_b67d_0301_5ef1_5c535dafc14a["test_summarization.py"]
  eecf1cc4_88fc_befe_ee29_3f8060e1bf4b -->|defined in| 1911a463_b67d_0301_5ef1_5c535dafc14a
  359a353f_4bf3_1037_db4c_f543a1cea836["invoke()"]
  eecf1cc4_88fc_befe_ee29_3f8060e1bf4b -->|method| 359a353f_4bf3_1037_db4c_f543a1cea836
  870e74d9_2206_377b_2f77_17299b27dd63["ainvoke()"]
  eecf1cc4_88fc_befe_ee29_3f8060e1bf4b -->|method| 870e74d9_2206_377b_2f77_17299b27dd63
  af1749fc_7bfa_a61f_1534_047ed5fb6c0c["_generate()"]
  eecf1cc4_88fc_befe_ee29_3f8060e1bf4b -->|method| af1749fc_7bfa_a61f_1534_047ed5fb6c0c
  742ec055_dad9_a2ba_e51c_1129fe4986d5["_llm_type()"]
  eecf1cc4_88fc_befe_ee29_3f8060e1bf4b -->|method| 742ec055_dad9_a2ba_e51c_1129fe4986d5

Relationship Graph

Source Code

libs/langchain_v1/tests/unit_tests/agents/middleware/implementations/test_summarization.py lines 1245–1286

class ConfigCapturingModel(BaseChatModel):
    """Mock model that captures the config passed to invoke/ainvoke."""

    captured_configs: list[RunnableConfig | None] = Field(default_factory=list, exclude=True)

    @override
    def invoke(
        self,
        input: LanguageModelInput,
        config: RunnableConfig | None = None,
        *,
        stop: list[str] | None = None,
        **kwargs: Any,
    ) -> AIMessage:
        self.captured_configs.append(config)
        return AIMessage(content="Summary")

    @override
    async def ainvoke(
        self,
        input: LanguageModelInput,
        config: RunnableConfig | None = None,
        *,
        stop: list[str] | None = None,
        **kwargs: Any,
    ) -> AIMessage:
        self.captured_configs.append(config)
        return AIMessage(content="Summary")

    @override
    def _generate(
        self,
        messages: list[BaseMessage],
        stop: list[str] | None = None,
        run_manager: CallbackManagerForLLMRun | None = None,
        **kwargs: Any,
    ) -> ChatResult:
        return ChatResult(generations=[ChatGeneration(message=AIMessage(content="Summary"))])

    @property
    def _llm_type(self) -> str:
        return "config-capturing"

Extends

Frequently Asked Questions

What is the ConfigCapturingModel class?
ConfigCapturingModel is a class in the langchain codebase, defined in libs/langchain_v1/tests/unit_tests/agents/middleware/implementations/test_summarization.py.
Where is ConfigCapturingModel defined?
ConfigCapturingModel is defined in libs/langchain_v1/tests/unit_tests/agents/middleware/implementations/test_summarization.py at line 1245.
What does ConfigCapturingModel extend?
ConfigCapturingModel extends BaseChatModel.

Analyze Your Own Codebase

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

Try Supermodel Free