Exceptions
Defines the shared base exception for normalized errors raised by gllm-* libraries.
BaseError(message=None, *, debug_info=None)
Bases: Exception
Root of normalized errors raised by gllm-* libraries.
- Every concrete subclass must define
codeusing the formatGLLM-<LIB>-<NAME>(for example,GLLM-INF-AUTH). - Every concrete subclass must define
default_message. - Codes are registered at class definition and must be unique across all loaded libraries.
- Intermediate base classes that are never raised directly must pass
abstract=Truein the class statement. - When combining
BaseErrorwith built-in exceptions,BaseErrormust come first, for example:class X(BaseError, ValueError).
Attributes:
| Name | Type | Description |
|---|---|---|
code |
str | None
|
Stable error code. Defined by each concrete subclass. |
default_message |
str | None
|
Message used when no message is given. Defined by each concrete subclass. |
message |
str
|
The message of this error. |
debug_info |
DebugInfo
|
Structured internal detail about this error. |
Initializes the error.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
message
|
str | None
|
Message overriding |
None
|
debug_info
|
DebugInfo | None
|
Structured internal detail. Defaults to None, which
results in a |
None
|
Raises:
| Type | Description |
|---|---|
TypeError
|
If neither |
__init_subclass__(abstract=False, **kwargs)
Validates and registers a concrete subclass.
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. |
{}
|
Raises:
| Type | Description |
|---|---|
TypeError
|
If a concrete subclass lacks |
__str__()
Returns the error message.
Returns:
| Name | Type | Description |
|---|---|---|
str |
str
|
The error message. |
DebugInfo
Bases: TypedDict
Minimum schema of the debug_info attached to a BaseError.
This is a type-level contract only; no runtime validation is performed. Libraries may add extra keys
(e.g. response_detail, status_code) for their own errors.
Attributes:
| Name | Type | Description |
|---|---|---|
class_name |
str
|
Name of the exception class. Always present. |
error_type |
str
|
Type name of the original error, when one was caught. |
original_message |
str
|
Message of the original error, when one was caught. |
traceback |
str
|
Formatted traceback of the original error, when one was caught. |