data_generation section of the YAML config.
The SDK reads a single YAML file that contains bothdata_generationandtraining. You typically run:
run_data_generation(config_path=...)run_training(config_path=...)
File format
Your YAML file is a run config that includes top-level keys and a nesteddata_generation section:
Configuration structure
Thedata_generation section has six parts:
metric: what you’re generating data for (classes, rubrics, input format)source_data: the seed dataset (CSV or Hugging Face) + samplingllm: the primary LLM used for generationgeneration: how many examples to generate, distribution, concurrencyoutput: where the generated dataset is written/publishedlabelling+data_quality_metrics: optional steps
metric
Defines the classification metric you are generating data for.
metric.class_label
source_data
Defines where seed examples come from and how they’re sampled.
source_data.dataset
source_data.sampling
llm
Primary LLM used for generation.
generation
Controls how many examples you generate and how fast.
Because the default is
5, a span_with_tools generation config must override it explicitly:
output
Controls where the generated dataset goes.
labelling
Optional: run LLM-as-a-judge labeling workflows. If enabled, metric.llmaj_source_prompt is required.