> ## Documentation Index
> Fetch the complete documentation index at: https://agent-observability-docs.splunk.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Training sets

> The dataset used to fine-tune the Luna base model during a run.

A **training set** is the dataset that fine-tunes your [Luna base model](/luna-studio/ui/core-concepts#base-models) during a [training run](/luna-studio/ui/runs/lifecycle). Training sets are typically much larger than test sets.

## Sources

In the run creation flow, you choose one of three top-level paths:

<CardGroup cols={3}>
  <Card title="Generate from test set" icon="wand-magic-sparkles">
    Luna Studio uses 20% of your test set as seeds and synthetically generates training data.
  </Card>

  <Card title="Add unlabelled training logs" icon="upload">
    Upload or import production logs. If they lack labels, you can explicitly start an evaluator-prompt labelling pass before training.
  </Card>

  <Card title="Use existing training set" icon="database">
    Reuse a generated, labelled, or uploaded training dataset from your workspace.
  </Card>
</CardGroup>

The **Add training logs** path lets you upload a `.csv` or `.jsonl` file, fetch a file from URL, or import a dataset from Splunk Agent Observability. Those same ingestion methods are also available from the [Datasets page](/luna-studio/ui/datasets/overview) **Add training set** button. Use CSV for datasets that will proceed through run validation and training.

## Required schema

Check the [prerequisites](/luna-studio/ui/prerequisites#required-dataset-format) section for the columns required by each evaluator shape.

Labelled training sets must contain at least 2,000 rows total and at least 100 examples per class. These are validation requirements, not just sizing recommendations.

### Labelled vs. unlabelled

The training-log flow initially treats an upload as pre-labelled. If evaluator-aware validation finds that `label` is the only missing required column, choose **Label with evaluator prompt instead**. Then configure the provider and model and start the labelling pass. Luna Studio does not begin labelling automatically when it detects a missing label.

The resulting labelled dataset must pass the same 2,000-row and per-class validation checks before training can begin.

## Generated training sets

The most common path for a first run is **Generate from test set**. The flow:

1. Luna Studio uses 20% of your test set as seed examples.
2. Luna Studio first generates 50 sample rows for review.
3. You review the sample rows and optionally regenerate with feedback.
4. Luna Studio requests 2,000 synthetic examples for the full generation.

See [Step 3 — Training set](/luna-studio/ui/runs/new-run/step-3-training-set#generate-from-test-set) for the full reference.

Enhancement examples derived from the seed data can be appended to those 2,000 synthetic examples, so 2,000 is the generation target rather than a guaranteed final row count. The resulting dataset shows up on the [Datasets page](/luna-studio/ui/datasets/overview) with source **Generated** and a subtitle like "Generated from rag-eval-v2".

## File formats

For uploads and URL fetches:

* **CSV** — the end-to-end format for run validation and training. Headers are required.
* **JSONL** — accepted by the source picker during ingestion, but current downstream processing reads CSV. Convert it to CSV before using it in a run.

URL fetches accept only HTTP(S). Use a pre-signed HTTPS link for private object storage; raw `s3://` and `gs://` URIs are not supported.

## Where to go next

<CardGroup cols={2}>
  <Card title="Generate from test set" icon="wand-magic-sparkles" href="/luna-studio/ui/runs/new-run/step-3-training-set">
    The most common path for first runs.
  </Card>

  <Card title="Add a dataset" icon="upload" href="/luna-studio/ui/datasets/add-a-dataset">
    Walk through the Upload / URL / Splunk Agent Observability flows.
  </Card>

  <Card title="Test sets" icon="database" href="/luna-studio/ui/datasets/test-sets">
    The other dataset type — used to evaluate the evaluator.
  </Card>

  <Card title="Validation" icon="circle-check" href="/luna-studio/ui/datasets/validation">
    Schema and content checks Luna runs.
  </Card>
</CardGroup>
