pub struct ProviderCapabilities {
pub streaming: bool,
pub reasoning: bool,
pub tool_calls: bool,
pub parallel_tool_calls: bool,
pub structured_output: bool,
pub usage: bool,
pub context_cancellation: bool,
pub context_deadline: bool,
}Expand description
Provider capability metadata used by hosts and conformance tests.
Capabilities are descriptive, not a security boundary. When a provider
declares support for an optional capability, it should pass the matching
provider conformance cases. Unsupported direct calls should return
ProviderError::Unsupported rather than panic.
Fields§
§streaming: bool§reasoning: boolMaps provider reasoning/thinking output to Message or
StreamEvent::Reasoning.
tool_calls: boolSupports model tool-call requests.
parallel_tool_calls: boolPreserves multiple tool calls in one assistant turn.
structured_output: boolAccepts ModelOptions::structured as a provider-side best-effort
constraint.
usage: boolReports provider token usage when the backend supplies it.
context_cancellation: boolCooperatively observes cancellation from ProviderRequestContext.
context_deadline: boolCooperatively observes deadlines from ProviderRequestContext.
Implementations§
Trait Implementations§
Source§impl Clone for ProviderCapabilities
impl Clone for ProviderCapabilities
Source§fn clone(&self) -> ProviderCapabilities
fn clone(&self) -> ProviderCapabilities
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 ProviderCapabilities
impl Debug for ProviderCapabilities
Source§impl Default for ProviderCapabilities
impl Default for ProviderCapabilities
Source§fn default() -> ProviderCapabilities
fn default() -> ProviderCapabilities
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for ProviderCapabilities
impl<'de> Deserialize<'de> for ProviderCapabilities
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for ProviderCapabilities
Source§impl PartialEq for ProviderCapabilities
impl PartialEq for ProviderCapabilities
Source§impl Serialize for ProviderCapabilities
impl Serialize for ProviderCapabilities
impl StructuralPartialEq for ProviderCapabilities
Auto Trait Implementations§
impl Freeze for ProviderCapabilities
impl RefUnwindSafe for ProviderCapabilities
impl Send for ProviderCapabilities
impl Sync for ProviderCapabilities
impl Unpin for ProviderCapabilities
impl UnsafeUnpin for ProviderCapabilities
impl UnwindSafe for ProviderCapabilities
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