Developer kit · Python + TypeScript

Your RAG isn’t hallucinating.It’s retrieving the wrong chunks.

When a RAG answer is wrong, the blame lands on the model — but usually the model never got the right context. The retriever ranked the answer at position 9, or missed it entirely, and the model guessed.

The RAG Retrieval Grader scores the retrieval step on its own — Recall@k, Precision@k, MRR, nDCG — then tells you to ship, hold, or fix, lists every query where the answer never reached the model, and gates it in CI.

Get the Kit — $89one-time · instant download · free updates within the version
What’s in the kit
Metrics engine
Retriever adapters
Gold-set toolkit
CLI
CI workflow
Verdict report
Works with
Pinecone · Weaviate · Qdrant · Chroma · pgvector · LangChain · LlamaIndex
01.The Silent Failure

Broken retrieval looks exactly like a working app.

When a RAG answer is wrong, the blame lands on the model. But most of the time the model did its job — it just never got the right context. The retriever ranked the answer at position 9, or missed it entirely, and the model filled the gap with a confident guess.

You can’t fix what you can’t see. Without isolating retrieval, every fix is a guess — re-prompt, re-chunk, swap the embedding model, raise the temperature, and hope. The Grader replaces the guessing with a number.

Position 9

The right chunk exists, but retrieval buried it below the cutoff. The model never sees it, so it answers from the noise it did get — confidently, and wrong.

Never retrieved

Sometimes the answer simply never surfaces. The query looks handled, the response looks fluent, and the failure is invisible until a user hits it in production.

Silent regressions

An embedding swap or a chunking tweak quietly drops recall. Nothing errors, nothing alerts — the bar just lowers, and no one notices until trust erodes.

02.See It Work

Grade a sample eval set right here.

Six real support questions, scored live with the exact formulas that ship in the kit — verified against both the Python and TypeScript engines. Two of them are quietly failing. Flip a chunk’s relevance and watch the scores — and the verdict — move.

Live grader · sample eval set

6 queries · customer-support knowledge base

Verdict: HOLD — FIX FIRST

Retrieval is leaking. Some answers never reach the model. Fix the misses below before shipping.

Threshold: Recall@5 ≥ 90% ship · 75–90% hold · <75% block. Tunable in the kit.

Recall@5

83%

Of the right answers, how many were retrieved

Hit Rate@5

83%

Queries with at least one right chunk

MRR

0.51

How high the first right chunk ranks

nDCG@5

0.57

Ranking quality, weighted by position

Precision@5

20%

Share of retrieved chunks that are relevant

Per-query results · tap a chunk to flip its relevance and watch the scores move

How do I reset my password?

first hit @ rank 1

What is your refund policy?

first hit @ rank 1

Do you offer annual billing?

first hit @ rank 3

How do I export my data?

miss

1 relevant chunk exists in the KB but was never retrieved — the model never sees the answer.

Can I add team members?

first hit @ rank 2

Is there an API rate limit?

first hit @ rank 5

This demo scores 6 sample queries and resets on reload.

The full kit grades your entire eval set against your live retriever — Pinecone, Weaviate, pgvector, Chroma, Qdrant, LangChain, or LlamaIndex — and fails the build in CI the moment recall drops. Ship retrieval you can prove.

Get the RAG Retrieval Grader — $89
03.What It Measures

Five metrics, in plain English.

Recall@k

Of the chunks that should have been retrieved, how many showed up in the top k. The headline metric — low recall means the answer never reached the model.

Hit Rate@k

The share of queries where at least one correct chunk appeared in the top k. A blunt but honest “did we get anything right” check.

MRR

Mean Reciprocal Rank — how high up the first correct chunk lands, on average. Rewards putting the answer at the top, not buried at position 8.

nDCG@k

Ranking quality weighted by position. Captures whether your best chunks sit above your weaker ones, not just whether they appear.

Precision@k

The share of retrieved chunks that are actually relevant. Surfaces noisy retrieval that floods the context window with junk.

04.What's Inside

Everything to grade and gate retrieval.

Metrics engine

