pub struct BasicRouter { /* private fields */ }Implementations§
Source§impl BasicRouter
impl BasicRouter
pub fn new( config: &Config, providers: HashMap<String, Vec<Arc<dyn Brain>>>, ) -> Self
Sourcepub async fn classify_with_model(
&self,
task: &str,
brain: &dyn Brain,
) -> TaskTier
pub async fn classify_with_model( &self, task: &str, brain: &dyn Brain, ) -> TaskTier
Classify a task using a tiny model call (only for ambiguous cases). §3.6: “Classification: heuristic + a tiny model call only if ambiguous.”
Trait Implementations§
Source§impl Router for BasicRouter
impl Router for BasicRouter
Source§fn select(
&self,
need: &RoutingNeed,
budget: &BudgetState,
) -> Vec<Arc<dyn Brain>>
fn select( &self, need: &RoutingNeed, budget: &BudgetState, ) -> Vec<Arc<dyn Brain>>
Returns an ordered fallback chain of Brains.
Primary brain first, fallbacks in order.
fn on_error(&self, _b: &dyn Brain, e: &BrainError) -> Retry
Auto Trait Implementations§
impl !RefUnwindSafe for BasicRouter
impl !UnwindSafe for BasicRouter
impl Freeze for BasicRouter
impl Send for BasicRouter
impl Sync for BasicRouter
impl Unpin for BasicRouter
impl UnsafeUnpin for BasicRouter
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
impl<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
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