pub enum ToolChoice {
Auto,
Named(String),
}Expand description
Stable since 0.63.0
Tool definition and argument validation.
Forces or leaves-to-the-model which tool the next assistant turn must
call. `Auto` is the existing default behavior (model decides freely,
including calling no tool). `Named` forces exactly one tool by name —
only honored by providers with native forced-tool-choice support; owned
(in-band XML) dialects and providers without the feature silently treat
it as `Auto` (see each provider's mapping).Variants§
Auto
Let the model choose freely (the existing default behavior).
Named(String)
Force the next assistant turn to call the named tool. Only honored by providers with native forced-tool-choice support.
Trait Implementations§
Source§impl Clone for ToolChoice
impl Clone for ToolChoice
Source§fn clone(&self) -> ToolChoice
fn clone(&self) -> ToolChoice
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 ToolChoice
impl Debug for ToolChoice
Source§impl Default for ToolChoice
impl Default for ToolChoice
Source§fn default() -> ToolChoice
fn default() -> ToolChoice
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for ToolChoice
impl<'de> Deserialize<'de> for ToolChoice
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 ToolChoice
Source§impl PartialEq for ToolChoice
impl PartialEq for ToolChoice
Source§impl Serialize for ToolChoice
impl Serialize for ToolChoice
impl StructuralPartialEq for ToolChoice
Auto Trait Implementations§
impl Freeze for ToolChoice
impl RefUnwindSafe for ToolChoice
impl Send for ToolChoice
impl Sync for ToolChoice
impl Unpin for ToolChoice
impl UnsafeUnpin for ToolChoice
impl UnwindSafe for ToolChoice
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,
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§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.