pub struct FunctionTool { /* private fields */ }Implementations§
Source§impl FunctionTool
impl FunctionTool
pub fn new<F, Fut>( name: impl Into<String>, description: impl Into<String>, handler: F, ) -> Self
pub fn with_long_running(self, long_running: bool) -> Self
pub fn with_parameters_schema<T>(self) -> Selfwhere
T: JsonSchema + Serialize,
pub fn with_response_schema<T>(self) -> Selfwhere
T: JsonSchema + Serialize,
Sourcepub fn with_scopes(self, scopes: &[&'static str]) -> Self
pub fn with_scopes(self, scopes: &[&'static str]) -> Self
pub fn parameters_schema(&self) -> Option<&Value>
pub fn response_schema(&self) -> Option<&Value>
Trait Implementations§
Source§impl Tool for FunctionTool
impl Tool for FunctionTool
Source§fn enhanced_description(&self) -> String
fn enhanced_description(&self) -> String
Returns an enhanced description for long-running tools that includes a note warning the model not to call the tool again if it’s already pending.
fn name(&self) -> &str
fn description(&self) -> &str
Source§fn is_long_running(&self) -> bool
fn is_long_running(&self) -> bool
Indicates whether the tool is a long-running operation.
Long-running tools typically return a task ID immediately and
complete the operation asynchronously.
fn parameters_schema(&self) -> Option<Value>
fn response_schema(&self) -> Option<Value>
Source§fn required_scopes(&self) -> &[&str]
fn required_scopes(&self) -> &[&str]
Returns the scopes required to execute this tool. Read more
fn execute<'life0, 'async_trait>(
&'life0 self,
ctx: Arc<dyn ToolContext>,
args: Value,
) -> Pin<Box<dyn Future<Output = Result<Value>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Auto Trait Implementations§
impl Freeze for FunctionTool
impl !RefUnwindSafe for FunctionTool
impl Send for FunctionTool
impl Sync for FunctionTool
impl Unpin for FunctionTool
impl UnsafeUnpin for FunctionTool
impl !UnwindSafe for FunctionTool
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> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request