pub struct DynamicScore { /* private fields */ }Expand description
A score question whose rubric is supplied at runtime.
Implementations§
Source§impl DynamicScore
impl DynamicScore
Sourcepub fn new<const N: usize, D: Serialize>(
instructions: impl Serialize,
levels: [D; N],
) -> Result<Self, ProviderError>
pub fn new<const N: usize, D: Serialize>( instructions: impl Serialize, levels: [D; N], ) -> Result<Self, ProviderError>
Define a fixed rubric with two to ten levels, checked at compile time. Levels run from low to high; descriptions may be structured.
ⓘ
use rig_typesafeai::DynamicScore;
let _ = DynamicScore::new("Rate severity", ["Only one level"]);Sourcepub fn try_from_iter<I, D>(
instructions: impl Serialize,
levels: I,
) -> Result<Self, ProviderError>where
I: IntoIterator<Item = D>,
D: Serialize,
pub fn try_from_iter<I, D>(
instructions: impl Serialize,
levels: I,
) -> Result<Self, ProviderError>where
I: IntoIterator<Item = D>,
D: Serialize,
Define a runtime-supplied rubric, validating its count at construction.
Trait Implementations§
Source§impl Clone for DynamicScore
impl Clone for DynamicScore
Source§impl Debug for DynamicScore
impl Debug for DynamicScore
Source§impl Query for DynamicScore
impl Query for DynamicScore
Source§type Output = DynamicScoreAnswer
type Output = DynamicScoreAnswer
The validated application answer shape.
Source§fn decode(&self, response: Answer) -> Result<Self::Output, ProviderError>
fn decode(&self, response: Answer) -> Result<Self::Output, ProviderError>
Validate and convert a deserialized response. Composite queries delegate
to their fields, keeping validation inside the evaluation error boundary.
Source§fn named(self, id: impl Into<String>) -> Result<NamedQuery<Self>, ProviderError>where
Self: Sized,
fn named(self, id: impl Into<String>) -> Result<NamedQuery<Self>, ProviderError>where
Self: Sized,
Give a standalone question a runtime ID. Named struct fields do not need this.
Source§fn join<Q: Query>(self, other: Q) -> JoinedQuery<Self, Q>where
Self: Sized,
fn join<Q: Query>(self, other: Q) -> JoinedQuery<Self, Q>where
Self: Sized,
Flatten two object-shaped queries into one evaluation request.
Duplicate IDs are rejected before sending the request. Child queries must
serialize with stable field names: decoding uses those names to partition
the response before delegating to each child.
Source§fn map<A, F>(self, map: F) -> MappedQuery<Self, F>
fn map<A, F>(self, map: F) -> MappedQuery<Self, F>
Project validated answers into an application value.
Auto Trait Implementations§
impl Freeze for DynamicScore
impl RefUnwindSafe for DynamicScore
impl Send for DynamicScore
impl Sync for DynamicScore
impl Unpin for DynamicScore
impl UnsafeUnpin for DynamicScore
impl UnwindSafe for DynamicScore
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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> IntoToolOutput for Twhere
T: Serialize + 'static,
impl<T> IntoToolOutput for Twhere
T: Serialize + 'static,
Source§fn into_tool_output(self) -> Result<ToolOutput, ToolExecutionError>
fn into_tool_output(self) -> Result<ToolOutput, ToolExecutionError>
Convert this value without routing structured data through a string.