Home / Class/ TemporaryFailureModel Class — langchain Architecture

TemporaryFailureModel Class — langchain Architecture

Architecture documentation for the TemporaryFailureModel class in test_model_retry.py from the langchain codebase.

Entity Profile

Dependency Diagram

graph TD
  7c7e40d0_1104_ccc2_f560_13d9143d5cb6["TemporaryFailureModel"]
  67d9a14e_be69_a367_fd3c_cdb7f78dfa76["FakeToolCallingModel"]
  7c7e40d0_1104_ccc2_f560_13d9143d5cb6 -->|extends| 67d9a14e_be69_a367_fd3c_cdb7f78dfa76
  6a114635_155a_5b86_2f48_fb8ca99f7545["test_model_retry.py"]
  7c7e40d0_1104_ccc2_f560_13d9143d5cb6 -->|defined in| 6a114635_155a_5b86_2f48_fb8ca99f7545
  397fa4e5_9684_183c_47f4_437df31480ed["_generate()"]
  7c7e40d0_1104_ccc2_f560_13d9143d5cb6 -->|method| 397fa4e5_9684_183c_47f4_437df31480ed

Relationship Graph

Source Code

libs/langchain_v1/tests/unit_tests/agents/middleware/implementations/test_model_retry.py lines 26–60

class TemporaryFailureModel(FakeToolCallingModel):
    """Model that fails a certain number of times before succeeding."""

    fail_count: int = Field(default=0)
    attempt: int = Field(default=0)

    def _generate(
        self,
        messages: list[BaseMessage],
        stop: list[str] | None = None,
        run_manager: CallbackManagerForLLMRun | None = None,
        **kwargs: Any,
    ) -> ChatResult:
        """Execute the model.

        Args:
            messages: Input messages.
            stop: Optional stop sequences.
            run_manager: Optional callback manager.
            **kwargs: Additional keyword arguments.

        Returns:
            ChatResult with success message if attempt >= fail_count.

        Raises:
            ValueError: If attempt < fail_count.
        """
        self.attempt += 1
        if self.attempt <= self.fail_count:
            msg = f"Temporary failure {self.attempt}"
            raise ValueError(msg)
        # Return success message
        ai_msg = AIMessage(content=f"Success after {self.attempt} attempts", id=str(self.index))
        self.index += 1
        return ChatResult(generations=[ChatGeneration(message=ai_msg)])

Frequently Asked Questions

What is the TemporaryFailureModel class?
TemporaryFailureModel is a class in the langchain codebase, defined in libs/langchain_v1/tests/unit_tests/agents/middleware/implementations/test_model_retry.py.
Where is TemporaryFailureModel defined?
TemporaryFailureModel is defined in libs/langchain_v1/tests/unit_tests/agents/middleware/implementations/test_model_retry.py at line 26.
What does TemporaryFailureModel extend?
TemporaryFailureModel extends FakeToolCallingModel.

Analyze Your Own Codebase

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

Try Supermodel Free