Exceptions
Provides custom exception classes, error handling and parsing utilities.
APIConnectionError(*args, message='', class_name=None, debug_info=None, error=None)
Bases: BaseInvokerError
Exception for when the client fails to connect to the model provider.
Attributes:
| Name | Type | Description |
|---|---|---|
code |
str
|
Stable error code, |
class_name |
str
|
The name of the class that raised the error. |
message |
str
|
The error message. |
debug_info |
DebugInfo
|
Additional debug information for developers. |
default_message |
str
|
Default error message for the exception class. |
APITimeoutError(*args, message='', class_name=None, debug_info=None, error=None)
Bases: BaseInvokerError
Exception for when the request to the model provider times out.
Attributes:
| Name | Type | Description |
|---|---|---|
code |
str
|
Stable error code, |
class_name |
str
|
The name of the class that raised the error. |
message |
str
|
The error message. |
debug_info |
DebugInfo
|
Additional debug information for developers. |
default_message |
str
|
Default error message for the exception class. |
BaseInferenceError(message=None, *, debug_info=None, error=None)
Bases: BaseError
Base exception class for all gllm_inference errors.
Every concrete error exposes a stable code (GLLM-INF-<NAME>) that you can match on instead of parsing
messages. Catch this class to handle any typed error raised by gllm_inference.
Attributes:
| Name | Type | Description |
|---|---|---|
code |
str | None
|
Stable error code. Defined by each concrete subclass. |
message |
str
|
The error message. |
debug_info |
DebugInfo
|
Developer-only diagnostics, always with |
default_message |
str | None
|
Default error message for the exception class. |
Initialize the base inference error.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
message
|
str | None
|
The error message. If None, uses the class's default_message. Defaults to None. |
None
|
debug_info
|
DebugInfo | dict[str, Any] | None
|
Additional debug information for developers. Defaults to None. |
None
|
error
|
Exception | None
|
The raw error that caused this one, recorded as |
None
|
BaseInvokerError(*args, message='', class_name=None, debug_info=None, error=None)
Bases: BaseInferenceError
Base exception class for all gllm_inference invoker errors.
Every concrete error exposes a stable code (GLLM-INF-<NAME>) that you can match on instead of parsing
messages. Subclasses without their own code still work, log a warning, and fall back to a default code.
Attributes:
| Name | Type | Description |
|---|---|---|
code |
str | None
|
Stable error code. Defined by each concrete subclass. |
class_name |
str
|
The name of the class that raised the error. |
message |
str
|
The error message. |
debug_info |
DebugInfo
|
Developer-only diagnostics, always with |
default_message |
str
|
Default error message for the exception class. |
str_mode |
ErrorStrMode | str
|
Whether |
Initialize the base exception.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
*args
|
str | None
|
Positional arguments (deprecated). Use keyword arguments instead. |
()
|
message
|
str
|
The error message. If empty, uses the class's default_message. Defaults to empty string. |
''
|
class_name
|
str | None
|
The name of the class that raised the error. If None, auto-inferred from call stack. Defaults to None. |
None
|
debug_info
|
DebugInfo | dict[str, Any] | None
|
Additional debug information for developers. Defaults to None. |
None
|
error
|
Exception | None
|
The raw error. Defaults to None. |
None
|
__init_subclass__(abstract=False, **kwargs)
Tolerantly validates and registers a subclass.
Lets you define custom invoker errors without a code: a warning is logged and a default code is used.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
abstract
|
bool
|
Whether the subclass is an abstract base that is never raised directly. Defaults to False. |
False
|
**kwargs
|
Any
|
Additional class keyword arguments passed to the parent. |
{}
|
__repr__()
Return the error representation according to str_mode.
Returns:
| Name | Type | Description |
|---|---|---|
str |
str
|
The verbose error message with debug information when |
__str__()
Return the error string according to str_mode.
Returns:
| Name | Type | Description |
|---|---|---|
str |
str
|
The verbose error message with debug information when |
verbose()
Verbose error message with debug information.
Returns:
| Name | Type | Description |
|---|---|---|
str |
str
|
The verbose error message with debug information. |
ContextOverflowError(*args, message='', class_name=None, debug_info=None, error=None)
Bases: BaseInvokerError
Exception for when input size exceeds the model's context length limit.
Attributes:
| Name | Type | Description |
|---|---|---|
code |
str
|
Stable error code, |
class_name |
str
|
The name of the class that raised the error. |
message |
str
|
The error message. |
debug_info |
DebugInfo
|
Additional debug information for developers. |
default_message |
str
|
Default error message for the exception class. |
ErrorStrMode
Bases: StrEnum
Defines what str() and repr() return for a BaseInvokerError.
Attributes:
| Name | Type | Description |
|---|---|---|
VERBOSE |
str
|
Return the full debug dump, same as |
MESSAGE |
str
|
Return only the clean message, without |
FileOperationError(*args, message='', class_name=None, debug_info=None, error=None)
Bases: BaseInvokerError
Exception for file operation failures during model invocation.
Attributes:
| Name | Type | Description |
|---|---|---|
code |
str
|
Stable error code, |
class_name |
str
|
The name of the class that raised the error. |
message |
str
|
The error message. |
debug_info |
DebugInfo
|
Additional debug information for developers. |
default_message |
str
|
Default error message for the exception class. |
InferenceAttributeError(message=None, *, debug_info=None, error=None)
Bases: BaseInferenceError, AttributeError
Exception for attribute access on a gllm_inference component that is not available or not initialized.
Also a AttributeError, so existing except AttributeError handlers keep working.
Attributes:
| Name | Type | Description |
|---|---|---|
code |
str
|
Stable error code, |
message |
str
|
The error message. |
debug_info |
DebugInfo
|
Developer-only diagnostics, always with |
default_message |
str
|
Default error message for the exception class. |
InferenceFileNotFoundError(message=None, *, debug_info=None, error=None)
Bases: BaseInferenceError, FileNotFoundError
Exception for a file that a gllm_inference component expects but cannot find.
Also a FileNotFoundError, so existing except FileNotFoundError handlers keep working.
Attributes:
| Name | Type | Description |
|---|---|---|
code |
str
|
Stable error code, |
message |
str
|
The error message. |
debug_info |
DebugInfo
|
Developer-only diagnostics, always with |
default_message |
str
|
Default error message for the exception class. |
InferenceNotImplementedError(message=None, *, debug_info=None, error=None)
Bases: BaseInferenceError, NotImplementedError
Exception for functionality that is not implemented or not supported by a gllm_inference component.
Also a NotImplementedError, so existing except NotImplementedError handlers keep working.
Attributes:
| Name | Type | Description |
|---|---|---|
code |
str
|
Stable error code, |
message |
str
|
The error message. |
debug_info |
DebugInfo
|
Additional debug information for developers. |
default_message |
str
|
Default error message for the exception class. |
InferenceOSError(message=None, *, debug_info=None, error=None)
Bases: BaseInferenceError, OSError
Exception for operating system, environment or resource-loading failures in gllm_inference components.
Also a OSError, so existing except OSError handlers keep working.
Attributes:
| Name | Type | Description |
|---|---|---|
code |
str
|
Stable error code, |
message |
str
|
The error message. |
debug_info |
DebugInfo
|
Developer-only diagnostics, always with |
default_message |
str
|
Default error message for the exception class. |
InferenceRuntimeError(message=None, *, debug_info=None, error=None)
Bases: BaseInferenceError, RuntimeError
Exception for failures that occur at runtime inside gllm_inference components.
Also a RuntimeError, so existing except RuntimeError handlers keep working. Provider failures use
InvokerRuntimeError (GLLM-INF-RUNTIME) instead.
Attributes:
| Name | Type | Description |
|---|---|---|
code |
str
|
Stable error code, |
message |
str
|
The error message. |
debug_info |
DebugInfo
|
Additional debug information for developers. |
default_message |
str
|
Default error message for the exception class. |
InferenceTypeError(message=None, *, debug_info=None, error=None)
Bases: BaseInferenceError, TypeError
Exception for values of an unsupported type passed to gllm_inference components.
Also a TypeError, so existing except TypeError handlers keep working.
Attributes:
| Name | Type | Description |
|---|---|---|
code |
str
|
Stable error code, |
message |
str
|
The error message. |
debug_info |
DebugInfo
|
Additional debug information for developers. |
default_message |
str
|
Default error message for the exception class. |
InferenceValueError(message=None, *, debug_info=None, error=None)
Bases: BaseInferenceError, ValueError
Exception for invalid values or configuration passed to gllm_inference components.
Also a ValueError, so existing except ValueError handlers keep working.
Attributes:
| Name | Type | Description |
|---|---|---|
code |
str
|
Stable error code, |
message |
str
|
The error message. |
debug_info |
DebugInfo
|
Additional debug information for developers. |
default_message |
str
|
Default error message for the exception class. |
InvokerErrorTranslator(provider, class_name)
Translates raw provider exceptions into BaseInvokerError subclasses.
This translator is intended to be registered with gllm_core.retry.RetryConfig
via the error_translators field so that provider-specific errors are
normalized inside the retry loop.
Initialize the translator.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
provider
|
ModelProvider
|
The model provider enum value. |
required |
class_name
|
str
|
The invoker class name for error context. |
required |
__call__(error)
Translate a raw exception into a BaseInvokerError subclass.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
error
|
Exception
|
The raw provider error to translate. |
required |
Returns:
| Name | Type | Description |
|---|---|---|
Exception |
Exception
|
The translated error (BaseInvokerError) or the original error if it is already a BaseInvokerError. |
InvokerRuntimeError(*args, message='', class_name=None, debug_info=None, error=None)
Bases: BaseInvokerError
Exception for runtime errors that occur during the invocation of the model.
Attributes:
| Name | Type | Description |
|---|---|---|
code |
str
|
Stable error code, |
class_name |
str
|
The name of the class that raised the error. |
message |
str
|
The error message. |
debug_info |
DebugInfo
|
Additional debug information for developers. |
default_message |
str
|
Default error message for the exception class. |
MissingOutputItemError(*args, message='', class_name=None, debug_info=None, error=None)
Bases: BaseInvokerError
Exception for missing required language model output item types.
Attributes:
| Name | Type | Description |
|---|---|---|
code |
str
|
Stable error code, |
class_name |
str
|
The name of the class that raised the error. |
message |
str
|
The error message. |
debug_info |
DebugInfo
|
Additional debug information for developers. |
default_message |
str
|
Default error message for the exception class. |
ModelNotFoundError(*args, message='', class_name=None, debug_info=None, error=None)
Bases: BaseInvokerError
Exception for model not found errors.
Attributes:
| Name | Type | Description |
|---|---|---|
code |
str
|
Stable error code, |
class_name |
str
|
The name of the class that raised the error. |
message |
str
|
The error message. |
debug_info |
DebugInfo
|
Additional debug information for developers. |
default_message |
str
|
Default error message for the exception class. |
OperationUnsupportedError(*args, message='', class_name=None, debug_info=None, error=None)
Bases: BaseInvokerError, NotImplementedError
Exception for unsupported operations across all operation types.
Applies to any operation type (file, skill, data store, etc.) when the operation
is not supported or not implemented. Also a NotImplementedError, so existing
except NotImplementedError handlers keep working.
Attributes:
| Name | Type | Description |
|---|---|---|
code |
str
|
Stable error code, |
class_name |
str
|
The name of the class that raised the error. |
message |
str
|
The error message. |
debug_info |
DebugInfo
|
Additional debug information for developers. |
default_message |
str
|
Default error message for the exception class. |
ProviderAuthError(*args, message='', class_name=None, debug_info=None, error=None)
Bases: BaseInvokerError
Exception for authorization failures due to API key issues.
Attributes:
| Name | Type | Description |
|---|---|---|
code |
str
|
Stable error code, |
class_name |
str
|
The name of the class that raised the error. |
message |
str
|
The error message. |
debug_info |
DebugInfo
|
Additional debug information for developers. |
default_message |
str
|
Default error message for the exception class. |
no_organization(class_name=None, debug_info=None, error=None)
classmethod
Factory for 'no organization' variant.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
class_name
|
str | None
|
The name of the class that raised the error. If None, auto-inferred from call stack. Defaults to None. |
None
|
debug_info
|
DebugInfo | dict[str, Any] | None
|
Additional debug information for developers. Defaults to None. |
None
|
error
|
Exception | None
|
The raw error. Defaults to None. |
None
|
Returns:
| Name | Type | Description |
|---|---|---|
ProviderAuthError |
ProviderAuthError
|
An instance with a message indicating a missing organization. |
ProviderBillingError(*args, message='', class_name=None, debug_info=None, error=None)
Bases: BaseInvokerError
Exception for provider account billing exhaustion.
Raised when the provider account cannot be billed for the request: prepaid credits are
drained or a hard spend limit has been reached. This is distinct from
ProviderRateLimitError, which covers transient rate limits and throughput quotas (e.g.
tokens-per-minute allocations) that clear on their own. A billing exhaustion is not
resolved by retrying or by falling back to another model on the same account; the account
owner must update the billing details.
Attributes:
| Name | Type | Description |
|---|---|---|
code |
str
|
Stable error code, |
class_name |
str
|
The name of the class that raised the error. |
message |
str
|
The error message. |
debug_info |
DebugInfo
|
Additional debug information for developers. |
default_message |
str
|
Default error message for the exception class. |
ProviderConflictError(*args, message='', class_name=None, debug_info=None, error=None)
Bases: BaseInvokerError
Exception for when the request to the model provider conflicts.
Attributes:
| Name | Type | Description |
|---|---|---|
code |
str
|
Stable error code, |
class_name |
str
|
The name of the class that raised the error. |
message |
str
|
The error message. |
debug_info |
DebugInfo
|
Additional debug information for developers. |
default_message |
str
|
Default error message for the exception class. |
ProviderInternalError(*args, message='', class_name=None, debug_info=None, error=None)
Bases: BaseInvokerError
Exception for unexpected server-side errors.
Attributes:
| Name | Type | Description |
|---|---|---|
code |
str
|
Stable error code, |
class_name |
str
|
The name of the class that raised the error. |
message |
str
|
The error message. |
debug_info |
DebugInfo
|
Additional debug information for developers. |
default_message |
str
|
Default error message for the exception class. |
ProviderInvalidArgsError(*args, message='', class_name=None, debug_info=None, error=None)
Bases: BaseInvokerError
Exception for bad or malformed requests, invalid parameters or structure.
Attributes:
| Name | Type | Description |
|---|---|---|
code |
str
|
Stable error code, |
class_name |
str
|
The name of the class that raised the error. |
message |
str
|
The error message. |
debug_info |
DebugInfo
|
Additional debug information for developers. |
default_message |
str
|
Default error message for the exception class. |
ProviderOverloadedError(*args, message='', class_name=None, debug_info=None, error=None)
Bases: BaseInvokerError
Exception for when the engine is currently overloaded.
Attributes:
| Name | Type | Description |
|---|---|---|
code |
str
|
Stable error code, |
class_name |
str
|
The name of the class that raised the error. |
message |
str
|
The error message. |
debug_info |
DebugInfo
|
Additional debug information for developers. |
default_message |
str
|
Default error message for the exception class. |
ProviderRateLimitError(*args, message='', class_name=None, debug_info=None, error=None)
Bases: BaseInvokerError
Exception for rate limit violations.
Attributes:
| Name | Type | Description |
|---|---|---|
code |
str
|
Stable error code, |
class_name |
str
|
The name of the class that raised the error. |
message |
str
|
The error message. |
debug_info |
DebugInfo
|
Additional debug information for developers. |
default_message |
str
|
Default error message for the exception class. |
insufficient_quota(class_name=None, debug_info=None, error=None)
classmethod
Factory for 'insufficient quota' variant.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
class_name
|
str | None
|
The name of the class that raised the error. If None, auto-inferred from call stack. Defaults to None. |
None
|
debug_info
|
DebugInfo | dict[str, Any] | None
|
Additional debug information for developers. Defaults to None. |
None
|
error
|
Exception | None
|
The raw error. Defaults to None. |
None
|
Returns:
| Name | Type | Description |
|---|---|---|
ProviderRateLimitError |
ProviderRateLimitError
|
An instance with a message indicating exhausted quota/billing, as opposed to a transient rate limit that will clear on its own. |
SkillOperationError(*args, message='', class_name=None, debug_info=None, error=None)
Bases: BaseInvokerError
Exception for skill operation failures.
Attributes:
| Name | Type | Description |
|---|---|---|
code |
str
|
Stable error code, |
class_name |
str
|
The name of the class that raised the error. |
message |
str
|
The error message. |
debug_info |
DebugInfo
|
Additional debug information for developers. |
default_message |
str
|
Default error message for the exception class. |
__getattr__(name)
Lazily load the error extractor and translator to keep this package free of import cycles.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
name
|
str
|
The attribute name being accessed. |
required |
Returns:
| Name | Type | Description |
|---|---|---|
Any |
Any
|
The requested attribute. |
Raises:
| Type | Description |
|---|---|
AttributeError
|
If the attribute is not a lazily loaded export. |
get_all_provider_extractors()
Get all registered provider error extractor instances.
Returns:
| Type | Description |
|---|---|
list[BaseErrorExtractor]
|
list[BaseErrorExtractor]: List of all provider extractor instances. |
get_error_extractor(provider)
Get the registered provider error extractor class.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
provider
|
ModelProvider
|
The provider name. |
required |
Returns:
| Type | Description |
|---|---|
type[BaseErrorExtractor]
|
type[BaseErrorExtractor]: The registered provider error extractor class. |