1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
//! 搜索引擎 Provider 抽象
//!
//! 定义 [`SearchProvider`] trait 和 [`SearchResult`] 类型,
//! 支持多种搜索引擎后端(DuckDuckGo、Brave、Tavily 等)。
use crateResult;
use async_trait;
use ;
/// 搜索结果条目
/// 搜索引擎 Provider trait
///
/// 所有搜索引擎后端必须实现此 trait。
/// 框架内置 [`duckduckgo::DuckDuckGoProvider`] 作为免费兜底方案。
///
/// # 扩展
///
/// 实现 `BraveSearchProvider` 或 `TavilyProvider` 只需实现此 trait,
/// 然后通过 `WebSearchTool::new(provider)` 传入即可。