Inference.Error exception (inference v0.1.0)

Copy Markdown View Source

Stable error envelope for inference failures.

Summary

Types

category()

@type category() ::
  :invalid
  | :missing_dependency
  | :missing_credentials
  | :timeout
  | :rate_limited
  | :invalid_response
  | :unsupported_capability
  | :adapter_exception
  | :provider_error

t()

@type t() :: %Inference.Error{
  __exception__: true,
  category: category(),
  message: String.t(),
  metadata: map(),
  reason: atom()
}

Functions

adapter_exception(exception, metadata \\ [])

invalid(reason, message, metadata \\ [])

missing_credentials(provider, metadata \\ [])

missing_dependency(module, metadata \\ [])

new(category, reason, message, metadata \\ %{})

@spec new(category(), atom(), String.t(), keyword() | map()) :: t()

provider_error(reason, metadata \\ [])

unsupported_capability(capability, metadata \\ [])