Back
data-searchdeveloper-toolsresearchOpen source

pg-jev

Use Jev decisions directly inside PostgreSQL filters, rankings, and classifications.

What Jev decides

Whether a row matches, how strongly it matches, or which supplied label best describes it.

The extension exposes SQL functions for boolean matching, probabilities, scoring, and choices, so rows can be evaluated against natural-language criteria without adding embeddings or a vector column.

NOULCHOICESCORE
Jev role
Evaluate database rows against natural-language conditions from inside SQL.
Input
A PostgreSQL row or value plus a natural-language criterion.
Output
Boolean Noul decisions, probabilities, Score values, or Choice labels depending on the SQL function.
Decision frequency
For each candidate row not satisfied from the extension cache.
Fallback
Use ordinary indexed SQL filters first and keep deterministic predicates for exact conditions.
Author reported · Source reviewed

How it works

Input
A PostgreSQL row or value plus a natural-language criterion.
Jev
NOUL + CHOICE + SCORE
Output
Boolean Noul decisions, probabilities, Score values, or Choice labels depending on the SQL function.

Overview

pg-jev brings Jev into PostgreSQL through PL/Python functions such as jev(), jev_probability(), jev_score(), and jev_choice(). Queries can filter rows, rank them by semantic criteria, or assign a label while keeping the surrounding data workflow in SQL.

Without ordinary SQL predicates, a query can scan many rows and issue remote model requests for them. Selected row data is sent to the TypeSafe API, installation uses untrusted PL/Python and superuser privileges, and the README recommends narrowing the candidate set with indexed filters before calling Jev.

Language
PL/Python and SQL
License
PostgreSQL
Author
realZachi
Sources checked Sep 21, 2026

Sources

Related projects