- Published on
555 star~使用 Docker 部署一款 AI 搜索对话应用
- Authors
- Name
- 三金得鑫
- 掘金
- 掘金
小伙伴们大家好,我是三金~
上一篇文章我们介绍了一下本地开源搜索引擎 SearXNG,将它部署到国外的云服务器上可以实现个人纯享版搜索——无广告!还精准!
那么今天结合 SearXNG 来介绍一款开源的 AI 搜索——search_with_ai
介绍
这是一款基于 AI 大模型的对话式搜索引擎,服务端基于 Node 开发,前端使用 Vue3 开发。这对于前端同学来说非常友好!而且作者还制作了 Docker 镜像,我们可以使用 Docker 快速进行项目部署。
首页由三个部分组成:
- 一个所有搜索引擎都会有的搜索框
- 搜索程度和范围
- 预设问题
搜索时会根据搜索程度的不同(目前可用的是简洁和深入)以及搜索范围的不同(全网和学术)会呈现不一样的结果。
这是简洁版搜索出来的内容:
这是深入版搜索出来的内容(内容过多先放一屏):
可以明显看到深入版会对搜索结果总结的更加详细,甚至会提供一份 YAML 文件示例。
如果再加上学术搜索,得出的结果会更加完备!
你以为到这里就结束了吗?不,它还可以基于上下文继续进行追问,这也是开头我们介绍到的:这是一款基于基于 AI 大模型的对话式搜索引擎,现在该是测试对话的时候了!
因为 Search With AI 是基于当前上下文继续进行追问,所以如果你提问了上下文以外的内容它就无法进行回答了,而且这个提问的部分字体有些小而且颜色不太容易被看到。
在页面右侧,可以点击设置的图标设置 AI 模型和搜索引擎:
对于搜索引擎而言,SearXNG 可以说是性价比最高的一个,除了免费之外,它里面集成了 70 多个搜索引擎,比单一使用 Bing 或者 Google 会好很多。
大模型的话,需要我们在部署的时候自己去配置对应模型的 key 以及代理地址,接下来我们就来看看如何使用 Docker 部署吧~
部署
1. 克隆项目
git clone https://github.com/yokingma/search_with_ai.git
cd search_with_ai
2. 编辑配置文件
我们需要在 docker
目录下编辑 .env.docker
文件,在里面去配置你自己的 AI Key,比如 OpenAI、Gemini、Moonshot 等等。
除此之外还可以修改:
- 端口号
- Bing、Google、SearXNG 的一些搜索配置
- 对于 SearXNG 来说,如果有现成的服务可用,可以直接修改对应的 SEARXNG_HOSTNAME 配置项。默认是不需要修改的,因为 Search With AI 的 docker-compose 文件中默认带了 SearXNG。
# 示例
# Server Configuration
PORT=3000 # The port number your server will run on inside the Docker container (default is 3000)
# Search Engine API Keys
BING_SEARCH_KEY= # Your Bing Web Search API key (required for using Bing search in Docker)
GOOGLE_SEARCH_KEY= # Your Google Search API key (for Google Search in Docker)
GOOGLE_SEARCH_ID= # Your Google Custom Search Engine (CSE) ID
# openai KEY, docker compose 默认带了FreeGPT35,如果你没有自己的Key, 这里保持默认
OPENAI_KEY=#your key
# openai Base Url,
OPENAI_PROXY_URL=#OpenAI Base Url, OneAPI接口也是支持的。
...
# docker compose 部署默认带了SearXNG聚合搜索, 默认不需要修改
SEARXNG_HOSTNAME=http://searxng:8080
🔔提示:如果已经有现成的 SearXNG 服务,则在 docker-compose 文件中删掉 SearXNG 部分的代码之后再执行 docker compose 命令
3. [可选]编辑模型配置文件
如果想自定义模型,可以在 docker/model.json
文件中进行编辑:
{
"platform": "openai",
"type": "openai",
// 增加修改你的模型名称
"models": ["o1-preview", "o1-mini", "gpt-4o", "gpt-4o-mini"]
}
4. 运行 docker
在 docker 目录下运行 docker:
# 默认包含了 SearXNG 服务
docker compose up -d
浏览器访问 localhost:3000
即可~
5. 更新
- 手动删除旧版本的镜像(如果需要)
- 执行
docker compose down
- 执行
docker compose up -d
OK,今天就介绍到这里了,感兴趣的小伙伴可以自己部署试试看,觉得对你有用的话也别忘了给这个项目点个 Star 哦~