English 中文
更新时间: 2024/05/11
基于AI大语言模型的对话式搜索引擎的一个基本实现,基于Node.js&Vue3。适合小白入门AI开发参考:),文档后有交流群二维码。 Live Demo
文档后面有微信群二维码,有疑问也可以加入群交流。
git clone https://github.com/yokingma/search_with_ai.git
cd search_with_ai
如果你想一键快速体验,这里不需要修改任何配置,直接运行下面的docker compose即可。
...
# openai KEY, docker compose 默认带了FreeGPT35,如果你没有自己的Key, 这里保持默认
OPENAI_KEY=freegpt35
# openai proxy
OPENAI_PROXY_URL=http://freegpt35:3040/v1
...
# 如果需要在docker中访问本地部署的Ollama, 你可能不用改变这个变量。
OLLAMA_HOST=http://host.docker.internal:11434
# docker compose 默认带了SearXNG免费聚合搜索, 默认不需要修改
SEARXNG_HOSTNAME=http://searxng:8080
默认包含了 SearXNG 和 FreeGPT3.5,只需要运行:
前提是确保你的网络环境能访问Google&OpenAI
docker compose up -d
docker build -t my_image .
docker run -d -p 3000:3000 --name my_app my_image
浏览器访问 http://localhost:3000
运行 git pull
(注意保存你的.env设置)
删除所有旧的容器和镜像
执行 docker compose down
执行 docker compose up -d
支持Ollama运行的本地大模型。运行的时候只需要启动ollama即可。
内置了搜索引擎服务:Bing、Sogou、Google、SearXNG。
安装 SearXNG ,推荐用Docker部署 searxng-docker
SearXNG 是一款免费的互联网元搜索引擎,它集合了来自多个搜索服务和数据库的结果。该服务不会追踪或构建其用户档案,为寻求在线匿名性的用户提供保护。此外,SearXNG 还可通过 Tor 网络来实现在线匿名访问。
安装 SearXNG 时,默认情况下唯一处于激活状态的输出格式是 HTML 格式。若要使用 API,您需要启用 json 格式。可以通过在 settings.yml 文件中添加以下行来实现:
search:
formats:
- html
- json
并且需要设置limiter为false:
server:
limiter: false # default is true
也可以设置SEARXNG_HOSTNAME (编辑.env文件):
# SEARXNG_HOSTNAME=<host>
如果要使用必应搜索,需要注册并订阅Bing搜索服务,获取必应订阅密钥(key)。
Bing搜索接口是收费的,但是每月有1000次免费调用额度。
如果要使用谷歌搜索引擎, 需要注册谷歌搜索API服务,每天有100次免费搜索额度。
内置的Sogou搜索并非直接调用API实现(似乎没有开放的API),只是通过网页搜索获取搜索结果。
内置的Sogou搜索优点是免费的,但是会触发人机验证,遇到不返回参考资料的情况可以手动打开sogou.com随便搜索关键词,根据提示手动验证一下解除。
需要:
Node.js >= 18
国内用户推荐使用阿里云通译千问大模型,在阿里云模型服务灵积注册可以获取密钥(key),通译千问部分API使用是免费的(qwen-max、qwen-max-1201、qwen-max-longcontext),除了longcontext模型其他限制是60次请求/分钟。
yarn install && yarn run build
cd web && yarn install && yarn run build
// .env
// Bing key
BING_SEARCH_KEY=your-key
// Google search key
GOOGLE_SEARCH_KEY=
GOOGLE_SEARCH_ID=
// aliyun key
ALIYUN_KEY=your-key
// baidu key
BAIDU_KEY=your-key
BAIDU_SECRET=your-secret
// google gemini key & base url
GOOGLE_KEY=
// Google api base url
GOOGLE_PROXY_URL=
// tencent KEY:ID, SECRET:KEY
TENCENT_KEY=
TENCENT_SECRET=
// Yi Key
YI_KEY=
// openai ChatGPT key
OPENAI_KEY=your-key
// openai base url
OPENAI_PROXY_URL=https://api.openai.com/v1
yarn run start
git pull
yarn install
cd web && yarn install && yarn run build
启动成功后可以在浏览器打开http://localhost:3000 即可使用。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。