pub struct Capabilities {
pub supports_tools: bool,
pub supports_vision: bool,
pub supports_reasoning: ReasoningCapability,
pub max_context_tokens: Option<usize>,
pub emits_thinking_signature: bool,
}Expand description
Capabilities of a model as advertised by its provider adapter.
Fields§
§supports_tools: boolNative tool/function calling supported.
supports_vision: boolVision (image inputs on user messages) supported.
supports_reasoning: ReasoningCapabilityReasoning controls exposed — binary, enumerated, or numeric.
max_context_tokens: Option<usize>Maximum context window in tokens, if the adapter knows.
emits_thinking_signature: boolDoes the provider emit a verifiable “thinking signature” that
must round-trip on the next request (Anthropic’s extended
thinking)? When true, the reducer preserves the signature on
the assistant message via thinking_signature.
Implementations§
Source§impl Capabilities
impl Capabilities
Sourcepub fn from_legacy(caps: &ModelCapabilities) -> Self
pub fn from_legacy(caps: &ModelCapabilities) -> Self
Construct from the adapter-layer ModelCapabilities. Used by
provider wrappers so we don’t duplicate adapter-side capability
logic.
Sourcepub fn with_thinking_signature(self) -> Self
pub fn with_thinking_signature(self) -> Self
Builder: mark that this provider round-trips thinking signatures.
Trait Implementations§
Source§impl Clone for Capabilities
impl Clone for Capabilities
Source§fn clone(&self) -> Capabilities
fn clone(&self) -> Capabilities
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 moreAuto Trait Implementations§
impl Freeze for Capabilities
impl RefUnwindSafe for Capabilities
impl Send for Capabilities
impl Sync for Capabilities
impl Unpin for Capabilities
impl UnsafeUnpin for Capabilities
impl UnwindSafe for Capabilities
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> 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