jev-reranker
Python library that reranks RAG results and filters out documents that do not help answer the query, using Jev Noul judgments.
Overview
jev-reranker is a Python library for reranking search results and filtering retrieved documents with Jev. Its main function, relevance_rerank, scores documents for their usefulness as evidence (including partial answers and facts needed for multi-hop reasoning), sorts them and removes those below a configurable threshold; an empty result tells the application to search again or stop before generation. A plain rerank function reorders without filtering by default.
Prompts are Python dictionaries you can edit to describe what counts as useful evidence. Long candidate lists are split automatically using character counts, a tokenizer or a custom length function, and sync and async methods share concurrency limits, retries and HTTP cleanup. Optional details record all scores, including excluded documents, with prompts, model, input lengths, usage and request history. It needs no local model or GPU, and a Hugging Face blog post walks through examples.
What the decision model decides
| Type | Question | Answers |
|---|---|---|
| Yes / no | Is this document useful evidence for answering the query? | yes · no |
| Yes / no | Is this document relevant to the query? | yes · no |
How it works
- Retrieve candidates with any search method
- Call relevance_rerank or rerank with the query and documents
- Jev scores each document
- Sort, filter by threshold and assemble context, or search again if empty
Strengths
- Filters out matching-but-unhelpful documents
- Editable prompts
- Detailed audit records
- Sync and async APIs with retries
Caveats
- Requires a TypeSafe key; usage is billed
- Threshold needs tuning for your data
Getting started
uv add jev-reranker (or pip install jev-reranker), then JevReranker(api_key=...).relevance_rerank(query, documents)At a glance
- Type
- Project
- Status
- beta
- Language
- Python
- Runtime
- Library
- Has code
- yes
- Has tests
- yes
Use cases and integrations
How curated lists describe it
Retrieval and RAG: uses Jev Noul judgments to assess retrieved documents for relevance and usefulness as answer evidence, then sorts results and optionally filters them using a configurable threshold.
yibie/awesome-jevRetrieval and RAG: uses Jev Noul judgments to assess retrieved documents for relevance and usefulness as answer evidence, then sorts results and optionally filters them using a configurable threshold.
cobanov/awesome-jevJev-powered relevance filtering and reranking for RAG in Python.
hellogumbo/awesome-jev
Frequently asked questions
How is relevance_rerank different from rerank?
relevance_rerank filters out documents below a threshold; rerank only reorders by default.
What if nothing passes?
You get an empty list and can search again or skip generation.
Does it need a GPU?
No. Scoring runs through the Jev API.
Related projects
- Jev Search★ 534
Plain-language web search where a decision model like Jev picks query, sources and time range, then ranks Search1API results.
AppproductionTypeScript MCP server over Apple developer docs and WWDC transcripts that uses hybrid search, then Jev relevance scores to rank results.
MCP serverproductionTypeScriptLocal long-term memory for coding agents with an optional Jev reranker that orders recalled memories.
ProjectproductionTypeScriptVolcengine's context database for agents, with a Jev rerank client that scores candidate documents with jev-latest as relevance.
LibraryproductionPython- jev-rerank★ 17
Jev as a calibrated reranker: query plus up to 30 documents in one call, one relevance Noul per document, benchmarked on BEIR.
ProjectbetaPython Deterministic code-graph context for coding agents on Postgres, AGE and pgvector, with optional Jev or local re-selection of symbols.
MCP serverbetaPython