pgvector/pgvector-node
pgvector support for Node.js, Deno, and Bun (and TypeScript)
解决的问题
pgvector-node 为 JavaScript 和 TypeScript 环境提供了一种标准化的方式来使用 pgvector PostgreSQL 扩展进行向量相似性搜索。它弥合了数据库的向量类型与各种流行的 Node.js、Deno 和 Bun 运行时之间的差距,使开发者无需为每次操作编写原始 SQL 即可存储和查询嵌入向量。
工作原理
该库作为广泛数据库客户端和 ORMs 的兼容层。它提供实用函数(如 toSql)将 JavaScript 数组格式化为数据库可理解的格式,并直接集成到支持库的模式定义和查询构建器中。它还支持特殊向量类型,包括稀疏向量,并提供计算距离的辅助方法(如 L2、余弦和内积)。
适用人群
使用 PostgreSQL 作为 AI 应用(如 RAG 或推荐系统)的向量数据库,且在使用 Node.js、Deno 或 Bun 并使用任何支持的 ORMs 或查询构建器的后端开发者。
主要亮点
- 广泛的生态系统支持:兼容大量库,包括 Prisma、Sequelize、TypeORM、Drizzle ORM、Knex.js 和 Kysely。
- 运行时灵活性:可在 Node.js、Deno 和 Bun 上运行。
- 距离度量支持:内置支持 L2 距离、余弦距离、内积、汉明距离和杰卡德距离。
- 稀疏向量支持:包含
SparseVector类,用于处理包含大量零值的高维向量。 - 索引辅助工具:简化 HNSW 和 IVFFlat 索引的创建,用于近似最近邻搜索。
相关
- 项目
- 项目
- 项目
- 项目
- 项目