jev-rerank
Jev as a calibrated reranker: query plus up to 30 documents in one call, one relevance Noul per document, benchmarked on BEIR.
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
| Type | Question | Answers |
|---|---|---|
| Yes / no | Is this document relevant to the query? | yes · no |
How it works
- Retrieve a BM25 shortlist of up to 30 documents
- Send query and documents in one Jev state
- Ask one relevance Noul per document
- 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 rerankAt 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-projectsUse 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-liveUse 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.
LibrarybetaPythonCompares Jev's zero-shot reranking with specialist rerankers on MS MARCO passage and document benchmarks and a TREC WSJ transfer test.
ProjectresearchPythonLocal-first knowledge search with BM25 shortlisting and Jev Noul reranking by default, seven selectable pipelines and cited answers.
AppbetaPythonOpen Jev-style 0.6B decision model plugged into BlitzRank and Reranker-Guided Search, scoring k candidates per match in one pass.
ServiceresearchPythonProfile matching that encodes preference criteria as Clef or Jev decision vectors, retrieves with HNSW and checks rules both ways.
BenchmarkresearchPythonSayora write-up comparing Jev with production embeddings for picking the right website page to answer caller questions.
Articleproduction