__init__() — langchain Function Reference
Architecture documentation for the __init__() function in model_call_limit.py from the langchain codebase.
Entity Profile
Dependency Diagram
graph TD 2a422801_14e5_2ae0_8cda_a0d9c2bb00ac["__init__()"] 190da0f4_c252_0e20_de0d_30a94a781fc9["ModelCallLimitMiddleware"] 2a422801_14e5_2ae0_8cda_a0d9c2bb00ac -->|defined in| 190da0f4_c252_0e20_de0d_30a94a781fc9 style 2a422801_14e5_2ae0_8cda_a0d9c2bb00ac fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
libs/langchain_v1/langchain/agents/middleware/model_call_limit.py lines 126–164
def __init__(
self,
*,
thread_limit: int | None = None,
run_limit: int | None = None,
exit_behavior: Literal["end", "error"] = "end",
) -> None:
"""Initialize the call tracking middleware.
Args:
thread_limit: Maximum number of model calls allowed per thread.
`None` means no limit.
run_limit: Maximum number of model calls allowed per run.
`None` means no limit.
exit_behavior: What to do when limits are exceeded.
- `'end'`: Jump to the end of the agent execution and
inject an artificial AI message indicating that the limit was
exceeded.
- `'error'`: Raise a `ModelCallLimitExceededError`
Raises:
ValueError: If both limits are `None` or if `exit_behavior` is invalid.
"""
super().__init__()
if thread_limit is None and run_limit is None:
msg = "At least one limit must be specified (thread_limit or run_limit)"
raise ValueError(msg)
if exit_behavior not in {"end", "error"}:
msg = f"Invalid exit_behavior: {exit_behavior}. Must be 'end' or 'error'"
raise ValueError(msg)
self.thread_limit = thread_limit
self.run_limit = run_limit
self.exit_behavior = exit_behavior
Domain
Subdomains
Source
Frequently Asked Questions
What does __init__() do?
__init__() is a function in the langchain codebase, defined in libs/langchain_v1/langchain/agents/middleware/model_call_limit.py.
Where is __init__() defined?
__init__() is defined in libs/langchain_v1/langchain/agents/middleware/model_call_limit.py at line 126.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free