Synthetic Data Generation.
Generate data for evals and training
Build diverse, schema-validated datasets for evals and fine-tuning with interactive curation.
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.

Generate eval datasets
Build synthetic eval data, generated to target specific bugs or product concerns.
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.
Data generation templates
Kiln has over 10 built-in data generation templates including RAG retrieval, tool-use, jailbreaking, correctness, bias, toxicity, maliciousness, and more.
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
Hierarchical topics prevent repetitive, homogeneous datasets.
JSON schemas enforced on every sample before saving.
Fine-tuning, evals, issues, bias, and jailbreak templates included.
Delete, edit, regenerate, or add custom entries at every stage.
Automatic tags and random splits for eval and fine-tuning datasets.
Use uncensored models for jailbreak and bias testing content.
Reproduce a specific bug and generate fix-oriented training data.
Your data stays on your machine. MIT-licensed Python library, source-available app.
Synthetic data before and after 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.
- 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.