MindSearch 深度搜索器

通过多代理并发网页检索,为复杂问题组织深度搜索。

Star 数
★ 6.9k
最近更新
1 年前
License
Apache-2.0
主语言
JavaScript

30 秒速览

运行形态
自托管服务网页应用命令行工具
可在哪里用
兼容但需适配OpenAI API(部分支持)
费用
软件免费,模型调用费用自付
上手难度
中 · 需要几步配置
开始前需要
PythonFastAPINode.jsnpmShell / 命令行网络访问本地文件系统
典型场景
需要在自托管环境中为英文或中文查询部署多代理网页搜索服务的团队。
不适合
  • 希望开箱即用、无需配置 .env 和搜索 API 密钥的用户
  • 不想安装 Node.js 与 npm 来构建 React 前端的用户

这个 Agent 能做什么,适合哪些场景?

MindSearch 是一个基于 LLM 的多代理网页搜索框架,目标是构建类似 Perplexity.ai Pro 和 SearchGPT 的搜索体验。它以 FastAPI 服务形式运行,并可用 --asy 启动异步代理。后端可配置 InternLM 本地服务或 GPT4 格式模型,并支持 DuckDuckGo、Bing、Brave、Google Serper 与腾讯搜索。项目提供 React、Gradio 和 Streamlit 三种前端选择,其中更新后的 UI 用于呈现同时进行的多查询搜索。也可通过 backend_example.py 直接调用运行中的后端并处理响应。

先复制 .env.example 为 .env,并填写模型及搜索服务配置;随后运行 python -m mindsearch.app --lang en --model_format internlm_server --search_engine DuckDuckGoSearch --asy 启动 FastAPI 服务。服务根据 --lang 选择英文或中文模型设置,根据 --model_format 使用 internlm_server 或 gpt4 格式,并按 --search_engine 选择网页检索提供方。除 DuckDuckGo 外,搜索服务通常需要 WEB_SEARCH_API_KEY;腾讯搜索需要 TENCENT_SEARCH_SECRET_ID 与 TENCENT_SEARCH_SECRET_KEY。用户可通过 React、Gradio、Streamlit 前端提交查询,或运行 backend_example.py 向后端发送查询并处理返回响应。若要更换搜索 API,可修改 mindsearch/agent/__init__.py 中 searcher_cfg 的 searcher_type。

  1. 需要在自托管环境中为英文或中文查询部署多代理网页搜索服务的团队。
  2. 已运行 InternLM2.5-7b-chat 本地服务,且希望把它接入网页检索流程的开发者。
  3. 拥有 Brave、Bing、Google Serper 或腾讯搜索凭据,并需要切换检索提供方的应用开发者。
  4. 想用 React 界面展示多条查询同时搜索过程的前端团队。
  5. 希望用 backend_example.py 将现有 FastAPI 后端接入自有客户端的工程师。

如何安装或部署这个 Agent?

git clone https://github.com/InternLM/MindSearch
cd MindSearch
pip install -r requirements.txt
mv .env.example .env

编辑 .env 填入所需模型与搜索配置。使用除 DuckDuckGo 以外的搜索服务时,设置 WEB_SEARCH_API_KEY;腾讯搜索则设置 TENCENT_SEARCH_SECRET_ID 和 TENCENT_SEARCH_SECRET_KEY。React 前端还需要安装 Node.js 和 npm,并在 frontend/React 中运行 npm install。

如何使用这个 Agent?

启动后端:

python -m mindsearch.app --lang en --model_format internlm_server --search_engine DuckDuckGoSearch --asy

可将 --lang 改为 cn,将模型格式改为 gpt4;也可选择 BingSearch、BraveSearch、GoogleSearch 或 TencentSearch。后端启动后,运行 python backend_example.py 发送查询。可选前端包括 python frontend/mindsearch_gradio.py、streamlit run frontend/mindsearch_streamlit.py,或在配置 Vite 代理后于 frontend/React 运行 npm start。本地调试可运行 python -m mindsearch.terminal。

这个 Agent 有哪些优点和局限?

优点
  • 同一服务明确支持五种网页搜索提供方,并允许通过 searcher_type 切换。
  • 提供异步代理部署选项,更新记录明确提到并发性能改进。
  • 同时提供 FastAPI 后端、React、Gradio 和 Streamlit 界面,便于按接入方式选择。
  • 支持 internlm_server 与 gpt4 两种已记录的模型格式,并可通过修改 models.py 接入其他模型。
局限
  • 部署前必须配置 .env;多数搜索提供方还依赖外部 API 凭据。
  • 除已列出的模型格式外,其他模型需要修改 mindsearch/agent/models.py,不是纯配置式接入。
  • React 前端需要额外安装 Node.js 和 npm,并手动设置 Vite 代理目标。
  • 现有说明没有给出 FastAPI 的具体 HTTP 路由、请求体或响应模式。

这个 Agent 与同类方案有什么区别?

README 将其定位为类似 Perplexity.ai Pro 和 SearchGPT 的 LLM 多代理网页搜索框架;仓库材料未提供与两者的功能或性能对比。

