PostgreSQL 확장 pgjev 공개, 임베딩 없이 자연어 필터링 지원
pgjev: 임베딩이나 벡터 컬럼 없이 WHERE 절에서 자연어로 행을 필터링하는 PostgreSQL 확장
핵심 내용
임베딩이나 벡터 컬럼 없이 SQL WHERE 절에서 자연어로 행을 필터링하는 PostgreSQL 확장 pgjev가 공개됐다.
자세히 보기
개발자 Zachi가 pgjev PostgreSQL 확장을 공개했다. 이 도구는 임베딩 생성이나 벡터 컬럼 없이도 SQL의 WHERE 절에서 자연어 조건으로 데이터 행을 필터링할 수 있게 한다.
기존 방식과의 차별점
기존 Full Text Search는 키워드 일치만 지원하고, pgvector는 유사도 순위 반환에 그치며, 앱 내 LLM 호출은 SQL 연산과 결합하기 어려웠다. pgjev는 TypeSafe의 Jev(System One) 모델을 사용하여 텍스트 생성 대신 보정된 확률(Calibrated Probability)을 반환한다. 이를 통해 AND, ORDER BY, GROUP BY 등 표준 SQL 연산과 호환되며, 인덱스나 벡터 컬럼 준비 과정이 필요 없다.
성능 및 비용 구조
pgjev는 전수 스캔 구조를 채택해 인덱스를 사용하지 않는다. v0.2.0 기준 2,000행 쿼리는 약 3.5초가 소요되며, 이는 v0.1.0의 8.5초 대비 크게 개선된 수치다. 배치 크기 최적화(40행에서 20행으로 조정)와 스트리밍 읽기, TLS 연결 재사용을 통해 요청 지연을 줄였다. 비용은 입력 토큰 기준으로 과금되며, 2,000행 쿼리 시 약 $0.012 수준이다. 캐시 재실행 시에는 약 50ms로 매우 빠르다.
도입 조건 및 한계
Self-hosted PostgreSQL 환경에서 superuser 권한과 plpython3u 확장이 필요하다. Supabase, Neon, RDS 등 관리형 DB에서는 plpython3u 차단으로 인해 사용이 제한될 수 있다. 또한 데이터 행 전체가 TypeSafe API로 전송되므로 외부 전송이 불가능한 민감 데이터에는 부적합하다. 수십만 행 이상의 대규모 데이터셋에는 부적절하며, 인덱스 활용 조건으로 대상 행을 축소한 후 적용하는 것이 권장된다.
이 한국어 요약은 AI가 자동으로 만들었습니다. 원문의 주장과 맥락은 원문에서 확인해 주세요. 저작권은 원저작자에게 있습니다.