Hugging Face has launched a no-code Synthetic Data Generator that lets users create custom datasets for text classification and chat tasks using large language models. The tool guides users through a three‑step UI process—describing the dataset, refining prompts, and setting generation parameters—before exporting the data to Argilla and the Hugging Face Hub. It supports rapid generation (50 samples/min for classification, 20 for chat) and can be scaled with custom models or API providers. The generator is available as a Hugging Face Space, an open‑source GitHub project, and a pip‑installable Python package, all powered by the distilabel framework.
Introducing the Synthetic Data Generator , a user-friendly application that takes a no-code approach to creating custom datasets with Large Language Models (LLMs). The best part: A simple step-by-step process, making dataset creation a non-technical breeze, allowing anyone to create datasets and models in minutes and without any code.
Synthetic data is artificially generated information that mimics real-world data. It allows overcoming data limitations by expanding or enhancing datasets.
The synthetic data generator takes a description of the data you want (your custom prompt) and returns a dataset for your use case, using a synthetic data pipeline. In the background, this is powered by distilabel and the free Hugging Face text-generation API but we don’t need to worry about these complexities and we can focus on using the UI.
You can improve speed and accuracy by creating the own deployment of the tool and configuring it to use different parameters or models. First, you must duplicate the synthetic data generator . Make sure you create is as a private Space to ensure nobody else can access it. Next, you can change the default values of some environment variables . Let's go over some scenarios:
Start by providing a description of the dataset you want to create, including example use cases to help the generator understand your needs. Make sure to describe the goal and type of assistant in as much detail as possible. When you hit the “Create” button, a sample dataset will be created, and you can continue with step 2.
This type of dataset can be used for supervised fine-tuning (SFT), which is the technique that allows LLMs to work with conversational data, allowing the user to interact with LLMs via a chat interface. A good example of a synthetic chat dataset is argilla/synthetic-sft-customer-support-single-turn , which highlights an example of an LLM designed to handle customer support. In this example, the customer support topic is the synthetic data generator itself.
Besides hosting the tool on Hugging Face Spaces, we also offer it as an open-source tool under an Apache 2 license, which means you can go to GitHub and use, modify, and adapt it however you need. You can install it as a Python package through a simple pip install synthetic-dataset-generator . Make sure to configure the right environment variables when creatin
The tool currently supports text classification and chat datasets. These tasks will determine the type of dataset you will generate, classification requires categories, while chat data requires a conversation. Based on demand, we will add tasks like evaluation and RAG over time.
Text classification is common for categorizing text like customer reviews, social media posts, or news articles. Generating a classification dataset relies on two different steps that we address with LLMs. We first generate diverse texts, and then we add labels to them. A good example of a synthetic text classification dataset is argilla/synthetic-text-classification-news , which classifies synthetic news articles into 8 different classes.
Generally, we can generate 50 and 20 samples per minute for text classification and chat, respectively. All of this is powered by the free Hugging Face API, but you can scale this up by using your own account and choosing custom models, api providers or generation configurations. We will get back to this later but let's dive into the basics first.
By simplifying dataset creation and model training, the Synthetic Data Generator lowers barriers to AI development, enabling faster experimentation and deployment of specialized language models.