Bose搜索
  
通过以下方式对AI代理进行零成本、高性能的搜索 模型上下文协议.
为什么
付费搜索API消耗积分的速度非常快。内置的LLM搜索速度慢且不可靠。Bose让您的AI代理可以免费访问整个网络和持久的本地知识库。
- 247发动机 --谷歌、Brave、DuckDuckGo、Startpage以及通过SearXNG访问的243个其他网站
- 本地索引 --通过Tantivy对抓取的内容进行10毫秒以下的全文搜索
- MCP本地 --适用于Claude Code、Cursor、Windsurf和任何兼容MCP的客户端
- 自托管 --您的查询永远不会离开您的机器
- 单个二进制 --一个Rust可执行文件,资源占用最小
快速开始
# 1. Install
cargo install --git https://github.com/eouzoe/bose-search.git bose-search
# 2. Start SearXNG
podman run -d -p 8080:8080 --name searxng docker.io/searxng/searxng:latest
# 3. Register with Claude Code
claude mcp add bose-search \
-e SEARXNG_URL=http://localhost:8080 \
-- bose-search您的AI代理现在可以访问247个搜索引擎。
工具
| 工具 | 说明 | 参数 |
|---|---|---|
web_search | 通过247个引擎查询网络 | query, num_results, category, language, time_range |
local_search | 查询本地知识指数(\ 备注: bose-crawler 作为实验箱。它提供PID控制的速率限制和HTTP获取原语,但尚未集成到主二进制文件中。 |
算法
Bose实现了几种排名和处理算法:
- RRF融合 (
bose-common/fusion.rs)互惠排名融合将来自多个搜索引擎的排名列表合并为一个排序,而不需要跨来源的分数校准。 - 位置感知混合 (
bose-common/blending.rs)--交织来自不同后端的结果,同时保留位置相关性信号。 - PID背压 (
bose-crawler/pid.rs)——比例积分微分控制器,根据服务器响应延迟动态调整爬行速率,防止过载。 - SHA-256重复数据消除 (
bose-common/dedup.rs)--基于内容哈希的数据消除,消除了引擎之间的重复结果。 - 文档分块 (
bose-common/chunker.rs)--将大型文档拆分为具有可配置重叠的可索引段,以保留上下文。 - HTML提取 (
bose-common/extractor.rs)--剥离标记以提取干净的文本内容进行索引。 - 查询扩展路由器 (
bose-search/router.rs)--根据查询特征将查询路由到后端的最佳组合。 - 清道夫算法 (
bose-common/scavenger.rs)——信息论惊喜得分S(r)=−log₂(freq(r)/|E|)曲面是主流引擎系统性地忽略的结果。具有(1-1/E)近似保证的贪婪子模型选择(Nemhauser等人,1978)确保了具有多样性意识的top-k检索。
SearXNG部署
Bose使用 SearXNG 作为其元搜索后端。A. podman-compose.yml 被包含在 deploy/:
cd deploy && podman-compose up -d这在端口8080上启动SearXNG,启用JSON API和4个默认引擎(Google、Brave、DuckDuckGo、Startpage)。您可以通过编辑添加更多引擎 deploy/searxng/settings.yml.
配置
所有设置都是从环境变量中读取的。
| 变量 | 默认值 | 描述 |
|---|---|---|
SEARXNG_URL | http://localhost:8080 | SearXNG实例URL |
DEFAULT_NUM_RESULTS | 10 | 每次查询的结果 |
REQUEST_TIMEOUT_SECS | 30 | HTTP请求超时(秒) |
BOSE_INDEX_PATH | $XDG_DATA_HOME/bose-search/index | 本地索引目录 |
从源头构建
git clone https://github.com/eouzoe/bose-search.git
cd bose-search
cargo build --release -p bose-search二进制文件将位于 target/release/bose-search.
视觉
搜索引擎会显示什么是受欢迎的、推广的和付费的。无数的作品——小项目、利基研究、个人创作——随着时间的推移被埋葬和遗忘。
Bose旨在改变这一现状。除了传统的搜索之外,我们正在构建一种受生物分解和群体智能启发的“清除”算法:从别人忽略的东西中寻找价值。长期目标是打破过滤泡沫,帮助人们发现他们从未通过主流渠道遇到的内容。
路线图
- \[x\] SearXNG元搜索集成(247个引擎)
- \[x\] 具有结构化工具响应的MCP服务器
- \[x\] 具有全文搜索功能的本地Tantivy知识索引
- \[x\] 采用PID控制背压的内容爬虫
- \[\]流式传输混合结果——首先是本地结果,然后是网络结果
- \[x\] 清除算法——核心实现完成(MCP集成待定)
- \[\]SIMD加速BM25计分引擎(Block Max WAND)
- \[\]通过monoio进行异步I/O
- \[\]自定义搜索后端插件系统
许可证
根据以下任一方式获得许可 Apache许可证,版本2.0 或 MIT许可证 由您选择。
