vearch/vearch

Distributed vector search for AI-native applications

What it solves

Vearch 提供一個雲原生、分散式的向量資料庫,專為處理 AI 應用所需的嵌入向量相似度搜尋而設計。它解決了在數百萬物件中快速檢索的需求,並且能在分散環境中擴展與維持可靠性。

How it works

Vearch 使用由三個主要元件組成的分散式架構:

  • Master:管理 schema、叢集層級的 metadata 與資源協調。
  • Router:處理 RESTful API 請求(upsert、delete、search、query),負責路由請求並合併結果。
  • PartitionServer (PS):以 Raft 為基礎的複寫方式儲存文件分區。它使用「Gamma」——基於 Faiss 的核心向量搜尋引擎,來儲存、索引與檢索向量與標量。

Who it’s for

此專案適合開發需要可擴展記憶體後端的 AI 應用程式開發者,例如使用 Langchain、LlamaIndex,或是建置大規模視覺搜尋系統的開發者。

Highlights

  • Hybrid Search:同時支援向量相似度搜尋與標量過濾。
  • High Performance:能在毫秒級別從數百萬物件中檢索結果。
  • Scalability:具備複寫與彈性水平擴展功能。
  • Broad Integration:提供 Python、Go、Java、Rust SDK,並可與 Langchain、LlamaIndex 等熱門框架整合。