Capability · Framework — fine-tuning

Distilabel

Distilabel lets you build data pipelines where each step is an LLM or a transform. You can distil from a strong teacher model, generate preference pairs for DPO/ORPO, run UltraFeedback-style scoring, or synthesise instruction datasets. It integrates with Argilla for human review and Hugging Face datasets for storage.

Framework facts

Category
fine-tuning
Language
Python
License
Apache-2.0
Repository
https://github.com/argilla-io/distilabel

Install

pip install 'distilabel[vllm,openai,anthropic]'

Quickstart

from distilabel.pipeline import Pipeline
from distilabel.steps import LoadDataFromHub
from distilabel.steps.tasks import TextGeneration
from distilabel.llms import OpenAILLM

with Pipeline('demo') as pipeline:
    load = LoadDataFromHub(repo_id='argilla/10k-questions')
    generate = TextGeneration(llm=OpenAILLM(model='gpt-4o-mini'))
    load >> generate

distiset = pipeline.run(parameters={load.name: {'split': 'train'}})
distiset.push_to_hub('me/my-synthetic-ft')

Alternatives

  • Augmentoolkit — long-context synthetic data
  • Bonito — instruction-tuning data generator
  • PromptWright — simpler synthetic gen
  • OpenAI Evals dataset tooling

Frequently asked questions

What's Distilabel best at?

Preference-pair generation for DPO/ORPO and distillation at scale. The DAG model makes it straightforward to combine generation + critique + judge steps.

Does it support local models?

Yes — vLLM, Ollama, LiteLLM, and Hugging Face TGI are supported alongside OpenAI, Anthropic, and Mistral APIs.

Sources

  1. Distilabel — GitHub — accessed 2026-04-20
  2. Distilabel — docs — accessed 2026-04-20