Skip to content

Exceptions

exceptions

Exception types for ullm - compatible with litellm exceptions.

UllmException(message, status_code=None, model=None, llm_provider=None)

Bases: Exception

Base exception for all ullm errors.

Source code in ullm/exceptions.py
def __init__(
    self,
    message: str,
    status_code: Optional[int] = None,
    model: Optional[str] = None,
    llm_provider: Optional[str] = None,
):
    super().__init__(message)
    self.message = message
    self.status_code = status_code
    self.model = model
    self.llm_provider = llm_provider

AuthenticationError(message, model=None, llm_provider=None)

Bases: UllmException

Raised when authentication fails (401).

Source code in ullm/exceptions.py
def __init__(self, message: str, model: Optional[str] = None, llm_provider: Optional[str] = None):
    super().__init__(message, status_code=401, model=model, llm_provider=llm_provider)

BadRequestError(message, model=None, llm_provider=None)

Bases: UllmException

Raised for invalid requests (400).

Source code in ullm/exceptions.py
def __init__(self, message: str, model: Optional[str] = None, llm_provider: Optional[str] = None):
    super().__init__(message, status_code=400, model=model, llm_provider=llm_provider)

RateLimitError(message, model=None, llm_provider=None)

Bases: UllmException

Raised when rate limit is exceeded (429).

Source code in ullm/exceptions.py
def __init__(self, message: str, model: Optional[str] = None, llm_provider: Optional[str] = None):
    super().__init__(message, status_code=429, model=model, llm_provider=llm_provider)

Timeout(message, model=None, llm_provider=None)

Bases: UllmException

Raised on request timeout (504).

Source code in ullm/exceptions.py
def __init__(self, message: str, model: Optional[str] = None, llm_provider: Optional[str] = None):
    super().__init__(message, status_code=504, model=model, llm_provider=llm_provider)

APIError(message, status_code=500, model=None, llm_provider=None)

Bases: UllmException

Raised for general API errors (500+).

Source code in ullm/exceptions.py
def __init__(
    self, message: str, status_code: int = 500, model: Optional[str] = None, llm_provider: Optional[str] = None
):
    super().__init__(message, status_code=status_code, model=model, llm_provider=llm_provider)

ProviderNotFoundError(model)

Bases: UllmException

Raised when provider cannot be determined from model string.

Source code in ullm/exceptions.py
def __init__(self, model: str):
    super().__init__(f"Could not determine provider from model: {model}", model=model)

UnsupportedProviderError(provider, model)

Bases: UllmException

Raised when provider is not supported.

Source code in ullm/exceptions.py
def __init__(self, provider: str, model: str):
    super().__init__(f"Provider '{provider}' is not supported", model=model, llm_provider=provider)

(Full API reference coming soon)