The Production Data Engine
The corpus in Chapter 6 was built once, frozen, and trained on. A deployed product cannot stop there, because the moment it ships it begins generating the one thing its next model most needs: records of real users asking real questions and reacting to real answers. That traffic only becomes training signal if a standing apparatus captures it, selects the useful traces, routes scarce labeling budget to the cases that matter, and treats the human side of labeling as the quiet determinant of quality. Deployment is not the end of the training loop; it is the intake of the next one. The accept, edit, reject, escalate, approve, and stop events from Chapter 91 are the first structured inputs to that intake.
This is a different machine from the one in Chapter 23. That loop manufactures data the model did not have; this one harvests data the product already produced and turns it into a label. The two are often run together, but confusing them hides the operational cost, because synthetic generation is compute and harvesting is people, contracts, and consent.
The product is a data collector that also answers questions
A served model emits more than an answer. Every request leaves a trace: the prompt, the retrieved context, the tool calls, the tokens generated, and, if the surface is instrumented, what the user did next. That last part is the asset. A user who accepts a suggestion, edits it before using it, regenerates it, or abandons the session has graded the output without being asked, and at a volume no labeling vendor can match. Implicit signal of this kind is cheap, plentiful, and continuous, which is exactly why it is the backbone of a production data engine.
It is also biased in ways a held-out benchmark is not. Users who regenerate are not a random sample, the edit a user makes reflects their own goal rather than a ground truth, and a thumbs-down arrives far more reliably than a thumbs-up. The engine therefore pairs cheap implicit signal with a thin stream of expensive explicit judgment: a small, deliberately sampled set of traces sent to trained humans who answer a precise question under a written guideline. The implicit stream finds the interesting cases; the explicit stream says what the right answer was. Figure 92.2 draws the circuit.
The labelers are the model
The phrase "human feedback" in Chapter 19 hides a supply chain. Someone wrote the guideline that defines a good answer. Someone else trained the annotators on it, a third checked whether two of them given the same item actually agree, and a fourth audited the ones who drifted. The quality of a preference dataset, the scored answer pairs from Chapter 19 where a human marked which of two responses was better, is set there, not in the optimizer, and a model trained on labels that encode an ambiguous guideline learns the ambiguity faithfully.
The field has a documented blind spot here. The work of defining, collecting, and cleaning data is treated as logistics rather than as the engineering it is, and the result is data cascades: small upstream labeling problems that surface as large, hard-to-diagnose failures downstream (Sambasivan et al. 2021). The problem is not exotic. Widely used benchmarks themselves carry pervasive label errors, enough that the ranking of models can flip once the test labels are corrected (Northcutt et al. 2021). If the sets used to crown state-of-the-art are this noisy, a hastily assembled production labeling operation is noisier.
Three controls keep a labeling operation rigorous. A written guideline with worked examples turns a vague preference into a repeatable judgment. Inter-annotator agreement, measured continuously, says whether the guideline is actually shared or only nominally so. And a QA layer that re-labels a sample of completed work catches drift before it reaches the optimizer. None of this is glamorous, and all of it is load-bearing.
The post-training recipe sets the shape of the operation below it. reinforcement learning from human feedback (RLHF) in Chapter 19 and verifiable-reward training in Chapter 28 both consume fresh, on-distribution preference and outcome data, and they consume it every cycle, not once. That appetite reaches down and mandates a standing collection-and-labeling apparatus wired into the deployment, because the cheapest source of on-distribution data is the model's own production traffic. The training loop's hunger, an upper layer, dictates that the serving surface be built as a data instrument, a lower one. A product that ships without it starves the next model.
Spending a labeling budget where it moves the model
If every trace could be labeled, selection would not matter. None can, so the engine's intelligence is in which few traces it sends to humans. Random sampling wastes the budget on cases the model already handles. Active learning spends it on the cases the model is least sure about, on the argument that a label is worth most where the model's current guess is closest to a coin flip (Settles 2009). Uncertainty sampling and selection by expected model change are the standard instruments; in a generation setting, where there is no single probability to read off, the model's uncertainty is inferred from its own outputs: sample the same prompt several times and measure how often the answers agree, and low agreement, a low self-consistency score, stands in for the classical uncertainty estimate.
Active learning chooses which items to label by hand. Weak supervision attacks the budget from the other side, by replacing some hand labels with programmatic ones. Data programming has domain experts write labeling functions, noisy rules that vote on a label, then learns each rule's accuracy from their agreements and disagreements and combines them into probabilistic labels without ground truth (Ratner et al. 2016). A regex, a heuristic over tool output, and a weaker model's judgment each become a voter. The labels are noisier than a human's, but there are orders of magnitude more of them, and for many tasks that trade wins.
The two compose. Weak supervision labels the bulk cheaply; active learning sends the residual that weak rules disagree on to the humans whose judgment is worth the cost.
The failure that becomes a test
Not all harvested data goes to training. The most valuable single output of the engine is often an eval case, not a gradient. When a production trace is judged wrong, promoting it into the regression suite of Chapter 52 converts a one-time miss into a permanent guard: every future model is now measured against the exact failure that reached a user. This is the same promote-failure discipline that Chapter 89 relies on to decide whether a new model is safe to roll out. The data engine and the deployment lifecycle share a spine here, the live trace, and read it for two purposes, one to retrain and one to gate the retrained result.
The asymmetry is deliberate. A failure that becomes training data might be fixed; a failure that becomes an eval case can never silently regress. Sending the sharpest failures to the eval set rather than the training set is how an operation stops paying for the same bug twice.
Trade-offs: the loop that grades itself
A data engine wired to its own model creates feedback the model did not have at launch, and the same wiring creates pathologies. The first is sampling bias already named: the production distribution is shaped by the current model's behavior, so training on it narrows the next model toward what the last one already did, and capabilities the current model handles poorly generate little traffic to learn from. The second is the grading question. Implicit signal is abundant but ambiguous; a small explicit set is trustworthy but thin and slow. The third is provenance and consent, which is not optional: every trace collected carries the obligations of Chapter 59, and a preference dataset assembled from user content without a lawful basis is a liability, not an asset.
- Human labels or AI feedback for the standing loop? RLHF assumes the grader is human (Ouyang et al. 2022); Constitutional AI replaces much of that grader with the model judging itself against written principles (Bai et al. 2022), which scales the loop to the model's own speed but inherits the model's blind spots. Whether the ongoing engine should be human-graded, AI-graded, or a measured blend is unsettled and task-dependent.
- How far to trust production data. One camp treats on-distribution production traffic as the highest-value training signal there is; the other warns that a model training on the data its own behavior shaped is optimizing a moving, self-selected target, and that periodic injection of out-of-distribution and adversarial data is required to keep the loop from collapsing inward.
- Buy labels or harvest signal. Purchased expert labels are clean, expensive, and slow; harvested implicit signal is noisy, cheap, and continuous. The mix is a live operational choice, not a settled ratio.
Implementation: a thin sketch
The engine is more pipeline than model. At the serving surface, a trace logger writes structured records. On a schedule, a sampler draws candidates by uncertainty and by strata the team cares about, then hands them to a labeling system that presents each against the current guideline and records the answer alongside the annotator and the agreement check. The last stage is a promotion step that routes the result: clear failures to the eval set, scored pairs to the preference store, everything to a governed table with its consent basis attached. None of these steps is novel infrastructure; the discipline is in running them continuously and treating the guideline, the agreement metric, and the consent basis as first-class artifacts rather than afterthoughts.
Production traffic as training signal
The production data engine is the mechanism that keeps a deployed model improving rather than decaying. What makes the next model more capable is the freshest possible on-distribution data, the cases real users actually bring, which no static corpus contains. Efficiency is a selection problem: active learning and weak supervision exist to buy the most model improvement per dollar of human judgment, because labeling, not compute, is the binding cost here. The dimension the field underinvests in is trust, and it lives in the human supply chain and the consent ledger, where an ambiguous guideline or an unlawful collection turns the engine from an asset into a slow-acting liability. A model is only as good as the data it is fed, and after launch the product is what feeds it.
Further reading
- Sambasivan et al., ““Everyone wants to do the model work, not the data work”: Data Cascades in High-Stakes AI” (the under-acknowledged cost of data work), 2021. doi.org
- Northcutt et al., “Pervasive Label Errors in Test Sets Destabilize Machine Learning Benchmarks,” 2021. arXiv:2103.14749This paper identifies pervasive label errors averaging 3.3
- Settles, “Active Learning Literature Survey,” 2009. minds.wisconsin.edu
- Ratner et al., “Data Programming: Creating Large Training Sets, Quickly” (weak supervision), 2016. arXiv:1605.07723Data programming lets users write noisy labeling functions instead of hand-labeling examples; a generative model denoises their outputs to produce large training sets programmatically.
- Ouyang et al., “Training Language Models to Follow Instructions with Human Feedback” (the human grader the loop assumes), 2022. arXiv:2203.02155
- Bai et al., “Constitutional AI: Harmlessness from AI Feedback” (replacing the human grader with the model), 2022. arXiv:2212.08073
Comments
Log in to comment