pub struct OpenaiProviderConfig {
pub api_key: String,
pub base_url: Option<String>,
pub default_model: String,
pub timeout_secs: Option<u64>,
pub max_concurrency: Option<usize>,
pub network_retry: Option<NetworkRetryPolicy>,
pub pricing: Option<PricingTable>,
pub cache_ttl_secs: Option<u64>,
pub cache_max_entries: Option<usize>,
}Expand description
Configuration for an OpenAI-compatible provider.
Fields§
§api_key: StringAPI key for authentication.
base_url: Option<String>Base URL override (defaults to provider’s standard endpoint).
default_model: StringDefault model to use (e.g., “gpt-4o”).
timeout_secs: Option<u64>Optional per-provider timeout override (seconds).
Overrides global timeout_secs when set.
max_concurrency: Option<usize>Optional max concurrency for this provider.
network_retry: Option<NetworkRetryPolicy>Optional network retry policy for transient failures.
pricing: Option<PricingTable>Optional pricing table for cost estimation.
cache_ttl_secs: Option<u64>Optional response cache TTL in seconds (materialized-only). Absent = cache disabled for this provider.
cache_max_entries: Option<usize>Optional maximum cache entries (LRU eviction boundary). When set, oldest entries are evicted when the cache exceeds this size. When absent, the cache is unbounded.
Trait Implementations§
Source§impl Clone for OpenaiProviderConfig
impl Clone for OpenaiProviderConfig
Source§fn clone(&self) -> OpenaiProviderConfig
fn clone(&self) -> OpenaiProviderConfig
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<'de> Deserialize<'de> for OpenaiProviderConfig
impl<'de> Deserialize<'de> for OpenaiProviderConfig
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 OpenaiProviderConfig
impl RefUnwindSafe for OpenaiProviderConfig
impl Send for OpenaiProviderConfig
impl Sync for OpenaiProviderConfig
impl Unpin for OpenaiProviderConfig
impl UnsafeUnpin for OpenaiProviderConfig
impl UnwindSafe for OpenaiProviderConfig
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