Vane:可自托管的隐私优先 AI 问答搜索引擎
Vane 是一个隐私优先的 AI 问答引擎,完全运行在用户自有硬件上,结合全网检索与本地 LLM(Ollama)及云端模型(OpenAI、Claude、Gemini、Groq),在给出答案的同时附带引用来源。它由 SearxNG 提供网页检索,支持讨论/学术论文等多来源、图片与视频搜索、文件上传问答、指定域名检索、天气与股价等 Widget,并提供 Docker 与非 Docker 两种安装方式。
社区作者 · zZz
它解决什么问题
Vane 定位为“隐私优先的 AI 回答引擎”,强调完全跑在自己的硬件上,把互联网知识与本地 LLM(通过 Ollama)以及云端提供商(OpenAI、Anthropic Claude、Google Gemini、Groq 等)结合,输出带引用来源的答案,同时让搜索行为保持私密。
主要能力:
- 多模型提供商支持:既可用 Ollama 跑本地模型,也可接入 OpenAI、Anthropic Claude、Google Gemini、Groq 等云服务,可按需混搭模型。
- 智能搜索模式:Speed Mode(快速回答)、Balanced Mode(日常搜索)、Quality Mode(深度研究)。
- 自选来源:可检索网页、讨论内容或学术论文;更多来源与集成仍在开发中。
- Widgets:在相关时展示 UI 卡片,例如天气、计算、股价等快速查询。
- 由 SearxNG 提供网页搜索,聚合多个搜索引擎并保护身份;Tavily 与 Exa 支持“coming soon”。
- 图片与视频搜索:除文字结果外还能找视觉内容。
- 文件上传:支持 PDF、文本文件、图片,可就上传文档提问。
- 指定域名搜索:把检索范围限制在特定网站,适合技术文档或研究论文。
- 智能搜索建议:输入时给出建议,帮助构造更好的查询。
- Discover:浏览当日有趣文章与趋势内容,不搜索也能获取信息。
- 搜索历史:所有搜索保存在本地,可随时回看。
架构层面,Vane 基于 Next.js,由它处理全部 API 请求,因此在同一网络下开箱可用,设置端口转发后也能保持可访问。官方标注的后续计划包括:增加更多 Widget、集成与搜索来源;增加自定义 Agent 创建能力(名称待定);增加身份认证。
项目由赞助商支持开发,其中 Exa(面向 LLM 的 Web 搜索 API,提供网页搜索、爬取、深度研究与答案 API)被列为合作伙伴。项目接受捐赠(文中给出以太坊地址),并欢迎通过 GitHub Issues、CONTRIBUTING.md 与 Discord 参与贡献与求助。
许可证信息在提供的来源正文中未明确说明,需以仓库实际 LICENSE 文件为准。
— 本文由 AI 根据公开来源辅助整理,命令、版本与许可证请在使用前到原始页面复核。
安装 / 开始使用
安装方式主要有两种:使用 Docker(强烈推荐)与不使用 Docker。
一、准备工作
- 确认系统已安装并运行 Docker(Docker 方式)。
- 非 Docker 方式需要自行安装 SearXNG,并在 SearXNG 设置中允许 JSON 格式,同时启用 Wolfram Alpha 搜索引擎。
- 默认访问地址为 http://localhost:3000 ,首次进入后在 setup 页面配置 API Key、模型、SearxNG 地址等。
二、使用 Docker 安装(推荐)
- 直接运行以下命令:
docker run -d -p 3000:3000 -v vane-data:/home/vane/data --name vane itzcrazykns1337/vane:latest- 该命令会拉取并启动 Vane 容器,镜像内已捆绑 SearxNG 搜索引擎,无需额外配置。
- 启动后打开浏览器访问 http://localhost:3000 ,在 setup 界面完成设置(API Key、模型等)。
- 说明:镜像同时包含 Vane 与 SearxNG;-v 参数为数据与上传文件创建持久化卷。
三、使用你自己的 SearXNG 实例(slim 版本)
- 若已有 SearxNG 在运行,使用 slim 版本:
docker run -d -p 3000:3000 -e SEARXNG_API_URL=http://your-searxng-url:8080 -v vane-data:/home/vane/data --name vane itzcrazykns1337/vane:slim-latest- 重要:确保你的 SearxNG 实例已在设置中启用 JSON 格式,并启用 Wolfram Alpha 搜索引擎。
- 把 http://your-searxng-url:8080 替换为实际的 SearxNG 地址,然后在 http://localhost:3000 的 setup 界面配置 AI 提供商设置。
四、高级安装
从源码构建
- 确保已安装并运行 Docker。
- 克隆仓库:
git clone https://github.com/ItzCrazyKns/Vane.git- 克隆完成后,进入包含项目文件的目录。
- 使用 Docker 构建并运行:
docker build -t vane .docker run -d -p 3000:3000 -v vane-data:/home/vane/data --name vane vane- 访问 http://localhost:3000 并在 setup 界面配置设置。
- 说明:容器构建完成后,可直接从 Docker 启动 Vane,无需再打开终端。
五、非 Docker 安装(按顺序执行)
- 安装 SearXNG,并在 SearXNG 设置中允许 JSON 格式;确保启用 Wolfram Alpha 搜索引擎。
- 克隆仓库并进入目录:
git clone https://github.com/ItzCrazyKns/Vane.gitcd Vane- 安装依赖:
npm i- 构建应用:
npm run build- 启动应用:
npm run start- 打开浏览器访问 http://localhost:3000 ,完成 setup 并在 setup 界面配置设置(API Key、模型、SearxNG URL 等)。
- 说明:官方建议使用 Docker,因为它在环境变量与依赖管理上更简单。更新等其他内容见官方安装文档。
六、首次运行与常见问题(Troubleshooting)
- 本地 OpenAI API 兼容服务器:如果 Vane 提示未配置任何聊天模型提供商,请检查——服务器监听 0.0.0.0 而不是 127.0.0.1,且端口与 API URL 中填写的端口一致;填写本地 LLM 服务器实际加载的模型名;填写正确的 API Key,若该服务未定义 Key,也要在 API Key 字段填入内容而不能留空。
- Ollama 连接错误:通常是后端无法连接 Ollama API。可检查设置菜单中的 Ollama API URL 是否正确;按操作系统调整:Windows 用 http://host.docker.internal:11434 ,Mac 用 http://host.docker.internal:11434 ,Linux 用 http://<private_ip_of_host>:11434 (端口不同则相应调整)。Linux 用户需把 Ollama 暴露到网络:在 /etc/systemd/system/ollama.service 中添加 Environment="OLLAMA_HOST=0.0.0.0:11434" (端口不同则改端口),执行 systemctl daemon-reload 重载 systemd 配置,再用 systemctl restart ollama 重启 Ollama;同时确认默认端口 11434 未被防火墙拦截。
- Lemonade 连接错误:通常是后端无法连接 Lemonade API。检查设置菜单中的 Lemonade API URL;Windows 与 Mac 使用 http://host.docker.internal:8000 ,Linux 使用 http://<private_ip_of_host>:8000 (端口不同则相应调整);确认 Lemonade 服务器正在运行且可在配置端口(默认 8000)访问;确认 Lemonade 配置为接受来自所有接口(0.0.0.0)的连接而非仅 localhost(127.0.0.1);确认默认端口 8000 未被防火墙拦截。
- 把 Vane 当作搜索引擎使用:打开浏览器设置 → 找到“搜索引擎/Search Engines”部分 → 添加新的站点搜索,URL 填 http://localhost:3000/?q=%s (若 Vane 不托管在本机,把 localhost 换成 IP 或域名,把 3000 换成实际端口)→ 点击添加,之后即可从浏览器搜索栏直接使用 Vane。
- 开发者 API:Vane 提供 API,可在自有应用中运行搜索、使用多个模型并获取答案,详细用法见官方完整文档。
- 对外暴露:Vane 运行在 Next.js 上并处理所有 API 请求,在同一网络下即可使用,设置端口转发后也能保持可访问。
(界面预览见配图 1;Exa 赞助标识见配图 2;一键部署入口分别见配图 3 至配图 6。)