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

# Synthetic Data

> Generate training data from seed examples

Synthetic data is training data that a generator model writes from a few seed examples. A team uses it to train before it has real rows, or when it cannot train on the rows it has. `monte dataset generate` writes and filters the rows, and `monte dataset add` stores the rows that pass as a [dataset](https://docs.trymonte.ai/datasets/overview.md).

![Synthetic data: seed examples, generate, filter by duplicates, judge model, and grader, review a sample, and add the rows](https://mintcdn.com/monte-inc/9Z-XBYlncjm9H3yl/images/diagrams/synthetic-pipeline-light.svg?fit=max\&auto=format\&n=9Z-XBYlncjm9H3yl\&q=85\&s=30a0357f3795758ebee5925e3a26269c)

## Write the Seeds

Seeds are [demonstration rows](https://docs.trymonte.ai/datasets/overview.md#write-demonstration-rows) that show the task. The generator copies the faults of the seeds as well as their strengths.

```json theme={null}
{"input": "How do I reset my password?", "output": "On the login page, click Forgot Password and enter your email. The reset link expires in 1 hour."}
{"input": "Can I use my plan on a second laptop?", "output": "Yes. The Pro plan allows 5 devices. Sign in on the second laptop with the same account."}
```

For `--kind preference`, each seed is a [preference row](https://docs.trymonte.ai/datasets/overview.md#write-preference-rows) with `prompt`, `chosen`, and `rejected`, and the generator writes rows of the same shape. The judge and the grader score `chosen`. The default kind is `sft`.

To filter with a grader, each seed also holds the grader fields of that training environment, and the generator writes new grader fields for each row.

The team writes the seeds or takes them from public documents, so no user data is needed. 20 to 50 seed rows cover one task.

## Generate and Filter the Rows

```bash theme={null}
monte dataset generate --seeds seeds.jsonl --name support-synth --rows 800 \
  --model Qwen/Qwen3-235B-A22B --judge Qwen/Qwen3-235B-A22B --min-score 0.7 \
  --grader support-escalation-train --remote
```

The generator writes rows that vary the seeds in topic and wording. Three filters then drop rows:

* **Deduplication** drops rows that repeat a seed or another row.
* **A judge model** scores each row from 0 to 1 for correctness and agreement with the seeds.
* **A grader** from a training environment scores each reply against the row's grader fields. It checks that the reply agrees with its row's own fields, not that the fields are correct. The sample review checks the fields.

A row passes when each score is at or above `--min-score`. The command writes the rows that pass to `support-synth.jsonl`, and the dropped rows, each with its reason, to `support-synth.dropped.jsonl`. It does not add a dataset. [Dataset Commands](https://docs.trymonte.ai/commands/datasets.md#monte-dataset-generate) lists every flag, including multi-turn rows and topic lists.

## Choose the Generator and Judge Models

The generator and the judge are open-weight models. Each is a Hugging Face ID, such as `Qwen/Qwen3-235B-A22B`, or the name of a [deployment](https://docs.trymonte.ai/serving/deploy.md), such as `qwen3-235b`.

Both models run in Monte Cloud, or in the team's AWS, GCP, or Azure account with BYOC. No seed row or generated row goes to a model provider. [Security and Privacy](https://docs.trymonte.ai/security.md#keep-model-calls-inside-the-cloud) lists the model calls that leave the cloud.

## Review and Add

Read a sample of the kept rows and the dropped rows before the add. The dropped rows show whether `--min-score` is too strict or too loose. Then add the rows:

```bash theme={null}
monte dataset add support-synth --from-file support-synth.jsonl --kind sft
```

A generator that saw eval tasks can copy them. The add records each eval whose task text appears in the rows: see [The Overlap Record](https://docs.trymonte.ai/datasets/overview.md#the-overlap-record).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.