开源AI搜索平台Search4All
什么是 Search4All ?
Search4All
是个人AI
搜索协助工具,是Perplexity
的开源替代品。能让你的LLM API
支持联网,搜索、新闻、网页总结,
软件特点:
- 集成对
LLM
的支持,例如OpenAI
、Groq
和Claude
。 - 本机搜索引擎集成,包括
Google
、Bing
、DuckDuckGo
和SearXNG
。 - 可定制的、视觉上吸引人的用户界面。
- 可共享和缓存的搜索结果以提高效率。
从功能上看,和老苏之前介绍的 FreeAskInternet
差不多,区别就在于 Search4All
对搜索引擎的支持更多一点
准备工作
软件的安装比较简单,如果你之前已经单独安装过 SearXNG
,那么只要安装 Search4All
即可,图形化安装和 docker cli
都只是安装了 Search4All
如果之前没有独立安装过 SearXNG
,docker-compose
则展示了一体化安装,可以根据需要跳转到相应的章节
虽然安装简单,但涉及到的知识点比较多
关于 LLM
,还是使用了 One API
管理的 kimi
文章传送门:
关于 SearXNG
可能遇到的权限和超时等问题,可以参考 FreeAskInternet
的相关部分
文章传送门:
接下来进入我们今天的正题
安装
在群晖上以 Docker 方式安装。
图形化安装
在注册表中搜索 search4all
,选择第一个 fatwang2/search4all
,版本选择 latest
。
本文写作时,
latest
版本对应为v0.1.0
;
端口
本地端口不冲突就行,不确定的话可以用命令查一下
1 | # 查看端口占用 |
本地端口 | 容器端口 |
---|---|
8062 |
8800 |
环境
可变 | 值 |
---|---|
OPENAI_API_KEY |
OpenAI 帐户页面上申请的 API Key |
OPENAI_BASE_URL |
默认的 OpenAI API 请求 BASE URL |
LLM_MODEL |
要使用的模型,支持 openai ,groq 和 claude 所有聊天模型 |
RELATED_QUESTIONS |
显示相关问题 |
BACKEND |
想要的搜索服务,支持 SEARCH1API ,BING ,GOOGLE ,SERPER ,SEARCHAPI ,SEARXNG |
SEARXNG_BASE_URL |
当 BACKEND 为SEARXNG 时,托管的 serxng 服务器地址 |
因为没有 OpenAI API Key
,所以我们这里使用了 OpenAI
接口代理,也就是 One API
的相关设置参数来模拟
OPENAI_API_KEY
:One API
中的令牌;OPENAI_BASE_URL
:One API
的局域网地址;LLM_MODEL
:选择了kimi
;RELATED_QUESTIONS
:选择了1
,用于显示相关问题;BACKEND
:选择了基于本地部署的SEARXNG
;SEARXNG_BASE_URL
:填入SEARXNG
的地址;
这些参数基本上都已经有了,需要下来一个一个找到并填写值
只有 SEARXNG_BASE_URL
需要自己添加
更多的环境变量,请参考官方文档的说明:https://github.com/fatwang2/search4all#environment-variable
docker cli安装
如果你熟悉命令行,可能用 docker cli
更快捷
1 | # 运行容器 |
docker-compose 安装
也可以用 docker-compose
安装,将下面的内容保存为 docker-compose.yml
文件
这里包含了
SearXNG
,适合未独立安装SearXNG
的用户
1 | version: '3' |
然后执行下面的命令
1 | # 新建文件夹 search4all 和 子目录 |
运行
在浏览器中输入 http://群晖IP:8062
就能看到搜索界面
随便搜一个
看看天气
看看奖牌🏅
对比直接在 SearXNG
中的搜索结果
【风险提示】:大语言模型提供的答案,准确性是基于搜索引擎返回的结果,所以需要自己核实正确性
参考文档
fatwang2/search4all: Personal AI search copilot, open-source Perplexity
地址:https://github.com/fatwang2/search4allSearch4All
地址:https://search2ai.one/free gpt 3.5 api配合 Search4All 实现联网回答 - 常规话题 / 人工智能 - LINUX DO
地址:https://linux.do/t/topic/54134