Home / Class/ ModelWithAsyncStream Class — langchain Architecture

ModelWithAsyncStream Class — langchain Architecture

Architecture documentation for the ModelWithAsyncStream class in test_base.py from the langchain codebase.

Entity Profile

Dependency Diagram

graph TD
  96bec7f6_e8b8_d3ba_eda8_759a7fc372f6["ModelWithAsyncStream"]
  d009a608_c505_bd50_7200_0de8a69ba4b7["BaseChatModel"]
  96bec7f6_e8b8_d3ba_eda8_759a7fc372f6 -->|extends| d009a608_c505_bd50_7200_0de8a69ba4b7
  8830054d_ac1e_daa9_c6c5_ff55b10d0bf3["test_base.py"]
  96bec7f6_e8b8_d3ba_eda8_759a7fc372f6 -->|defined in| 8830054d_ac1e_daa9_c6c5_ff55b10d0bf3
  8a8b0b5f_af6a_dbcb_0d86_227003ae312d["_generate()"]
  96bec7f6_e8b8_d3ba_eda8_759a7fc372f6 -->|method| 8a8b0b5f_af6a_dbcb_0d86_227003ae312d
  d63bc5f0_c670_df02_f809_74b949f54e9d["_astream()"]
  96bec7f6_e8b8_d3ba_eda8_759a7fc372f6 -->|method| d63bc5f0_c670_df02_f809_74b949f54e9d
  cd22beaa_319f_9d4f_0531_27df31c99d67["_llm_type()"]
  96bec7f6_e8b8_d3ba_eda8_759a7fc372f6 -->|method| cd22beaa_319f_9d4f_0531_27df31c99d67

Relationship Graph

Source Code

libs/core/tests/unit_tests/language_models/chat_models/test_base.py lines 272–299

    class ModelWithAsyncStream(BaseChatModel):
        def _generate(
            self,
            messages: list[BaseMessage],
            stop: list[str] | None = None,
            run_manager: CallbackManagerForLLMRun | None = None,
            **kwargs: Any,
        ) -> ChatResult:
            """Top Level call."""
            raise NotImplementedError

        @override
        async def _astream(
            self,
            messages: list[BaseMessage],
            stop: list[str] | None = None,
            run_manager: CallbackManagerForLLMRun | None = None,  # type: ignore[override]
            **kwargs: Any,
        ) -> AsyncIterator[ChatGenerationChunk]:
            """Stream the output of the model."""
            yield ChatGenerationChunk(message=AIMessageChunk(content="a"))
            yield ChatGenerationChunk(
                message=AIMessageChunk(content="b", chunk_position="last")
            )

        @property
        def _llm_type(self) -> str:
            return "fake-chat-model"

Extends

Frequently Asked Questions

What is the ModelWithAsyncStream class?
ModelWithAsyncStream is a class in the langchain codebase, defined in libs/core/tests/unit_tests/language_models/chat_models/test_base.py.
Where is ModelWithAsyncStream defined?
ModelWithAsyncStream is defined in libs/core/tests/unit_tests/language_models/chat_models/test_base.py at line 272.
What does ModelWithAsyncStream extend?
ModelWithAsyncStream extends BaseChatModel.

Analyze Your Own Codebase

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

Try Supermodel Free