搜索模块(Search)
1. 模块介绍
搜索模块提供多数据源检索能力,支持项目上下文搜索、知识库搜索、Web 搜索等,为 Agent 提供信息获取能力。
核心 概念
| 概念 | 说明 |
|---|---|
SearchProvider | 搜索提供者 SPI,实现特定数据源的搜索能力 |
SearchFacade | 搜索门面,统一搜索入口 |
SearchSourceType | 数据源类型枚举 |
SearchRequest | 搜索请求 |
SearchResultItem | 搜索结果项 |
数据源类型
| 类型 | 说明 | 使用场景 |
|---|---|---|
PROJECT | 项目上下文 | 代码、配置、日志 |
KNOWLEDGE | 知识库 | FAQ、规范、最佳实践 |
WEB | Web 搜索 | 公开搜索引擎 |
EXPERIENCE | 经验池 | 历史经验检索 |
CUSTOM | 自定义 | 自定义数据源 |
工作流程
Agent 调用搜索工具
│
▼
┌─────────────────────────────────────────┐
│ search.query(keyword="xxx") │
└────────────────┬────────────────────────┘
▼
┌─────────────────────────────────────────┐
│ SearchFacade │
│ 路由到合适的 SearchProvider │
└────────────────┬────────────────────────┘
▼
┌─────────────────────────────────────────┐