model¶
The Model module provides core abstraction entities for LLMs (Large Language Models).
This module defines core abstraction entities for interacting with models, providing foundational type abstractions for different model implementations.
BaseLlm ¶
Bases: ABC, Serializable
Base class for Large Language Model implementations.
Source code in bridgic/core/model/_base_llm.py
RetryPolicyConfig ¶
Bases: BaseModel
Retry policy for decorating model invocation methods.
Source code in bridgic/core/model/_model_retry.py
ModelRetryLimitError ¶
Bases: RuntimeError
Raised when recoverable errors persist until retry budget is exhausted.
Source code in bridgic/core/model/_model_error.py
ModelUnrecoverableError ¶
Bases: RuntimeError
Raised when an exception is classified as non-retryable.
Source code in bridgic/core/model/_model_error.py
is_recoverable_exception ¶
Heuristic classifier for retryable exceptions.
Source code in bridgic/core/model/_model_retry.py
retryable_model_call ¶
retryable_model_call(
config: Optional[RetryPolicyConfig] = None,
recoverable_checker: Optional[
Callable[[Exception], bool]
] = None,
) -> Callable[[Callable[P, R]], Callable[P, R]]
Decorator for model non-streaming methods.
Behavior: - Retry recoverable exceptions up to max attempts. - Raise ModelUnrecoverableError immediately for non-recoverable exceptions. - Raise ModelRetryLimitError after retry attempts are exhausted.