pub struct SimpleToolRegistry { /* private fields */ }Expand description
简单工具注册中心实现
Foundation 层的具体实现
Implementations§
Source§impl SimpleToolRegistry
impl SimpleToolRegistry
Sourcepub fn new() -> SimpleToolRegistry
pub fn new() -> SimpleToolRegistry
创建新的注册中心
Trait Implementations§
Source§impl Default for SimpleToolRegistry
impl Default for SimpleToolRegistry
Source§fn default() -> SimpleToolRegistry
fn default() -> SimpleToolRegistry
Returns the “default value” for a type. Read more
Source§impl ToolRegistry for SimpleToolRegistry
impl ToolRegistry for SimpleToolRegistry
Source§fn unregister(&mut self, name: &str) -> Result<bool, AgentError>
fn unregister(&mut self, name: &str) -> Result<bool, AgentError>
移除工具
Source§fn list(&self) -> Vec<ToolDescriptor>
fn list(&self) -> Vec<ToolDescriptor>
列出所有工具
Source§fn list_names(&self) -> Vec<String>
fn list_names(&self) -> Vec<String>
列出所有工具名称
Source§fn register_all(&mut self, tools: Vec<Arc<dyn Tool>>) -> Result<(), AgentError>
fn register_all(&mut self, tools: Vec<Arc<dyn Tool>>) -> Result<(), AgentError>
批量注册工具
Source§fn execute<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
name: &'life1 str,
input: ToolInput,
ctx: &'life2 AgentContext,
) -> Pin<Box<dyn Future<Output = Result<ToolResult, AgentError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
fn execute<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
name: &'life1 str,
input: ToolInput,
ctx: &'life2 AgentContext,
) -> Pin<Box<dyn Future<Output = Result<ToolResult, AgentError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
执行工具
Source§fn to_llm_tools(&self) -> Vec<LLMTool>
fn to_llm_tools(&self) -> Vec<LLMTool>
转换为 LLM Tools
Auto Trait Implementations§
impl Freeze for SimpleToolRegistry
impl !RefUnwindSafe for SimpleToolRegistry
impl Send for SimpleToolRegistry
impl Sync for SimpleToolRegistry
impl Unpin for SimpleToolRegistry
impl UnsafeUnpin for SimpleToolRegistry
impl !UnwindSafe for SimpleToolRegistry
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> 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 moreSource§impl<T> Message for T
impl<T> Message for T
Source§fn from_boxed(m: BoxedMessage) -> Result<Self, BoxedDowncastErr>
fn from_boxed(m: BoxedMessage) -> Result<Self, BoxedDowncastErr>
Convert a BoxedMessage to this concrete type
Source§fn box_message(self, pid: &ActorId) -> Result<BoxedMessage, BoxedDowncastErr>
fn box_message(self, pid: &ActorId) -> Result<BoxedMessage, BoxedDowncastErr>
Convert this message to a BoxedMessage