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용 호환성 계층으로 작동합니다. 데이터베이스가 이해할 수 있는 형식으로 JavaScript 배열을 변환하는 유틸리티 함수(예: toSql)를 제공하며, 지원되는 라이브러리의 스키마 정의 및 쿼리 빌더에 직접 통합됩니다. 또한 스파스 벡터를 포함한 특수 벡터 타입을 지원하며, L2, 코사인, 내적과 같은 거리 계산을 위한 헬퍼 메서드도 제공합니다.
대상 사용자
AI 애플리케이션(예: RAG 또는 추천 시스템)에서 PostgreSQL을 벡터 데이터베이스로 사용하는 백엔드 개발자로서, Node.js, Deno, Bun을 사용하고 지원되는 ORMs 또는 쿼리 빌더를 사용하는 경우.
주요 특징
- 광범위한 생태계 지원: Prisma, Sequelize, TypeORM, Drizzle ORM, Knex.js, Kysely 등 수많은 라이브러리와 호환됩니다.
- 런타임 유연성: Node.js, Deno, Bun에서 모두 작동합니다.
- 거리 메트릭 지원: L2 거리, 코사인 거리, 내적, 해밍 거리, 자카르드 거리의 내장 지원.
- 스파스 벡터 지원: 많은 0을 포함하는 고차원 벡터를 처리하기 위한
SparseVector클래스 포함. - 인덱싱 헬퍼: 근사 최근접 이웃 검색을 위한 HNSW 및 IVFFlat 인덱스 생성을 간소화합니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트