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>) -> ModelPolicy
pub fn with_small(self, model: impl Into<String>) -> ModelPolicy
Set small model.
Sourcepub fn with_medium(self, model: impl Into<String>) -> ModelPolicy
pub fn with_medium(self, model: impl Into<String>) -> ModelPolicy
Set medium model.
Sourcepub fn with_large(self, model: impl Into<String>) -> ModelPolicy
pub fn with_large(self, model: impl Into<String>) -> ModelPolicy
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§fn default() -> ModelPolicy
fn default() -> ModelPolicy
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for ModelPolicy
impl<'de> Deserialize<'de> for ModelPolicy
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<ModelPolicy, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<ModelPolicy, <__D as Deserializer<'de>>::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
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
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 UnsafeUnpin 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