pub enum ThinkingMode {
Adaptive,
Budget,
Effort,
None,
}Expand description
How thinking/reasoning is requested for a model.
Serde strings are the config.toml thinking values. Compatibility is
per-protocol (validated at catalog resolution): Anthropic Messages takes
adaptive | budget | none; OpenAI Responses takes effort | none.
Variants§
Adaptive
Anthropic thinking.type: "adaptive" + output_config.effort
(frontier models; older models reject it).
Budget
Anthropic thinking.type: "enabled" + a budget_tokens mapped from
Effort (e.g. Haiku 4.5).
Effort
OpenAI-style reasoning.effort.
None
Do not request thinking.
Implementations§
Source§impl ThinkingMode
impl ThinkingMode
Sourcepub fn default_for(protocol: Protocol) -> Self
pub fn default_for(protocol: Protocol) -> Self
Default mode when a catalog entry does not set thinking.
Sourcepub fn compatible_with(self, protocol: Protocol) -> bool
pub fn compatible_with(self, protocol: Protocol) -> bool
Whether this mode is servable over protocol.
Trait Implementations§
Source§impl Clone for ThinkingMode
impl Clone for ThinkingMode
Source§fn clone(&self) -> ThinkingMode
fn clone(&self) -> ThinkingMode
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 moreimpl Copy for ThinkingMode
Source§impl Debug for ThinkingMode
impl Debug for ThinkingMode
Source§impl<'de> Deserialize<'de> for ThinkingMode
impl<'de> Deserialize<'de> for ThinkingMode
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
Source§impl Display for ThinkingMode
impl Display for ThinkingMode
impl Eq for ThinkingMode
Source§impl Hash for ThinkingMode
impl Hash for ThinkingMode
Source§impl JsonSchema for ThinkingMode
impl JsonSchema for ThinkingMode
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 inline_schema() -> bool
fn inline_schema() -> bool
Whether JSON Schemas generated for this type should be included directly in parent schemas,
rather than being re-used where possible using the
$ref keyword. Read moreSource§impl PartialEq for ThinkingMode
impl PartialEq for ThinkingMode
Source§fn eq(&self, other: &ThinkingMode) -> bool
fn eq(&self, other: &ThinkingMode) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl Serialize for ThinkingMode
impl Serialize for ThinkingMode
impl StructuralPartialEq for ThinkingMode
Auto Trait Implementations§
impl Freeze for ThinkingMode
impl RefUnwindSafe for ThinkingMode
impl Send for ThinkingMode
impl Sync for ThinkingMode
impl Unpin for ThinkingMode
impl UnsafeUnpin for ThinkingMode
impl UnwindSafe for ThinkingMode
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>,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.