随着大语言模型技术的普及,传统的搜索引擎模式正在发生深刻变化。过去,用户需要自行浏览搜索结果链接并筛选信息;现在,AI 能够直接整合多源信息并生成总结性答案,显著提升了获取信息的效率。
本文将介绍一个名为 FreeAskInternet 的开源项目。这是一个完全免费的 AI 搜索聚合器,支持前后端分离架构,后端基于 Python FastAPI 框架开发。该项目允许用户在本地私有化部署,无需依赖昂贵的 GPU 硬件即可运行,非常适合希望保护数据隐私或进行技术学习的开发者。
项目核心特性
- 完全免费与开源:代码公开,无隐藏费用。
- 本地化部署:支持 Docker Compose 一键部署,数据不出本地。
- 低硬件要求:无需专用 GPU,利用云端 API 或轻量级模型即可运行。
- 多模型支持:兼容 ChatGPT3.5、Qwen、Kimi、GLM 等主流大模型 API。
- 灵活配置:支持自定义 LLM(如 Ollama),适应不同场景需求。
- 跨平台访问:提供友好的 Web 界面,移动端适配良好。
技术架构分析
该项目的核心逻辑在于将传统搜索引擎的检索能力与大模型的生成能力相结合。
- 检索层:系统接收用户查询后,调用多个搜索引擎接口获取原始结果。
- 处理层:将检索到的文本片段作为上下文输入给 LLM。
- 生成层:LLM 根据上下文生成最终回答,并提供引用来源。
这种架构类似于 RAG(检索增强生成)的简化版,既保证了信息的时效性,又利用了大模型的理解和归纳能力。
部署指南
推荐使用 Docker 环境进行快速部署,确保依赖隔离。
git clone https://github.com/nashsu/FreeAskInternet.git
cd ./FreeAskInternet
docker-compose up -d
常见问题排查:
启动初期可能会遇到网络相关的报错,例如 Error refreshing session ID。这通常是因为部分 API 服务对特定地区的网络访问有限制。
- 解决方案:在 Docker 容器内配置 HTTP/HTTPS 代理环境变量。
- 替代方案:如果无法解决网络问题,可切换至对网络限制较少的模型(如 Kimi),避免使用受限制的 ChatGPT 服务。
使用与配置
1. 模型选择
首次进入系统需选择基础模型。若使用 ChatGPT3.5 且网络通畅,通常无需额外配置即可直接使用。
2. Token 配置
对于需要鉴权的模型(如 Kimi),需获取访问令牌。
- 获取方式:登录对应模型官网,通过浏览器开发者工具查找
refresh_token。 - 配置位置:在系统设置页面填入 Token 值。
3. 搜索模式
- 搜索增强模式:优先展示搜索结果摘要,下方附带原始来源链接(如腾讯新闻、微博等)。适合需要核实信源的场景。
- AI 对话模式:将检索到的链接内容直接注入对话框,模拟连续对话体验。目前版本可能不支持长上下文的多轮记忆,但足以应对单次复杂查询。
安全与隐私考量
本地部署的核心优势在于数据主权。用户的查询内容和生成的回答均保存在本地环境中,不会上传至第三方公共服务器。这对于处理敏感业务数据或关注隐私保护的团队尤为重要。
在使用外部 API 时,建议妥善保管 Token 信息,避免将其硬编码在代码仓库中。生产环境建议使用环境变量管理密钥。


