pub struct ResponsesToolDefinition {
pub kind: String,
pub name: String,
pub parameters: Value,
pub strict: bool,
pub description: String,
pub config: Map<String, Value>,
}Expand description
The definition of a tool response, repurposed for OpenAI’s Responses API.
Fields§
§kind: StringThe type of tool.
name: StringTool name
parameters: ValueParameters - this should be a JSON schema. Tools should additionally ensure an “additionalParameters” field has been added with the value set to false, as this is required if using OpenAI’s strict mode (enabled by default).
strict: boolWhether to use strict mode. Enabled by default as it allows for improved efficiency.
description: StringTool description.
config: Map<String, Value>Additional provider-specific configuration for hosted tools.
Implementations§
Source§impl ResponsesToolDefinition
impl ResponsesToolDefinition
Sourcepub fn function(
name: impl Into<String>,
description: impl Into<String>,
parameters: Value,
) -> Self
pub fn function( name: impl Into<String>, description: impl Into<String>, parameters: Value, ) -> Self
Creates a function tool definition.
Sourcepub fn hosted(kind: impl Into<String>) -> Self
pub fn hosted(kind: impl Into<String>) -> Self
Creates a hosted tool definition for an arbitrary hosted tool type.
Sourcepub fn web_search() -> Self
pub fn web_search() -> Self
Creates a hosted web_search tool definition.
Sourcepub fn file_search() -> Self
pub fn file_search() -> Self
Creates a hosted file_search tool definition.
Sourcepub fn computer_use() -> Self
pub fn computer_use() -> Self
Creates a hosted computer_use tool definition.
Sourcepub fn with_config(self, key: impl Into<String>, value: Value) -> Self
pub fn with_config(self, key: impl Into<String>, value: Value) -> Self
Adds hosted-tool configuration fields.
Trait Implementations§
Source§impl Clone for ResponsesToolDefinition
impl Clone for ResponsesToolDefinition
Source§fn clone(&self) -> ResponsesToolDefinition
fn clone(&self) -> ResponsesToolDefinition
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ResponsesToolDefinition
impl Debug for ResponsesToolDefinition
Source§impl<'de> Deserialize<'de> for ResponsesToolDefinition
impl<'de> Deserialize<'de> for ResponsesToolDefinition
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>,
Source§impl From<ToolDefinition> for ResponsesToolDefinition
impl From<ToolDefinition> for ResponsesToolDefinition
Source§fn from(value: ToolDefinition) -> Self
fn from(value: ToolDefinition) -> Self
Source§impl PartialEq for ResponsesToolDefinition
impl PartialEq for ResponsesToolDefinition
Source§fn eq(&self, other: &ResponsesToolDefinition) -> bool
fn eq(&self, other: &ResponsesToolDefinition) -> bool
self and other values to be equal, and is used by ==.Source§impl Serialize for ResponsesToolDefinition
impl Serialize for ResponsesToolDefinition
impl StructuralPartialEq for ResponsesToolDefinition
Auto Trait Implementations§
impl Freeze for ResponsesToolDefinition
impl RefUnwindSafe for ResponsesToolDefinition
impl Send for ResponsesToolDefinition
impl Sync for ResponsesToolDefinition
impl Unpin for ResponsesToolDefinition
impl UnsafeUnpin for ResponsesToolDefinition
impl UnwindSafe for ResponsesToolDefinition
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
Source§impl<T> CloneDebuggableStorage for Twhere
T: DebuggableStorage + Clone,
impl<T> CloneDebuggableStorage for Twhere
T: DebuggableStorage + Clone,
fn clone_storage(&self) -> Box<dyn CloneDebuggableStorage>
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> CloneableStorage for T
impl<T> CloneableStorage for T
fn clone_storage(&self) -> Box<dyn CloneableStorage>
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> 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>
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>
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