pub struct ModelPolicy {
pub small: String,
pub medium: String,
pub large: String,
pub allow_large: bool,
pub max_latency_ms: Option<u64>,
pub max_cost_tier: CostTier,
}Expand description
Policy for selecting models based on cost/quality tradeoffs.
Fields§
§small: StringSmall/cheap model identifier.
medium: StringMedium model identifier.
large: StringLarge/expensive model identifier.
allow_large: boolWhether large model is allowed.
max_latency_ms: Option<u64>Maximum latency budget in ms.
max_cost_tier: CostTierMaximum cost tier allowed.
Implementations§
Source§impl ModelPolicy
impl ModelPolicy
Sourcepub fn model_for_tier(&self, tier: CostTier) -> &str
pub fn model_for_tier(&self, tier: CostTier) -> &str
Get the appropriate model for the given cost tier.
Sourcepub fn with_small(self, model: impl Into<String>) -> Self
pub fn with_small(self, model: impl Into<String>) -> Self
Set small model.
Sourcepub fn with_medium(self, model: impl Into<String>) -> Self
pub fn with_medium(self, model: impl Into<String>) -> Self
Set medium model.
Sourcepub fn with_large(self, model: impl Into<String>) -> Self
pub fn with_large(self, model: impl Into<String>) -> Self
Set large model.
Trait Implementations§
Source§impl Clone for ModelPolicy
impl Clone for ModelPolicy
Source§fn clone(&self) -> ModelPolicy
fn clone(&self) -> ModelPolicy
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 ModelPolicy
impl Debug for ModelPolicy
Source§impl Default for ModelPolicy
impl Default for ModelPolicy
Source§impl<'de> Deserialize<'de> for ModelPolicy
impl<'de> Deserialize<'de> for ModelPolicy
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
Source§impl PartialEq for ModelPolicy
impl PartialEq for ModelPolicy
Source§impl Serialize for ModelPolicy
impl Serialize for ModelPolicy
impl StructuralPartialEq for ModelPolicy
Auto Trait Implementations§
impl Freeze for ModelPolicy
impl RefUnwindSafe for ModelPolicy
impl Send for ModelPolicy
impl Sync for ModelPolicy
impl Unpin for ModelPolicy
impl UnwindSafe for ModelPolicy
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