pub struct ProviderCapabilities {Show 14 fields
pub supports_tools: bool,
pub supports_streaming: bool,
pub supports_reasoning: bool,
pub supports_interleaved_reasoning: bool,
pub supports_images: bool,
pub supports_documents: bool,
pub supports_prompt_cache: bool,
pub supports_compaction: bool,
pub compaction_strategy: Option<ProviderCompactionStrategy>,
pub supports_tool_result_media: bool,
pub requires_non_empty_assistant_content: bool,
pub tool_call_id_policy: ToolCallIdPolicy,
pub max_input_tokens: u64,
pub max_output_tokens: u64,
}Expand description
Capability flags advertised by a provider adapter.
Fields§
§supports_tools: bool§supports_streaming: bool§supports_reasoning: bool§supports_interleaved_reasoning: bool§supports_images: bool§supports_documents: bool§supports_prompt_cache: bool§supports_compaction: bool§compaction_strategy: Option<ProviderCompactionStrategy>How the provider implements compaction. This remains exposed for
diagnostics and external callers, but runtime planning asks the
provider for a CompactionWindow instead of branching on this value.
supports_tool_result_media: bool§requires_non_empty_assistant_content: bool§tool_call_id_policy: ToolCallIdPolicy§max_input_tokens: u64§max_output_tokens: u64Trait 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§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 JsonSchema for ProviderCapabilities
impl JsonSchema for ProviderCapabilities
Source§fn schema_name() -> String
fn schema_name() -> String
The name of the generated JSON Schema. Read more
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Returns a string that uniquely identifies the schema produced by this type. Read more
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Generates a JSON Schema for this type. Read more
Source§fn is_referenceable() -> bool
fn is_referenceable() -> bool
Whether JSON Schemas generated for this type should be re-used where possible using the
$ref keyword. Read moreSource§impl PartialEq for ProviderCapabilities
impl PartialEq for ProviderCapabilities
Source§fn eq(&self, other: &ProviderCapabilities) -> bool
fn eq(&self, other: &ProviderCapabilities) -> bool
Tests for
self and other values to be equal, and is used by ==.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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.