SeekStorm/SeekStorm

SeekStorm: vector & lexical search - in-process library & multi-tenancy server, in Rust.

解决的问题

SeekStorm 是一个高性能搜索引擎,旨在为向量和词汇(关键词)搜索提供亚毫秒级延迟。它满足了在单个商用服务器上处理十亿级索引的统一搜索系统需求,无需昂贵的集群或专有硬件加速器,同时在大量索引期间保持稳定性能。

工作原理

SeekStorm 采用“双核心”架构,使用两个独立、原生的索引架构:一个用于词汇相关性的倒排索引,以及一个用于向量相似度的 ANN(近似最近邻)索引。查询规划器接着决定如何使用各种融合类型(例如倒数排名融合(RRF))来结合这些结果,以提供混合搜索能力。它以 Rust 编写,并利用 SIMD 硬件加速,支持 x86-64 和 AArch64 架构。

适用对象

它适用于构建搜索密集型应用程序、RAG(检索增强生成)系统,或需要在各种平台(Windows、Linux、MacOS)上对大量数据集进行实时、低延迟搜索的服务开发者。

亮点

  • 混合搜索:在单个查询规划器下原生集成向量和词汇搜索引擎。
  • 性能:亚毫秒级查询延迟和高吞吐量分片索引(在笔记本电脑上每秒可达 35K 文档)。
  • 集成推理:使用 Model2Vec 直接从文本字段生成和索引嵌入。
  • 多功能性:可作为进程内库和多租户 REST 服务器使用,并提供 Rust、Python、C#、Java 和 TypeScript 的 SDK。
  • 高级搜索功能:支持分面搜索、地理邻近搜索、错字容忍和实时索引(文档立即可搜索)。
  • 可扩展性:支持十亿级索引,RAM 消耗低,且无需资源密集的段合并。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目