AI Briefing

pg-jev, TypeSafe Jev API로 SQL 자연어 검색 지원

·2026.10.08 09:50

핵심 내용

pg-jev 확장은 TypeSafe Jev API로 SQL에서 자연어 조건을 평가한다.

자세히 보기

핵심 기능

pg-jev는 SQL 쿼리 내에서 자연어 조건으로 데이터를 검색하고 분류할 수 있게 하는 PostgreSQL 확장 프로그램이다. TypeSafe Jev API와 연동해 각 행을 조건과 비교한다. 주요 함수는 다음과 같다:

  • jev(row, condition [, threshold]): WHERE 절에서 사용하는 불리언 술어를 반환한다. 기본 임계값은 0.5이다.
  • jev_prob(row, condition): 행이 조건을 충족할 확률(0~1)을 반환한다.
  • jev_choice(row, question, options): 목록에서 가장 가능성 높은 선택지를 반환한다.
  • jev_score(row, question, levels): 순서가 있는 수준에 따라 행을 점수화한다.

성능 및 설정

API 호출에 의존하므로 성능 튜닝이 중요하다. 기본 설정은 다음과 같다:

  • 배치 크기: jev.batch_size 기본값은 20이다. 배치 크기가 커지면 정확도가 떨어진다(20일 때 100%, 40일 때 92~98%, 80 이상에서 더 낮음).
  • 동시성: jev.concurrency 기본값은 16이다.
  • 선독: jev.max_prefetch_rows 기본값은 5,000으로, 검색 시 미리 읽을 행 수를 제어한다.
  • 캐시: 응답은 백엔드 세션 동안 행 내용과 질문에 따라 캐시된다. 캐시는 jev_cache_clear() 호출 또는 세션 종료까지 유지된다. 별도의 jev.cache_ttl 설정은 없으며, 캐시 수명은 세션에 종속된다.
  • 모델: 기본적으로 jev-latest를 사용한다.

설치 및 요구 사항

  • PostgreSQL 버전: 14~17을 지원한다.
  • 의존성: 비신뢰 언어 특성상 plpython3u와 superuser 권한이 필요하다.
  • API 키: TypeSafe 호스트에서는 유효한 TypeSafe API 키(jev.api_key)가 필수다.
  • 설치 방법: PGXN(pgxn install jev), 소스(make install), 또는 Docker로 설치할 수 있다.

제한 사항 및 보안

  • 전체 테이블 스캔: 설계상 실행자가 요청한 모든 행을 API로 전송한다. 먼저 저렴한 SQL 술어로 행을 필터링해야 한다.
  • 데이터 프라이버시: 행 데이터가 제3자 API로 전송된다. 공유할 수 없는 민감한 데이터에는 사용하지 말아야 한다.
  • 비용 제어: 조기 종료를 위해 LIMIT을 사용하고, jev.max_rows_per_statement로 지출 상한을 설정한다.
  • 라이선스: PostgreSQL License. 이 프로젝트는 TypeSafe와 관련이 없다.

이 한국어 요약은 AI가 자동으로 만들었습니다. 원문의 주장과 맥락은 원문에서 확인해 주세요. 저작권은 원저작자에게 있습니다.

AI 처리 방식을 확인하거나, 요약 오류와 출처 표기 문제, 삭제 요청을 문의 · 건의로 알려주세요.