Skip to main content

ProviderClient

Trait ProviderClient 

Source
pub trait ProviderClient {
    type Input;
    type Error;

    // Required methods
    fn from_env() -> Result<Self, Self::Error>
       where Self: Sized;
    fn from_val(input: Self::Input) -> Result<Self, Self::Error>
       where Self: Sized;
}
Expand description

Abstracts over the ability to instantiate a client, either via environment variables or some Self::Input

Required Associated Types§

Source

type Input

Input accepted by ProviderClient::from_val.

Source

type Error

Error returned when client construction fails.

Required Methods§

Source

fn from_env() -> Result<Self, Self::Error>
where Self: Sized,

Create a client from the process’s environment.

Source

fn from_val(input: Self::Input) -> Result<Self, Self::Error>
where Self: Sized,

Create a client from an explicit provider-specific input value.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

Source§

impl ProviderClient for Client<AnthropicExt>

Source§

impl ProviderClient for Client<AzureExt>

Source§

impl ProviderClient for Client<ChatGPTExt>

Source§

impl ProviderClient for Client<CohereExt>

Source§

impl ProviderClient for Client<CopilotExt>

Source§

impl ProviderClient for Client<DeepSeekExt>

Source§

impl ProviderClient for Client<DoublewordExt>

Source§

impl ProviderClient for Client<GeminiExt>

Source§

impl ProviderClient for Client<GeminiInteractionsExt>

Source§

impl ProviderClient for Client<GroqExt>

Source§

impl ProviderClient for Client<HuggingFaceExt>

Source§

impl ProviderClient for Client<HyperbolicExt>

Source§

impl ProviderClient for Client<LlamafileExt>

Source§

impl ProviderClient for Client<MiniMaxAnthropicExt>

Source§

impl ProviderClient for Client<MiniMaxExt>

Source§

impl ProviderClient for Client<MiraExt>

Source§

impl ProviderClient for Client<MistralExt>

Source§

impl ProviderClient for Client<MoonshotAnthropicExt>

Source§

impl ProviderClient for Client<MoonshotExt>

Source§

impl ProviderClient for Client<OllamaExt>

Source§

impl ProviderClient for Client<OpenAICompletionsExt>

Source§

impl ProviderClient for Client<OpenAIResponsesExt>

Source§

impl ProviderClient for Client<OpenRouterExt>

Source§

impl ProviderClient for Client<PerplexityExt>

Source§

impl ProviderClient for Client<TogetherExt>

Source§

impl ProviderClient for Client<VoyageExt>

Source§

impl ProviderClient for Client<XAiExt>

Source§

impl ProviderClient for Client<XiaomiMimoAnthropicExt>

Source§

impl ProviderClient for Client<XiaomiMimoExt>

Source§

impl ProviderClient for Client<ZAiAnthropicExt>

Source§

impl ProviderClient for Client<ZAiExt>