pub struct GoalEvaluator { /* private fields */ }Expand description
Calls the LLM provider to decide whether a goal condition is met.
Implementations§
Source§impl GoalEvaluator
impl GoalEvaluator
Sourcepub fn new(provider: Arc<dyn ChatProvider>) -> Self
pub fn new(provider: Arc<dyn ChatProvider>) -> Self
Create an evaluator backed by provider.
Sourcepub async fn evaluate(
&self,
condition: &str,
transcript: &[Message],
) -> Result<GoalVerdict>
pub async fn evaluate( &self, condition: &str, transcript: &[Message], ) -> Result<GoalVerdict>
Evaluate condition against the given transcript.
Callers are responsible for pre-slicing transcript to the desired
number of recent messages (e.g. via
[AgentRuntime::transcript_tail]). This method uses the full slice
as-is — it does NOT perform any further truncation.
Calls the provider with a minimal YES/NO prompt (max_tokens ≈ 256 via
a short system instruction). The first word of the response determines
the verdict; any remaining text is kept as reason.
Auto Trait Implementations§
impl !RefUnwindSafe for GoalEvaluator
impl !UnwindSafe for GoalEvaluator
impl Freeze for GoalEvaluator
impl Send for GoalEvaluator
impl Sync for GoalEvaluator
impl Unpin for GoalEvaluator
impl UnsafeUnpin for GoalEvaluator
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<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> IntoMaybeUndefined<T> for T
impl<T> IntoMaybeUndefined<T> for T
Source§fn into_maybe_undefined(self) -> MaybeUndefined<T>
fn into_maybe_undefined(self) -> MaybeUndefined<T>
Converts this value into a three-state builder argument.
Source§impl<T> IntoOption<T> for T
impl<T> IntoOption<T> for T
Source§fn into_option(self) -> Option<T>
fn into_option(self) -> Option<T>
Converts this value into an optional builder argument.