pub struct StructuredOutputAgentTool { /* private fields */ }Expand description
A type-erased structured output tool that can be registered with the registry.
Implementations§
Source§impl StructuredOutputAgentTool
impl StructuredOutputAgentTool
Sourcepub fn from_type<T: JsonSchema + DeserializeOwned>() -> Self
pub fn from_type<T: JsonSchema + DeserializeOwned>() -> Self
Creates a new structured output agent tool from a type.
Trait Implementations§
Source§impl AgentTool for StructuredOutputAgentTool
impl AgentTool for StructuredOutputAgentTool
Source§fn description(&self) -> &str
fn description(&self) -> &str
Returns the tool description.
Source§fn invoke<'life0, 'life1, 'async_trait>(
&'life0 self,
input: Value,
_context: &'life1 ToolContext,
) -> Pin<Box<dyn Future<Output = Result<ToolResult2, String>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn invoke<'life0, 'life1, 'async_trait>(
&'life0 self,
input: Value,
_context: &'life1 ToolContext,
) -> Pin<Box<dyn Future<Output = Result<ToolResult2, String>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Invokes the tool asynchronously.
Source§fn supports_hot_reload(&self) -> bool
fn supports_hot_reload(&self) -> bool
Whether the tool supports hot reloading.
Source§fn is_dynamic(&self) -> bool
fn is_dynamic(&self) -> bool
Whether this is a dynamically loaded tool.
Auto Trait Implementations§
impl Freeze for StructuredOutputAgentTool
impl RefUnwindSafe for StructuredOutputAgentTool
impl Send for StructuredOutputAgentTool
impl Sync for StructuredOutputAgentTool
impl Unpin for StructuredOutputAgentTool
impl UnwindSafe for StructuredOutputAgentTool
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> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<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>
Converts
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>
Converts
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 moreCreates a shared type from an unshared type.