pub struct ProviderConfig {
pub provider: ProviderType,
pub model: String,
pub api_key: Option<String>,
pub base_url: Option<String>,
pub options: HashMap<String, Value>,
}Expand description
Provider configuration
Fields§
§provider: ProviderTypeProvider type
model: StringModel name
api_key: Option<String>API key (if required)
base_url: Option<String>Base URL (for custom endpoints)
options: HashMap<String, Value>Additional provider-specific options
Implementations§
Source§impl ProviderConfig
impl ProviderConfig
Sourcepub fn new(provider: ProviderType, model: String) -> Self
pub fn new(provider: ProviderType, model: String) -> Self
Create a new provider config
Sourcepub fn with_api_key<S: Into<String>>(self, api_key: S) -> Self
pub fn with_api_key<S: Into<String>>(self, api_key: S) -> Self
Set API key
Sourcepub fn with_base_url<S: Into<String>>(self, base_url: S) -> Self
pub fn with_base_url<S: Into<String>>(self, base_url: S) -> Self
Set base URL
Sourcepub fn with_option(self, key: impl Into<String>, value: Value) -> Self
pub fn with_option(self, key: impl Into<String>, value: Value) -> Self
Set a provider-specific option.
Sourcepub fn with_region(self, region: impl Into<String>) -> Self
pub fn with_region(self, region: impl Into<String>) -> Self
Set the AWS region (for Bedrock) or GCP region (for Vertex AI).
Sourcepub fn with_project_id(self, project_id: impl Into<String>) -> Self
pub fn with_project_id(self, project_id: impl Into<String>) -> Self
Set the GCP project ID (for Vertex AI).
Trait Implementations§
Source§impl Clone for ProviderConfig
impl Clone for ProviderConfig
Source§fn clone(&self) -> ProviderConfig
fn clone(&self) -> ProviderConfig
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ProviderConfig
impl Debug for ProviderConfig
Source§impl<'de> Deserialize<'de> for ProviderConfig
impl<'de> Deserialize<'de> for ProviderConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for ProviderConfig
impl RefUnwindSafe for ProviderConfig
impl Send for ProviderConfig
impl Sync for ProviderConfig
impl Unpin for ProviderConfig
impl UnsafeUnpin for ProviderConfig
impl UnwindSafe for ProviderConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more