pub struct ProviderConfig {
pub base_url: String,
pub provider_type: Option<String>,
pub wire_api: Option<String>,
pub api_key: Option<String>,
pub bearer_token: Option<String>,
pub azure: Option<AzureOptions>,
}Expand description
Provider configuration for BYOK (Bring Your Own Key).
Fields§
§base_url: String§provider_type: Option<String>§wire_api: Option<String>§api_key: Option<String>§bearer_token: Option<String>§azure: Option<AzureOptions>Implementations§
Source§impl ProviderConfig
impl ProviderConfig
Sourcepub const ENV_API_KEY: &'static str = "COPILOT_SDK_BYOK_API_KEY"
pub const ENV_API_KEY: &'static str = "COPILOT_SDK_BYOK_API_KEY"
Environment variable for API key
Sourcepub const ENV_BASE_URL: &'static str = "COPILOT_SDK_BYOK_BASE_URL"
pub const ENV_BASE_URL: &'static str = "COPILOT_SDK_BYOK_BASE_URL"
Environment variable for base URL
Sourcepub const ENV_PROVIDER_TYPE: &'static str = "COPILOT_SDK_BYOK_PROVIDER_TYPE"
pub const ENV_PROVIDER_TYPE: &'static str = "COPILOT_SDK_BYOK_PROVIDER_TYPE"
Environment variable for provider type
Sourcepub fn is_env_configured() -> bool
pub fn is_env_configured() -> bool
Check if BYOK environment variables are configured.
Returns true if COPILOT_SDK_BYOK_API_KEY is set and non-empty.
Sourcepub fn from_env() -> Option<Self>
pub fn from_env() -> Option<Self>
Load ProviderConfig from COPILOT_SDK_BYOK_* environment variables.
Returns Some(ProviderConfig) if API key is set, None otherwise.
Environment variables:
COPILOT_SDK_BYOK_API_KEY(required): API key for the providerCOPILOT_SDK_BYOK_BASE_URL(optional): Base URL (defaults to OpenAI)COPILOT_SDK_BYOK_PROVIDER_TYPE(optional): Provider type (defaults to “openai”)
Sourcepub fn model_from_env() -> Option<String>
pub fn model_from_env() -> Option<String>
Load model from COPILOT_SDK_BYOK_MODEL environment variable.
Returns Some(model) if set and non-empty, None otherwise.
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more