Lookup table mapping {provider_id, task} pairs to provider module atoms.
Usage
{:ok, HuggingfaceClient.Provider.Groq} = ProviderRegistry.get("groq", "conversational")
{:error, %InputError{}} = ProviderRegistry.get("groq", "image-segmentation")
Summary
Functions
Returns all registered {provider_id, task} pairs.
Resolves a {provider, task} pair to a provider module atom.
Returns a deduplicated, sorted list of all known provider ID strings.
Types
Functions
Returns all registered {provider_id, task} pairs.
@spec get(provider(), task()) :: {:ok, module()} | {:error, HuggingfaceClient.Error.InputError.t()}
Resolves a {provider, task} pair to a provider module atom.
Special cases:
"auto"ornil→ always resolves toHfInference(any task including nil)"hf-inference"+ nil task →HfInference- unknown provider →
{:error, InputError} - known provider + unsupported task →
{:error, InputError}
@spec providers() :: [String.t()]
Returns a deduplicated, sorted list of all known provider ID strings.