一文玩转秘塔搜索开源版:本地化部署、功能剖析与最佳实践

一文玩转秘塔搜索开源版:本地化部署、功能剖析与最佳实践

🚀 想在本地拥有一个“类秘塔”级别的 AI 搜索引擎?本文将手把手带你完成从环境准备、Docker 部署到功能进阶配置的完整流程,并提供性能调优与常见问题解答,助你快速上手秘塔搜索开源版!

目录

引言

项目亮点速览

环境与依赖准备

三步完成本地部署 4.1 克隆代码 4.2 编辑环境变量 4.3 使用 Docker 启动

进阶配置 5.1 SearXNG 聚合搜索 5.2 Ollama 本地大模型

核心功能深度解析 6.1 内置 LLM 接口 6.2 搜索引擎聚合 6.3 UIUX-特色 6.4 上下文问答与缓存机制

性能与安全优化建议

常见问题 FAQ

结语与互动

引言

在 AI 搜索时代,想要一个可定制、易扩展且支持多模型的搜索解决方案并不多见。秘塔搜索开源版(仓库地址:github.com/yokingma/search_with_ai)凭借 TypeScript 全栈实现、Docker 一键部署以及对 SearXNG、OpenAI、Ollama 等组件的天然集成,成为打造个人/团队智能搜索入口的不二之选。

项目亮点速览

🌐 聚合搜索:同时调用 Google、Bing、Sogou 及 SearXNG,减少信息孤岛。

🤖 多模型支持:OpenAI、Gemini、通义千问、Ollama 本地模型随意切换。

🌓 自适应 UI:浅色 / 深色主题自动匹配,移动端体验友好。

🗂 多语言 i18n:内置 10+ 语言包,国际化零门槛。

⚡ 上下文缓存:重复问答加速,减少 Token 消耗。

环境与依赖准备

安装最新版 Docker 与 Docker Compose。

至少 2 GB 可用内存(若启用本地大模型建议 ≥8 GB)。

准备一个可用的 OpenAI Key 或搭建 FreeGPT/OpenAI 代理。

三步完成本地部署

下面演示仅需 5 分钟,即可让秘塔搜索开源版运行在你的浏览器中!

1. 克隆代码

git clone https://github.com/yokingma/search_with_ai.git

cd search_with_ai

2. 编辑环境变量

项目根目录下创建 .env 文件,并填入以下示例内容(按需修改):

# === LLM 相关 ===

OPENAI_KEY=sk-xxxxxxxxxxxxxxxx

OPENAI_PROXY_URL=https://api.openai.com/v1

# === 本地 Ollama ===

OLLAMA_HOST=http://host.docker.internal:11434

# === 聚合搜索 SearXNG ===

SEARXNG_HOSTNAME=http://searxng:8080

# === 运行端口 ===

PORT=3000

3. 使用 Docker 启动

# 后台拉起全部服务

docker compose up -d

# 查看日志(可选)

docker compose logs -f

数秒后访问 http://localhost:3000,即可看到熟悉的搜索界面!

进阶配置

SearXNG 聚合搜索

SearXNG 能把 Google、DuckDuckGo 等上百种数据源汇聚一站输出,推荐与秘塔搜索搭配使用:

# 拉取官方镜像

docker run -d --name searxng -p 8080:8080 searxng/searxng

将上文 .env 中的 SEARXNG_HOSTNAME 指向 http://localhost:8080 即可。

Ollama 本地大模型

Ollama 提供 Llama 3、Phi-3、Mistral 等模型的一键下载与推理:

# 安装并启动 Ollama

curl https://ollama.ai/install.sh | sh

ollama run llama3

确保 .env 的 OLLAMA_HOST 与实际端口一致,秘塔搜索即可调用本地 LLM,降低成本且响应更快。

核心功能深度解析

内置 LLM 接口

支持 OpenAI GPT-3.5/4、Google Gemini、百度 ERNIE、阿里通义、智谱 GLM 等主流云端模型。

自定义 provider 仅需实现 LLMBase 抽象类,即可无缝接入私有模型。

搜索引擎聚合

通过 SearXNG 统一抽象结果格式,前端仅维护一套渲染逻辑。

支持设置权重,偏好本地/国际搜索源。

UI/UX 特色

前端基于 React + Next.js 13,采用 TailwindCSS 响应式布局。

内置 PWA,手机上可“安装”与 APP 类似的图标与离线缓存。

上下文问答与缓存机制

采用 Redis 或内存 Map 进行搜索结果缓存。

对话历史以 sessionId 为分片存储,便于横向扩展与负载均衡。

性能与安全优化建议

反向代理 & HTTPS:部署到公网时使用 Nginx + Let’s Encrypt,保护 API Key。

缓存策略:常用查询可设定 24h 失效,节省调用次数。

分布式部署:前端可通过 CDN 加速,后端容器化后上 Kubernetes 轻松扩容。

常见问题 FAQ

Q1: 仅用免费 OpenAI 代理是否能稳定? A: 免费节点经常限流,生产环境推荐自行付费 Key 或本地 Ollama。

Q2: Windows 系统如何修改 host.docker.internal? A: Docker Desktop 已内置该域名,无需额外配置;若使用 WSL2,请确保版本 ≥ 2.0。

Q3: 如何添加自定义搜索源? A: 在 src/engines 新建 myEngine.ts,实现 ISearchEngine 接口,并在 engineConfig.ts 注册即可。

结语与互动

如果你读到这里,相信已经可以将秘塔搜索开源版跑在自己的机器上,甚至开始个性化改造。

👍 如果本文对你有所帮助,记得 点赞、收藏、投票;你的一键三连是我持续更新的最大动力! 💬 有任何疑问或改进建议,欢迎在评论区留言交流,或者在 GitHub 提交 Issue。

愿你我都能在开源的世界里,不断探索、共同进步!

更多AIGC文章

相关推荐

福禄电子烟FLOW评价:口味为王
365篮球直播吧

福禄电子烟FLOW评价:口味为王

📅 07-11 👁️ 9942
2002世界杯参赛队介绍:阿根廷队
365篮球直播吧

2002世界杯参赛队介绍:阿根廷队

📅 07-31 👁️ 2132