pub struct TransparentEvaluation;Expand description
Single-branch pass-through — panics if more than one branch is present.
Use this when you want the evaluational-parallelism plumbing (tracing events,
ParallelLoopResult) without the overhead of running multiple branches.
The standard agent_loop case is just agent_loop_parallel with one config
and this strategy.
Trait Implementations§
Source§impl EvaluationStrategy for TransparentEvaluation
impl EvaluationStrategy for TransparentEvaluation
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 TransparentEvaluation
impl RefUnwindSafe for TransparentEvaluation
impl Send for TransparentEvaluation
impl Sync for TransparentEvaluation
impl Unpin for TransparentEvaluation
impl UnsafeUnpin for TransparentEvaluation
impl UnwindSafe for TransparentEvaluation
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