--- title: "Search and Load — 精选工具加载" created: 2026-06-19 updated: 2026-06-19 type: concept tags: [tool-selection, search-and-load, dynamic-react, meta-tools] sources: - https://arxiv.org/abs/2509.20386 --- # Search and Load 架构 ## 定义 Search and Load 是 Dynamic ReAct 五架构实验中的**最优方案**——两阶段(search→load),两次额外 LLM 调用,LLM 精选后通常加载不到 5 个工具。相比全量注入,工具加载减少 50%。 ## 工作流 ``` 用户查询 │ ▼ LLM 构造原子化搜索查询(可多个) │ 例: ["retrieve Twitter mentions and DMs", "create Google Sheets spreadsheet"] ▼ search_tools(queries, k1=20, k2=5) ├── 每 query 检索 k1=20 候选 ├── 跨 query 去重 └── 每应用上限 k2=5 │ ▼ LLM 分析候选列表 → 精选 < 5 个工具 │ ▼ load_tools([精选ID列表]) → 工具绑定到 LLM │ ▼ ReAct Agent 执行(仅加载精选工具) ``` ## 为什么比前三架构好 | 架构 | 问题 | |------|------| | Direct Semantic Search | 噪声严重,跨域失效,需要大 k | | Meta-Tool Query Construction | 仍需大 k,无精选步骤 | | Application-Aware | 额外 search_apps 调用收益有限 | Search and Load 的差异化: - **多查询合并**:一次调用覆盖多领域 - **去重+上限**:k1=20→k2=5 压缩候选 - **精选加载**:LLM 从候选中选择,而非全加载 ## 与 MCP-Zero 的对比 | | Search and Load | [[active-tool-discovery|MCP-Zero 主动发现]] | |---|---|---| | 触发 | LLM 构造搜索查询 | LLM 生成结构化 tool request | | 匹配 | 向量语义搜索 | 层次路由(server→tool) | | 加载 | LLM 手动精选 | 自动 top-k 注入 | ## 参考 - [[dynamic-react|Dynamic ReAct]] - [[meta-tools|Meta Tools]] - [[gaurav-dynamic-react-2025|论文]]