pub enum Provider {
Show 23 variants
Groq,
XaiGrok,
Ollama,
DeepSeek,
Anthropic,
AzureOpenAI,
HuggingFace,
TogetherAI,
OpenRouter,
Replicate,
BaiduWenxin,
TencentHunyuan,
IflytekSpark,
Moonshot,
ZhipuAI,
MiniMax,
OpenAI,
Qwen,
Gemini,
Mistral,
Cohere,
Perplexity,
AI21,
}Variants§
Groq
XaiGrok
Ollama
DeepSeek
Anthropic
AzureOpenAI
HuggingFace
TogetherAI
OpenRouter
Replicate
BaiduWenxin
TencentHunyuan
IflytekSpark
Moonshot
ZhipuAI
MiniMax
OpenAI
Qwen
Gemini
Mistral
Cohere
Perplexity
AI21
Implementations§
Source§impl Provider
impl Provider
Sourcepub fn default_chat_model(&self) -> &'static str
pub fn default_chat_model(&self) -> &'static str
Get the provider’s preferred default chat model.
These should mirror the values used inside ProviderConfigs.
Sourcepub fn default_multimodal_model(&self) -> Option<&'static str>
pub fn default_multimodal_model(&self) -> Option<&'static str>
Get the provider’s preferred multimodal model (if any).
Sourcepub fn env_prefix(&self) -> &'static str
pub fn env_prefix(&self) -> &'static str
Get the environment variable prefix for this provider.
Used by ConnectionOptions::hydrate_with_env to look up provider-specific
API keys (e.g., OPENAI_API_KEY, GROQ_API_KEY).
Source§impl Provider
Helper functions for provider classification
impl Provider
Helper functions for provider classification
Sourcepub fn is_config_driven(&self) -> bool
pub fn is_config_driven(&self) -> bool
Check if this provider is config-driven
Sourcepub fn is_independent(&self) -> bool
pub fn is_independent(&self) -> bool
Check if this provider is independent
Sourcepub fn config_driven_providers() -> &'static [Provider]
pub fn config_driven_providers() -> &'static [Provider]
Get all config-driven providers
Sourcepub fn independent_providers() -> &'static [Provider]
pub fn independent_providers() -> &'static [Provider]
Get all independent providers
Sourcepub fn all_providers() -> &'static [Provider]
pub fn all_providers() -> &'static [Provider]
Get all supported providers
Trait Implementations§
Source§impl ProviderClassification for Provider
impl ProviderClassification for Provider
Source§fn is_config_driven(&self) -> bool
fn is_config_driven(&self) -> bool
Check if this provider is config-driven (uses GenericAdapter)
Source§fn supports_custom_config(&self) -> bool
fn supports_custom_config(&self) -> bool
Check if this provider supports custom configuration
Source§fn adapter_type(&self) -> AdapterType
fn adapter_type(&self) -> AdapterType
Get the adapter type for this provider
Source§fn get_default_config(&self) -> Result<ProviderConfig, AiLibError>
fn get_default_config(&self) -> Result<ProviderConfig, AiLibError>
Get the default configuration for this provider
impl Copy for Provider
impl StructuralPartialEq for Provider
Auto Trait Implementations§
impl Freeze for Provider
impl RefUnwindSafe for Provider
impl Send for Provider
impl Sync for Provider
impl Unpin for Provider
impl UnwindSafe for Provider
Blanket Implementations§
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
🔬This is a nightly-only experimental API. (
clone_to_uninit)