Skip to content

jev-rerank

Jev as a calibrated reranker: query plus up to 30 documents in one call, one relevance Noul per document, benchmarked on BEIR.

ProjectbetaApache-2.0

Overview

hev reranker uses Jev as a reranker. One call carries the query and up to 30 candidate documents, and Jev answers one question per document in parallel: is this document relevant to the query? Because the answer is a probability, it serves both as a sort key and as an absolute threshold for pruning. The repository contains the prompt, the request state schema, a roughly 90-line Python wrapper and detailed results.

On BM25 top-30 shortlists from SciFact, NFCorpus and FiQA, the README reports Jev at nDCG@10 of 0.768, 0.358 and 0.376 with a domain-neutral prompt, compared with Cohere rerank-v3.5, Mixedbread, Voyage rerank-2.5 and -3, a local MiniLM cross-encoder and LLM listwise rerankers. Paired bootstrap shows Jev at or above Cohere on all three, trading results with Voyage, and tying Claude Opus 5 at about 1/100 the cost. The author's summary: a general decision model with no reranker training lands in the same bracket as the best purpose-built rerankers at a third of Cohere's price, and adds a calibrated probability per document.

What the decision model decides

TypeQuestionAnswers
Yes / noIs this document relevant to the query?yes · no

How it works

  1. Retrieve a BM25 shortlist of up to 30 documents
  2. Send query and documents in one Jev state
  3. Ask one relevance Noul per document
  4. Sort by probability and optionally prune by threshold

Strengths

  • Competitive quality at low cost
  • Probability supports pruning, not just ordering
  • Full results with intervals and calibration checks

Caveats

  • Voyage rerank-3 was as good and slightly cheaper
  • Tail latency higher in single-state mode
  • Requires a TypeSafe key

Getting started

pip install hev-rerank, export TYPESAFE_API_KEY, then from hev_rerank import rerank

At a glance

Type
Project
Status
beta
Language
Python
Runtime
Library
Has code
yes
License
Apache-2.0
Stars
17

Use cases and integrations

How curated lists describe it

  • A Python reranker that packs a query and up to 30 candidates into one Jev state, with one Noul relevance question per document.

    logicrw/awesome-jev-projects
  • Use Jev (TypeSafe's System One model) as a calibrated reranker: one call, up to 30 documents, a probability per document. Apache-2.0.

    wh000wh000/awesome-jev-live
  • Use Jev (TypeSafe's System One model) as a calibrated reranker: one call, up to 30 documents, a probability per document. Apache-2.0.

    hellogumbo/awesome-jev

Frequently asked questions

How good is Jev as a reranker?

On three BEIR sets it matched or beat Cohere and traded results with Voyage, per the README.

Why use probabilities?

They allow pruning by an absolute threshold as well as sorting.

How many documents per call?

Up to 30.

Related projects

  • Milvus-based multi-hop graph RAG library where two-stage Jev Noul scoring selects relations and reranks passages.

    LibrarybetaPython
  • Compares Jev's zero-shot reranking with specialist rerankers on MS MARCO passage and document benchmarks and a TREC WSJ transfer test.

    ProjectresearchPython
  • Local-first knowledge search with BM25 shortlisting and Jev Noul reranking by default, seven selectable pipelines and cited answers.

    AppbetaPython
  • Open Jev-style 0.6B decision model plugged into BlitzRank and Reranker-Guided Search, scoring k candidates per match in one pass.

    ServiceresearchPython
  • Profile matching that encodes preference criteria as Clef or Jev decision vectors, retrieves with HNSW and checks rules both ways.

    BenchmarkresearchPython
  • Sayora write-up comparing Jev with production embeddings for picking the right website page to answer caller questions.

    Articleproduction