Synthetic Data Generation.

Generate data for evals and training

Build diverse, schema-validated datasets for evals and fine-tuning with interactive curation.

macOS · Windows · Linux

Synthetic Data in Kiln

Interactive data generation

Use Kiln's intuitive app UI to generate synthetic data for any task. Interactively review data as it's generated, and tune guidance to get the dataset you need.

The Kiln synthetic data generation UI showing interactive review and tuning

Generate eval datasets

Build synthetic eval data, generated to target specific bugs or product concerns.

GOAL
Eval
TEMPLATE
Ensure agent refuses off topic requests
TAGS
eval_data refusal_test

Generate fine-tuning datasets

Build synthetic datasets for fine-tuning models. Distill large state-of-the-art LLMs into smaller, faster, and cheaper models at the same task-specific quality.

GOAL
Fine-Tuning
TEMPLATE
Fine-tuning data generator
TAGS
fine_tuning_data train_split

Data generation templates

Kiln has over 10 built-in data generation templates including RAG retrieval, tool-use, jailbreaking, correctness, bias, toxicity, maliciousness, and more.

RAG retrieval Tool-use Jailbreaking Correctness Bias Toxicity Maliciousness Fine-tuning Eval Issue repro

Topic trees for diversity

Ask a model for 1,000 samples and you get 1,000 near-duplicates. Kiln generates a hierarchical topic tree first, then targets each topic individually. Add, delete, or regenerate branches before a single training sample is created.

Everything you need for production-grade synthetic data

Topic tree generation

Hierarchical topics prevent repetitive, homogeneous datasets.

Structured data validation

JSON schemas enforced on every sample before saving.

Built-in templates

Fine-tuning, evals, issues, bias, and jailbreak templates included.

Interactive curation

Delete, edit, regenerate, or add custom entries at every stage.

Goal-driven tagging

Automatic tags and random splits for eval and fine-tuning datasets.

Adversarial data support

Use uncensored models for jailbreak and bias testing content.

Issue-targeted generation

Reproduce a specific bug and generate fix-oriented training data.

Open source & local-first

Your data stays on your machine. MIT-licensed Python library, source-available app.

Synthetic data before and after Kiln

Without Kiln
  • Write custom data-gen scripts, tweak prompts, and get 1,000 near-identical samples anyway.
  • Manually inspect a spreadsheet of outputs with no structured review flow.
  • Write custom data generation prompts for each unique data generation task.
With Kiln
  • Topic trees generate diverse data automatically—no scripting, no prompt engineering required.
  • Review and curate every sample in an interactive UI before it enters your dataset.
  • Kiln understands your goal (eval vs tuning) and generates the data you need.

Frequently asked

How does Kiln prevent synthetic data from being repetitive?

Kiln generates a hierarchical topic tree before creating any samples, then targets each topic individually. Two-level diversification — across topics and within topics — eliminates the near-duplicate problem of naive generation.

What if my task uses structured input or output (JSON)?

Synthetic generation respects your JSON schemas automatically. Every sample is validated before saving — nothing enters your dataset if it doesn't comply.

Can I use synthetic data for both evals and fine-tuning?

Yes. Select your goal and Kiln configures the template and tags. Fine-tuning data targets high-quality outputs; eval data intentionally mixes good and bad examples. Run separate sessions for each goal against the same task.

Does my data leave my machine?

Kiln is local-first and source-available. Your dataset lives on your filesystem. Data is sent to AI provider APIs during generation — the same providers you already use.

Build the dataset your AI deserves.

Generate diverse training and eval data with topic trees, review every sample, and ship into fine-tuning and evals.