阅读中文版

Your Test Set Never Sees Your Traffic

Checklist with a few failures under review

There are usually three datasets in a project: the training set, the evaluation set, and the traffic. The first two are siblings, and the third is a stranger.

A model that scores well on siblings and behaves oddly on strangers is not a mystery. The distribution was never sampled.

Traffic is a different shape

Requests from users are shorter, misspelled, missing context, and often ask for something adjacent to what the product does. None of that appears in a benchmark built from curated examples.

Sample from traffic, including the ones that were escalated and the ones that were abandoned.

Add the failure modes deliberately

  • Incomplete requests
  • Requests with a wrong premise
  • Requests in a language or register the product does not claim
  • Requests that should be refused

Each one is a slice with its own score. An aggregate hides all four.

Keep a production sample frozen

Take a snapshot of a week's traffic, label it, and never change it. It is the closest thing to a fair test of what the product faces.

Refresh it on a schedule by adding a new frozen slice, not by editing the old one.

Report by slice, always

A single number invites the wrong conclusion. Four numbers invite the right question, which is which slice moved.

Zovda builds evaluation sets through Datuva, where each row keeps its origin and its date. The corpus catalogue shows which families ship with an evaluation slice.

Tell us what your traffic actually contains. We reply within one business day.

Tell us what your traffic looks like

Related insights

Evaluation data that holds up under review

Rubrics, gold sets, and paired data built around how you actually evaluate. We reply within 1 business day.

Start a trialSee the corpus catalogue

Request a trial

Tell us what you need. We reply within 1 business day.