pub enum SelectionStrategy {
CheapestFirst,
FastestFirst,
BestQuality,
Balanced {
cost_weight: f64,
latency_weight: f64,
quality_weight: f64,
},
}Expand description
Algorithm used to rank the eligible model candidates.
Variants§
CheapestFirst
Pick the model with the lowest cost_per_1k_tokens.
FastestFirst
Pick the model with the lowest avg_latency_ms.
BestQuality
Pick the model with the highest quality_score.
Balanced
Weighted linear combination of quality, cost, and latency.
Score = quality_weight * quality
− cost_weight * (cost / max_cost_in_set)
− latency_weight * (latency / max_latency_in_set)
Weights need not sum to 1.0; they are relative.
Trait Implementations§
Source§impl Clone for SelectionStrategy
impl Clone for SelectionStrategy
Source§fn clone(&self) -> SelectionStrategy
fn clone(&self) -> SelectionStrategy
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 moreAuto Trait Implementations§
impl Freeze for SelectionStrategy
impl RefUnwindSafe for SelectionStrategy
impl Send for SelectionStrategy
impl Sync for SelectionStrategy
impl Unpin for SelectionStrategy
impl UnsafeUnpin for SelectionStrategy
impl UnwindSafe for SelectionStrategy
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request