sqliteai/sqlite-vector

SQLite-Vector is a cross-platform, ultra-efficient SQLite extension that brings vector search capabilities to your embedded database.

解决的问题

SQLite-Vector 直接在 SQLite 内部提供生产级的向量搜索功能。它消除了对外部向量数据库(如 FAISS 或 Weaviate)或复杂耗时的预索引过程(如 HNSW 或 DiskANN)的需求,非常适合边缘 AI、移动应用以及注重隐私的离线工作负载。

工作原理

它作为跨平台的 SQLite 扩展实现,允许将向量以标准 BLOB 形式存储在普通表中。使用高度优化的 C 实现,并通过 SIMD 加速进行距离计算。为提升性能并减少内存使用,采用了多种量化技术,包括 TurboQuant(低比特标量量化器)以及其他格式如 INT8 或 1BIT,使系统能够在不完全重构向量的情况下进行扫描。

适用人群

希望使用轻量级嵌入式解决方案的 RAG(检索增强生成)或语义搜索应用开发者,该方案可在 iOS、Android、Windows、Linux、macOS 上运行,或通过 WASM 在浏览器中运行。

主要亮点

  • 无需预索引:无需长时间的预处理阶段,可立即开始搜索。
  • 普通表存储:无需特殊虚拟表,可直接以 BLOB 形式存储向量。
  • 支持 TurboQuant:支持 2、3 和 4 比特的高效率量化扫描。
  • 低内存占用:默认仅使用 30MB 内存。
  • 跨平台支持:原生支持所有主流操作系统和移动平台。
  • 离线就绪:完全在设备上运行,保障隐私与速度。

相关

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