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 内存。
- 跨平台支持:原生支持所有主流操作系统和移动平台。
- 离线就绪:完全在设备上运行,保障隐私与速度。
相关
- 项目
- 项目
- 项目
- 项目
- 项目