Recall@k, Precision@k, MRR, nDCG@k, Hit Rate — Python + TypeScript, fully tested (identical scores across both).

Retriever adapters

Pinecone, Weaviate, Qdrant, Chroma, pgvector, LangChain, LlamaIndex + a template for any custom retriever.

Gold-set toolkit

A labeling template, workflow, and a bootstrapper that drafts a starter eval set from your docs.

CLI

Run a full eval from the terminal and print a scored report — with the verdict — in seconds.

CI workflow

A drop-in GitHub Actions job that fails the build when retrieval drops below your threshold.

Verdict report

An HTML report generator with the ship/hold/fix verdict and a ranked list of misses to share with your team.

05.How It Works

Four steps to provable retrieval.

1
Build a gold set

Pair real questions with the chunks that should answer them. Use the template, or bootstrap a starter set from your existing documents.

2
Wire your retriever

Point an adapter at your vector DB or framework retriever. One small function for custom stacks.

3
Run the grade

Score the whole set from the CLI. Get Recall@k, MRR, nDCG, and a ship/hold/fix verdict with every miss listed.

4
Gate it in CI

Set your minimum recall and add the GitHub Action. Now no change can quietly degrade retrieval without failing the build.

06.Where It Fits

Next to the eval frameworks — complementary, not a replacement.

Most RAG-eval tools score quality with an LLM acting as judge — strong for generation quality like faithfulness, but for retrieval it adds cost, rate limits, and run-to-run variance, and a judge can’t reliably tell a wrong-but-plausible chunk from the right one. The Grader answers a narrower, harder-to-fake question with exact arithmetic against a gold set: did the chunk that actually answers this question show up, and how high did it rank?

ToolApproachGround truthRetrieval gate / verdictLanguagesDelivery
RAG Retrieval GraderDeterministic IR metricsRequired (bootstrapper incl.)Built-in ship/hold/fix + CI gatePython + TypeScriptBuy-once kit · offline · no telemetry
RAGASLLM-as-judge (reference-free)OptionalMetrics; gating is DIYPythonOpen-source library
DeepEvalLLM-as-judge · pytest-nativeOptionalThreshold gates in CIPythonOpen-source (+ hosted platform)
TruLensLLM-as-judge (RAG triad) + tracingOptionalMetrics + tracing; gating is DIYPythonOpen-source
Arize PhoenixLLM-as-judge + observabilityOptionalDashboards + evalsPythonOpen-source · self-hostable (+ platform)
LangSmithTracing + evaluators (LLM/custom)Optional (datasets)Eval runs + dashboardsPython + JS/TSSaaS (free + paid tiers)

It’s not a replacement — it’s the layer they leave to you.

Use an LLM-judge framework for faithfulness and groundedness. Use the Grader to prove retrieval deterministically and gate it in CI — no judge tokens, no variance, reproducible on every run. Most teams need both layers.

Comparison reflects each tool’s general positioning as of June 2026; the space moves quickly, so verify current capabilities on each project’s docs. Names belong to their respective owners.

07.Who It's For

Built for teams shipping RAG to real users.

Founders and dev teams running a support bot, internal knowledge assistant, docs search, or any retrieval-backed feature — anyone who needs to answer “is our retrieval good enough to ship?” with evidence instead of vibes. Exactly what you get for $89, and what you don’t: a deterministic retrieval grader — not an LLM-judge framework for faithfulness (use both).

08.Common Questions

The questions engineers actually ask before wiring it in.

It scores the retrieval step of your RAG pipeline using standard information-retrieval metrics: Recall@k, Precision@k, Mean Reciprocal Rank (MRR), Normalized Discounted Cumulative Gain (nDCG@k), and Hit Rate. It then returns a ship / hold / fix verdict against tunable thresholds and lists every query where retrieval missed.

Python + TypeScript · any vector DB · $89

Stop guessing. Grade your retrieval.

Score Recall@k, MRR, and nDCG, surface every miss, and gate it in CI — Python or TypeScript, any vector DB. One-time $89, yours to keep.

Sold by RedHub AI LLC · Secured by Stripe · redhub.ai