Fabricator: An Open Source Toolkit for Generating Labeled Training Data with Teacher LLMs
arXiv:2309.09582 · doi:10.18653/v1/2023.emnlp-demo.1
Abstract
Most NLP tasks are modeled as supervised learning and thus require labeled training data to train effective models. However, manually producing such data at sufficient quality and quantity is known to be costly and time-intensive. Current research addresses this bottleneck by exploring a novel paradigm called zero-shot learning via dataset generation. Here, a powerful LLM is prompted with a task description to generate labeled data that can be used to train a downstream NLP model. For instance, an LLM might be prompted to "generate 500 movie reviews with positive overall sentiment, and another 500 with negative sentiment." The generated data could then be used to train a binary sentiment classifier, effectively leveraging an LLM as a teacher to a smaller student model. With this demo, we introduce Fabricator, an open-source Python toolkit for dataset generation. Fabricator implements common dataset generation workflows, supports a wide range of downstream NLP tasks (such as text classification, question answering, and entity recognition), and is integrated with well-known libraries to facilitate quick experimentation. With Fabricator, we aim to support researchers in conducting reproducible dataset generation experiments using LLMs and help practitioners apply this approach to train models for downstream tasks.
arXiv comment3 Figures and 2 Tables
References in corpus (11)
- Decoupled Weight Decay Regularization
- Training language models to follow instructions with human feedback
- LLaMA: Open and Efficient Foundation Language Models
- Cross-lingual Language Model Pretraining
- Introduction to the CoNLL-2002 Shared Task: Language-Independent Named Entity Recognition
- ChatGPT Outperforms Crowd-Workers for Text-Annotation Tasks
- True Few-Shot Learning with Language Models
- Instruction Tuning with GPT-4
- Textbooks Are All You Need
- Generating Training Data with Language Models: Towards Zero-Shot Language Understanding
- Tuning Language Models as Training Data Generators for Augmentation-Enhanced Few-Shot Learning