lightonai/next-plaid

NextPlaid, ColGREP: Multi-vector search, from database to coding agents.

解決的問題

NextPlaid 與 ColGREP 解決了標準向量搜尋的限制,即將整個文件壓縮為單一嵌入。這種「有損」方法在源碼等複雜資料中經常失敗,因為關鍵細節(參數、文件字串、控制流程)會遺失。NextPlaid 提供高效率的多向量資料庫以保留這些細節,而 ColGREP 則利用此技術打造一個針對開發者與 AI 代理的本地語意程式碼搜尋工具。

工作原理

NextPlaid 採用多向量方法(類似於 ColBERT),將每個文件以多個嵌入表示,而非單一嵌入。為確保可擴展性,它使用產品量化(2位或4位壓縮)與記憶體映射索引,以維持低記憶體佔用。內建 ONNX Runtime 用於伺服器端編碼,並使用 SQLite 進行元資料預過濾。

ColGREP 利用 NextPlaid 對程式碼庫進行索引。它使用 Tree-sitter 將程式碼解析為結構化表示(提取簽名、呼叫與文件字串),再以類似 ColBERT 的模型進行嵌入。這讓使用者能於本地 CPU 上執行語意搜尋,並結合正規表示式過濾。

適用對象

  • 開發者:希望以快速、本地化且保護隱私的方式語意搜尋程式碼庫的開發者。
  • AI 代理創作者:需要為編碼代理(如 Claude Code)提供高精度檢索工具的開發者。
  • 機器學習工程師:尋找通用、本地優先的多向量資料庫以處理檢索工作負載的工程師。

特色亮點

  • 本地優先執行:ColGREP 是單一 Rust 可執行檔;程式碼永遠不會離開機器。
  • 多向量精準度:每個文件保留多個嵌入,避免資訊遺失。
  • 混合搜尋:結合語意排序與正規表示式過濾。
  • 高效儲存:使用產品量化與記憶體映射,可在記憶體中容納數百萬文件。
  • 代理就緒:內建對 Claude Code、OpenCode 與 Codex 等代理的安裝鈎子。
  • CPU 優化:專為 CPU 高效能設計,支援可選 CUDA 加速。

相關

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