From the traffic your agents have already handled. Every interaction leaves a record of what was asked and what the model returned. Grading is scoring each of those responses against the criteria you set for a good answer, and the scored records are the training set.
Without a score, prompts and completions teach a smaller model to imitate the larger one, mistakes included. The score is what tells the training which responses were worth imitating.
Collecting traffic is straightforward. Any system serving agents can log what went in and what came out. A log holds no opinion about which responses were good, and a smaller model trained on all of it reproduces the average of the larger one.
Grading supplies the opinion. Structured output is scored by a rule: a query either parses and returns the right rows, or it does not. Unstructured output is scored by a second model reading the response against criteria you wrote.
The same evaluation decides whether a response was acceptable to serve. Running it produces the quality signal and the training signal at once.
A stack assembled from separate products has to move this data. The trace lives in an observability tool. The evaluation runs somewhere else. The training job reads from a bucket a pipeline wrote. Each hop is a copy, a schema, a permission boundary, and a bill.
When evaluation, training, and inference run on the same runtime as the agents, the trace the agent emitted is the record used to grade, to train, and to serve. There is no export step, because nothing left.
Akka Verify reads that same record for governance, so training adds no second data-handling surface to review.
The volume depends on how narrow the task is. A well-bounded task with consistent structure needs far less than an open-ended one. The test is whether a sample of the work you want to move is representative of all of it.
Training needs no separate labelling project. The evaluations that already decide whether a response was acceptable produce the labels as a side effect of running.
Then the grades say so, and the records that failed are not what the candidate trains toward. A model trained on scored traffic learns only from the responses that passed.
You own the model. The model is tuned from an open-weight base inside your own environment, and the weights that result are yours to keep and to move.