pub struct StructuredDirective {
pub force_tool: Option<String>,
pub response_format: Option<ResponseFormat>,
}Expand description
Instruction telling a provider how to enforce structured output for a call.
Carries the union of intents; each provider honors what it supports and
ignores the rest (e.g. Anthropic has no response_format, so it only acts
on force_tool). The default (force_tool: None, response_format: None)
reproduces an ordinary completion, which is why the trait’s default
complete_structured impl is behavior-preserving.
Fields§
§force_tool: Option<String>Force the model to call exactly this tool (provider tool_choice).
response_format: Option<ResponseFormat>Request a provider-native response_format (OpenAI-compatible only).
Trait Implementations§
Source§impl Clone for StructuredDirective
impl Clone for StructuredDirective
Source§fn clone(&self) -> StructuredDirective
fn clone(&self) -> StructuredDirective
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for StructuredDirective
impl Debug for StructuredDirective
Source§impl Default for StructuredDirective
impl Default for StructuredDirective
Source§fn default() -> StructuredDirective
fn default() -> StructuredDirective
Returns the “default value” for a type. Read more
Source§impl PartialEq for StructuredDirective
impl PartialEq for StructuredDirective
Source§fn eq(&self, other: &StructuredDirective) -> bool
fn eq(&self, other: &StructuredDirective) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for StructuredDirective
Auto Trait Implementations§
impl Freeze for StructuredDirective
impl RefUnwindSafe for StructuredDirective
impl Send for StructuredDirective
impl Sync for StructuredDirective
impl Unpin for StructuredDirective
impl UnsafeUnpin for StructuredDirective
impl UnwindSafe for StructuredDirective
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more