pub struct BackendCapability {
pub multi_turn: bool,
pub streaming: bool,
pub cost_tier: u8,
pub latency_tier: u8,
}Expand description
Backend capabilities for making routing decisions.
Default values represent a generic mid-tier backend (multi-turn, streaming,
cost=2, latency=2). Use BackendCapability::defaults() for pre-configured
values for known backends.
Fields§
§multi_turn: boolSupports multi-turn conversations.
streaming: boolSupports streaming output.
cost_tier: u8Relative cost (lower is cheaper). Unitless; used for comparison only.
latency_tier: u8Relative latency (lower is faster). Unitless; used for comparison only.
Implementations§
Source§impl BackendCapability
impl BackendCapability
Sourcepub fn defaults() -> HashMap<BackendType, BackendCapability>
pub fn defaults() -> HashMap<BackendType, BackendCapability>
Default capabilities for known backends.
Trait Implementations§
Source§impl Clone for BackendCapability
impl Clone for BackendCapability
Source§fn clone(&self) -> BackendCapability
fn clone(&self) -> BackendCapability
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 BackendCapability
impl Debug for BackendCapability
Auto Trait Implementations§
impl Freeze for BackendCapability
impl RefUnwindSafe for BackendCapability
impl Send for BackendCapability
impl Sync for BackendCapability
impl Unpin for BackendCapability
impl UnwindSafe for BackendCapability
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