SeekStorm/SeekStorm

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

解決的問題

SeekStorm 提供了一種高性能的搜尋解決方案,結合了向量(語意)搜尋與詞法(關鍵字)搜尋。它解決了在單一通用伺服器上實現毫秒以下搜尋延遲與高吞吐量的需求,無需昂貴的叢集或專用硬體加速器,同時支援數十億規模的索引。

工作原理

SeekStorm 採用「雙核」架構,包含兩個獨立的原生索引架構:用於詞法搜尋的倒排索引與用於向量搜尋的 ANN(近似最近鄰)索引。統一的查詢規劃器管理這些引擎,允許使用者使用 Reciprocal Rank Fusion(RRF)合併結果,執行純詞法、純向量或混合搜尋。它使用 Rust 實作,並利用 x86-64 與 ARM 架構的 SIMD 硬體加速。

適用對象

專為需要快速、可擴展搜尋引擎的開發者設計,可作為程序內函式庫或多租戶伺服器使用。特別適用於需要即時搜尋、複雜過濾或低尾端延遲(P99)至關重要的高併發環境的應用場景。

主要亮點

  • 混合搜尋:在統一查詢規劃器下原生整合向量與詞法搜尋引擎。
  • 極致效能:毫秒級延遲與高速索引速度(在筆電上最高可達 35K 文件/秒)。
  • 整合推理:可使用 Model2Vec 自動從文字欄位生成並索引嵌入向量。
  • 即時索引:文件在索引後即可立即搜尋,無需耗資源的段合併作業。
  • 高階搜尋功能:支援分面搜尋、地理鄰近搜尋、拼字容錯與 N-gram 索引以實現短語搜尋。
  • 多租戶伺服器:包含 RESTful API、API 金鑰管理以及用於索引管理的內嵌式 Web UI。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案