1 MindSearch 简介
MindSearch 是一个开源的 AI 搜索引擎框架,具有与 Perplexity.ai Pro 相同的性能。我们可以轻松部署它来构建自己的专属搜索引擎,可以基于闭源的LLM(如GPT、Claude系列),也可以使用开源的LLM(如经过专门优化的InternLM2.5 系列模型,能够在MindSearch框架中提供卓越的性能) 最新版的MindSearch拥有以下特性:
任何你想知道的问题:MindSearch 通过搜索解决你在生活中遇到的各种问题
深度知识探索:MindSearch 通过数百个网页的浏览,提供更广泛、深层次的答案
透明的解决方案路径:MindSearch 提供了思考路径、搜索关键词等完整的内容,提高回复的可信度和可用性。
多种用户界面:为用户提供各种接口,包括 React、Gradio、Streamlit 和本地调试。根据需要选择任意类型。
动态图构建过程:MindSearch 将用户查询分解为图中的子问题节点,并根据 WebSearcher 的搜索结果逐步扩展图。
2 开发环境配置
打开 codespace 主页,选择Blank模板进行创建
创建conda环境隔离并安装依赖
conda create -n mindsearch python=3.10 -y
conda init
另启一个终端activate mindsearch环境
conda activate mindsearch
cd /workspaces/codespaces-blank
git clone https://github.com/InternLM/MindSearch.git && cd MindSearch && git checkout ae5b0c5
pip install -r requirements.txt
3 获取硅基流动API KEY
4 启动MindSearch
(后端)
export SILICON_API_KEY=<上面复制的API KEY>
conda activate mindsearch
# 进入你clone的项目目录
cd /workspaces/codespaces-blank/MindSearch
python -m mindsearch.app --lang cn --model_format internlm_silicon --search_engine DuckDuckGoSearch --asy
–lang: 模型的语言,en 为英语,cn 为中文。
–model_format: 模型的格式。
internlm_silicon 为 InternLM2.5-7b-chat 在硅基流动上的API模型
–search_engine: 搜索引擎。
DuckDuckGoSearch 为 DuckDuckGo 搜索引擎。
BingSearch 为 Bing 搜索引擎。
BraveSearch 为 Brave 搜索引擎。
GoogleSearch 为 Google Serper 搜索引擎。
TencentSearch 为 Tencent 搜索引擎。
(前端)
conda activate mindsearch
# 进入你clone的项目目录
cd /workspaces/codespaces-blank/MindSearch
python frontend/mindsearch_gradio.py
打开前端页面:
5 部署到自己的 HuggingFace Spaces上
复制InternLM官方部署的MindSearch Spaces应用
选择配置,在页面的右上角,选择Duplicate this Space
选择如下配置后,即可Duplicate Space
Space Hardware选择第一条,即Free的2vCPU即可
填写好SILICON_API_KEY,即上面提到的硅基流动的API KEY
等待Spaces应用启动,当启动好后上方会显示绿色的running标志,这时我们可以输入input进行测试了,我们可以在Sapces应用页面的输入框中输入以下内容:What are the top 10 e-commerce websites?
测试结果如下: