pub struct ResponseValidator;Expand description
Validates LLM responses against a list of ValidationRules.
Implementations§
Source§impl ResponseValidator
impl ResponseValidator
Sourcepub fn validate(
&self,
response: &str,
rules: &[ValidationRule],
) -> ValidationResult
pub fn validate( &self, response: &str, rules: &[ValidationRule], ) -> ValidationResult
Validate response against every rule in rules.
All rules are evaluated even when earlier ones fail, so the full list of violations is always available.
Sourcepub fn validate_all(
&self,
responses: &[&str],
rules: &[ValidationRule],
) -> Vec<ValidationResult>
pub fn validate_all( &self, responses: &[&str], rules: &[ValidationRule], ) -> Vec<ValidationResult>
Validate each response in responses against rules.
Returns one ValidationResult per response in the same order.
Sourcepub fn pass_rate(&self, results: &[ValidationResult]) -> f64
pub fn pass_rate(&self, results: &[ValidationResult]) -> f64
Fraction of results that passed all rules.
Returns 0.0 when results is empty.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for ResponseValidator
impl RefUnwindSafe for ResponseValidator
impl Send for ResponseValidator
impl Sync for ResponseValidator
impl Unpin for ResponseValidator
impl UnsafeUnpin for ResponseValidator
impl UnwindSafe for ResponseValidator
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<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request