与相关度最高的同类 agent 并排比较关键指标。

Agent 源码审查 形态 / 费用 Star 最近更新 主语言 完整支持的平台
MindSearch 深度搜索器 当前 42 · 缺口较多 自托管服务免费 + 模型费 ★ 6.9k 1 年前 JavaScript —
智能公司研究助手 证据不足 自托管服务免费 + 模型费 ★ 2.3k 11 天前 Python OpenAI API
Vibe-Research · 个人 AI 投研系统 59 · 缺口较多 自托管服务免费 + 模型费 ★ 3.5k 8 天前 TypeScript Codex · Claude Code · OpenAI API · Claude API
ShoppingAgent 订单分析助手 37 · 缺口较多 网页应用免费 + 模型费 ★ 3.6k 1 年前 Python —

FollowAgents 如何评估这个 Agent?

FollowAgents 源码审查 · FARS-2.1
缺口较多
42/ 100 五分制 2.1 / 5
信任安全 6/29
可靠稳定 6/14
适用触发 10/18
规范维护 10/18
有效结果 7/13
证据核验 3/8
查看各维度的扣分理由
信任安全6 / 29 · 1.0/5

证据显示:项目要求用户提供API密钥(如WEB_SEARCH_API_KEY),但未明确说明权限最小化原则;没有用户确认机制;数据流透明度有限,仅提及搜索API调用;敏感数据处理未详细说明;依赖项固定版本但未提供安全审计;外部影响包括搜索API调用和可能的网络请求;没有回滚机制;来源归属仅通过README中的引用和许可证体现。扣分原因:缺乏用户确认、数据流透明度不足、依赖安全未评估、无回滚机制。

可靠稳定6 / 14 · 2.1/5

证据显示:README和代码结构一致,但未提供测试结果;依赖项固定版本但未验证可用性;失败消息未详细说明。扣分原因:依赖可用性未验证,失败消息不明确。

适用触发10 / 18 · 2.8/5

证据显示:面向开发者和研究者,提供多种部署场景;能力边界通过支持的搜索API和模型格式说明;触发精度未明确;环境适配包括多种前端和后端选项。扣分原因:触发精度不明确。

规范维护10 / 18 · 2.8/5

证据显示:信息架构清晰,有README和目录;安装说明详细;命名稳定但未提供版本历史;有示例和FAQ;已知限制未明确;许可证为Apache-2.0;版本变更日志仅有一条;维护责任未明确。扣分原因:命名稳定性不足,已知限制未说明,版本变更日志不完整,维护责任不明确。

有效结果7 / 13 · 2.7/5

证据显示:输出可用性通过前端和示例脚本体现;边际价值高,提供多智能体搜索;成本效益未详细说明。扣分原因:成本效益未评估。

证据核验3 / 8 · 1.9/5

证据显示:README中的声明部分可追溯(如论文引用);跨来源验证有限;事实与推断未明确分离。扣分原因:跨来源验证不足,事实与推断未分离。

风险与缓解建议
  • 源码中未见:执行前用户确认开启或自行加上执行前确认;先在沙箱或测试环境跑通,确认行为后再接入真实数据。
  • 源码中未见:依赖安全审查安装前固定版本并做一次依赖扫描(如 npm audit、pip-audit);优先放在容器里运行。
  • 源码中未见:回滚或恢复路径运行前先备份,或在 git 分支、快照上操作,确保改动可以撤销。
  • API密钥处理需谨慎,确保环境变量安全。
  • 依赖项版本固定但未提供安全审计,建议检查已知漏洞。
  • 搜索API调用可能产生外部影响,需注意隐私和合规。
证据充分度:低 评估于 2026年8月9日 审查版本 7952c5f8a956
查看完整评分方法 →

最近版本

来自该项目 GitHub Releases 的最新发布记录,说明为上游原文摘录,未经本站改写或测试。

  1. v0.1.0
    发布说明摘录
    An open-source AI Search Engine Framework with Perplexity.ai Pro performance Technical Report: https://arxiv.org/abs/2407.20183 Search engines provide extensive and the latest web information but often fail to tailor search results to align with complex human intentions. Inspired by the remarkable progress of Large Language Models (LLMs), recent works enhance search engines with LLMs. However, these methods still obtain unsatisfying performance due to three critical problems: …
    在 GitHub 查看 ↗

常见问题

运行搜索服务需要付费凭据吗?
DuckDuckGo 不需要文中所述的搜索 API key。Bing、Brave、Google Serper 等通常需要 WEB_SEARCH_API_KEY;腾讯搜索需要单独的 secret ID 与 secret key。
可以使用自己的模型吗?
已记录的格式是 internlm_server 和 gpt4。使用其他模型时,说明要求修改 mindsearch/agent/models.py。
是否一定要使用网页前端?
不需要。后端启动后可以运行 backend_example.py 直接发送查询并处理响应。
怎样使用异步代理?
启动 mindsearch.app 时附加 --asy。该选项被说明为部署异步代理。
在 GitHub 查看 ↗ 安装 ↓

相关 Agents