pub struct ElaborateEvaluation;Expand description
Selects the branch with the highest total token usage.
Prefer this strategy when depth and thoroughness are the priority and you want the most detailed response among the branches.
Trait Implementations§
Source§impl EvaluationStrategy for ElaborateEvaluation
impl EvaluationStrategy for ElaborateEvaluation
Source§fn evaluate<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
_prompts: &'life1 [AgentMessage],
outcomes: &'life2 [ParallelLoopOutcome],
_tx: &'life3 UnboundedSender<AgentEvent>,
_cancel: CancellationToken,
) -> Pin<Box<dyn Future<Output = (EvaluationDecision, Usage)> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn evaluate<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
_prompts: &'life1 [AgentMessage],
outcomes: &'life2 [ParallelLoopOutcome],
_tx: &'life3 UnboundedSender<AgentEvent>,
_cancel: CancellationToken,
) -> Pin<Box<dyn Future<Output = (EvaluationDecision, Usage)> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Evaluate all branch outcomes and select the best one.
Auto Trait Implementations§
impl Freeze for ElaborateEvaluation
impl RefUnwindSafe for ElaborateEvaluation
impl Send for ElaborateEvaluation
impl Sync for ElaborateEvaluation
impl Unpin for ElaborateEvaluation
impl UnsafeUnpin for ElaborateEvaluation
impl UnwindSafe for ElaborateEvaluation
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