RAG Evaluation in Production: CI and CD Golden Set Gates and Live Monitoring

Liam, in for Ameya Deshmukh, separates offline evaluation, which can measure correctness, from online monitoring, which cannot. The video shows how a golden-set gate blocks regressions and how proxies and traces catch drift after launch.

3:25 video3 min readWatch on YouTube

You shipped the RAG system and the numbers look good. The question that matters, the video says, is how you know it still works tomorrow on traffic you have never seen. In this video, Liam, in for Ameya Deshmukh, explains that there are two kinds of evaluation and you need both.

Offline and online are different jobs

Offline evaluation runs before you ship, on a fixed set where you know the right answer, so correctness can be computed directly. Online evaluation runs in production on real questions with no labels, where correctness cannot be computed at all. The video stresses that it is the same word for two completely different problems.

Building a golden set

Offline is the one you control. You build a golden set of real questions with known good answers and score your system against it. Retrieval quality is measured with hit rate and MRR, and generation quality with faithfulness. Because you know the truth, these numbers mean exactly what they say.

Making it a gate

Then you make it a gate. Run the golden set on every deploy and compare to the baseline. If MRR or faithfulness drops, the deploy is blocked, the same way a failing unit test stops a release. The video says a silent quality regression after a prompt tweak is exactly the bug this catches before a single user sees it. In practice, the gate is small: run the golden set, compute MRR, and fail the build if it slipped below the baseline. It uses the same eval harness the series has been building, pointed at the deploy.

Watching without labels

After you ship, the ground truth disappears. Online monitoring therefore changes the question from "is this answer correct?" to "is the system behaving like it did when it was healthy?" Without labels, you watch proxies, which are signals that move when something breaks:

  • The retrieval score distribution. Alert when the mean top-one score starts declining, because that means retrieval is drifting.
  • Refusal rate.
  • Latency and cost per request.
  • User feedback signals.

None of these is correctness, but together they tell you when to go look.

Traces explain the alerts

What makes both loops debuggable is the trace. For every request, a tool like LangSmith records the whole story: which chunks were retrieved and at what scores, the exact prompt sent, what came back, the latency of each stage, plus tokens and cost. When a proxy alerts, the trace is where you find out why.

The full picture

There are two loops. Before deploy, the offline golden set in CI gates the release. After deploy, online proxies watch for drift and traces explain it. One rule ties them together, the same one from the whole series: debug retrieval first. When a number moves, look at the retrieved chunks before you touch the prompt.

Key takeaways

  • Offline evaluation measures correctness on a golden set; online monitoring has no labels.
  • Hit rate and MRR cover retrieval quality, and faithfulness covers generation quality.
  • Run the golden set on every deploy and block the release if MRR or faithfulness drops below baseline.
  • Online, watch proxies: retrieval score distribution, refusal rate, latency, cost, and feedback.
  • A per-request trace makes either loop debuggable.
  • When a number moves, check the retrieved chunks before changing the prompt.

Try it yourself

Build a 20-question golden set for your own system and wire it into CI so a drop blocks the deploy. Then log the retrieval scores of live traffic and watch the mean. The video says that the day the mean starts sliding, you will know before your users do, and the trace will tell you why.

Chapters

  1. 0:00Introduction: Offline Evaluation vs Online Monitoring
  2. 0:45Offline Evaluation: Golden Sets, Hit Rate, MRR, and Faithfulness CI and CD Deployment Gates: Blocking Silent Quality Regressions Online Monitoring Without Labels: Watching Retrieval Score Distributions
  3. 3:20Production Proxy Signals: Refusal Rates, Latency, and Cost Tracking
Full transcript(auto-generated, with timestamps)

Introduction: Offline Evaluation vs Online Monitoring

[0:00]Namaste circumflex euros, this is Liam in for Amia. Build it with Claude then take it apart. You shipped the rag system and the numbers look good. Here's the question that actually matters. How do you know it still works tomorrow on traffic you've never seen? There are two kinds of evaluation and you need both. Offline and online evaluation are not the same job. Offline runs before you ship on a fixed set where you know the right answer, so you can compute correctness directly. Online runs in production on real questions with no labels where you cannot compute correctness at all. Same word, two completely different problems. Start with offline because it's the one you control. You build a golden set a circumflex euros, real questions with known good answers a circumflex euros, and you score your system against it. Retrieval quality with hit rate and MRR,

Offline Evaluation: Golden Sets, Hit Rate, MRR, and Faithfulness CI and CD Deployment Gates: Blocking Silent Quality Regressions Online Monitoring Without Labels: Watching Retrieval Score Distributions

[0:46]Generation quality with faithfulness. Because you know the truth, these numbers mean exactly what they say. Now make it a gate. Run that golden set on every deploy and compare to the baseline. If MRR or faithfulness drops, the deploy is blocked a circumflex euros, the same way a failing unit test stops a release. A silent quality regression after a prompt tweak is exactly the bug this catches before a single user sees it. Then you ship and the ground truth disappears. In production, a user asks a question you've never seen and nobody labels whether the answer was right. You can't compute correctness live. So online monitoring changes the question a circumflex euros from is this answer correct to is the system behaving like it did when it was healthy. Without labels, you watch proxies a circumflex euros, signals that move when something breaks. The retrieval score distribution, alert when the mean top one score starts declining because that means retrieval is

Drifting. Refusal rate, latency, and cost per request, and user feedback signals. None of these is correctness, but together they tell you when to go look. And the thing that makes both debuggable is the trace. For every request, a tool like LangSmith records the whole story. Which chunks were retrieved and at what scores, the exact prompt that was sent, what came back, and the latency of each stage a circumflex euros plus the tokens and cost. When a proxy alerts, the trace is where you find out why. In practice, the offline gate is small. Run the golden set, compute MRR, and fail the build if it slipped below the baseline. That's a handful of lines standing between you and a silent regression a circumflex euros, and it's the same eval harness the whole series has been building, now pointed at the deploy. So, the full picture is two loops. Before deploy, the offline golden set in CI gates the release. After

Deploy, online proxies watch for drift and traces explain it. And one rule ties them together, the same one from the whole series a circumflex euros debug retrieval first. When a number moves, look at the retrieved chunks before you touch the prompt. So, keep three things. Offline eval needs a golden set and runs before deploy where you can measure correctness. Online monitoring has no labels, so you watch proxies a circumflex euros score distributions, refusals, latency, cost, and a per request trace is what makes either one debuggable. Gate before, watch after. Your turn. Take this prompt to your own system. Build a 20-question golden set, wire it into CI so a drop blocks the deploy, then log the retrieval scores of live traffic, and watch the mean. The day that mean starts sliding, you'll know before your users do a circumflex euros, and the trace will tell you why. RAG a circumflex euros evaluation in production. Gate before you ship, watch

Production Proxy Signals: Refusal Rates, Latency, and Cost Tracking

[3:21]After. This is Liam in for Aamia.

More from Humanitarians AI Fellows

Humanitarians AI Lyrical Literacy Project