pub struct ExampleTool { /* private fields */ }Implementations§
Source§impl ExampleTool
impl ExampleTool
Sourcepub fn new(name: String, description: String) -> Self
pub fn new(name: String, description: String) -> Self
Examples found in repository?
examples/agent_example.rs (lines 13-16)
6async fn main() -> Result<(), Box<dyn std::error::Error>> {
7 println!("=== Rust Agent v0.0.1 - Agent使用示例 ===");
8
9 // 创建一个简单的Agent
10 let mut agent = SimpleAgent::new();
11
12 // 添加一些示例工具
13 let weather_tool = Box::new(ExampleTool::new(
14 "get_weather".to_string(),
15 "获取指定城市的天气信息".to_string(),
16 ));
17
18 agent.add_tool(weather_tool);
19
20 // 创建Agent运行器
21 let agent_runner = SimpleAgentRunner::new(agent);
22
23 // 测试调用工具
24 println!("\n1. 测试调用工具:");
25 test_tool_invocation(&agent_runner).await?;
26
27 // 测试直接完成
28 println!("\n2. 测试直接完成:");
29 test_direct_completion(&agent_runner).await?;
30
31 println!("\n示例完成!");
32 Ok(())
33}Trait Implementations§
Auto Trait Implementations§
impl Freeze for ExampleTool
impl RefUnwindSafe for ExampleTool
impl Send for ExampleTool
impl Sync for ExampleTool
impl Unpin for ExampleTool
impl UnwindSafe for ExampleTool
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