Skip to main content

Prompt. Generate Synthetic Data. Train & Align Models.

Project description

DataDreamer
https://datadreamer.dev

Prompt. Generate Synthetic Data. Train & Align Models.

Tests & Release Ruff

DataDreamer is a powerful open-source Python library for prompting, synthetic data generation, and training workflows. It is designed to be simple, extremely efficient, and research-grade.

Installation

pip3 install datadreamer.dev
demo.py Result of demo.py
                                                                                                   
demo.py

See the full demo script


                                                                                     
Demo

See the synthetic dataset and the trained model

🚀 For more demonstrations and recipes see the Quick Tour page.

With DataDreamer you can:

  • 💬 Create Prompting Workflows: Create and run multi-step, complex, prompting workflows easily with major open source or API-based LLMs.
  • 📊 Generate Synthetic Datasets: Generate synthetic datasets for novel tasks or augment existing datasets with LLMs.
  • ⚙️ Train Models: Align models. Fine-tune models. Instruction-tune models. Distill models. Train on existing data or synthetic data.
  • ... learn more about what's possible in the Overview Guide

DataDreamer is:

  • 🧩 Simple: Simple and approachable to use with sensible defaults, yet powerful with support for bleeding edge techniques.
  • 🔬 Research-Grade: Built for researchers, by researchers, but accessible to all. A focus on correctness, best practices, and reproducibility.
  • 🏎️ Efficient: Aggressive caching and resumability built-in. Support for techniques like quantization, parameter-efficient training (LoRA), and more.
  • 🔄 Reproducible: Workflows built with DataDreamer are easily shareable, reproducible, and extendable.
  • 🤝 Makes Sharing Easy: Publishing datasets and models is simple. Automatically generate data cards and model cards with metadata. Generate a list of any citations required.
  • ... learn more about the motivation and design principles behind DataDreamer.

Citation

Please cite the DataDreamer paper:

@misc{patel2024datadreamer,
      title={DataDreamer: A Tool for Synthetic Data Generation and Reproducible LLM Workflows}, 
      author={Ajay Patel and Colin Raffel and Chris Callison-Burch},
      year={2024},
      eprint={2402.10379},
      archivePrefix={arXiv},
      primaryClass={cs.CL}
}

Contact

Please reach out to us via email (ajayp@upenn.edu) or on Discord if you have any questions, comments, or feedback.



Copyright © 2024, Ajay Patel. Released under the MIT License.

Thank you to the maintainers at Hugging Face and LiteLLM for accepting contributions necessary for DataDreamer and providing upstream support.


Funding Acknowledgements

ODNI, IARPA: This research is supported in part by the Office of the Director of National Intelligence (ODNI), Intelligence Advanced Research Projects Activity (IARPA), via the HIATUS Program contract #2022-22072200005. The views and conclusions contained herein are those of the authors and should not be interpreted as necessarily representing the official policies, either expressed or implied, of ODNI, IARPA, or the U.S. Government. The U.S. Government is authorized to reproduce and distribute reprints for governmental purposes notwithstanding any copyright annotation therein.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

datadreamer_dev-0.25.0.tar.gz (277.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

datadreamer_dev-0.25.0-py3-none-any.whl (368.3 kB view details)

Uploaded Python 3

File details

Details for the file datadreamer_dev-0.25.0.tar.gz.

File metadata

  • Download URL: datadreamer_dev-0.25.0.tar.gz
  • Upload date:
  • Size: 277.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.10.9 Linux/6.2.0-1017-aws

File hashes

Hashes for datadreamer_dev-0.25.0.tar.gz
Algorithm Hash digest
SHA256 7fd1abeeb578d06bd537dc1334f2964d578ce761e0278bf3770f917bee2486bf
MD5 f34c6903add1d4751029333cdfb264c8
BLAKE2b-256 832e9494270dbcf6c749db2e1a549ed5f4e86b62bfc4576b6d20874a8c630cb6

See more details on using hashes here.

File details

Details for the file datadreamer_dev-0.25.0-py3-none-any.whl.

File metadata

  • Download URL: datadreamer_dev-0.25.0-py3-none-any.whl
  • Upload date:
  • Size: 368.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.10.9 Linux/6.2.0-1017-aws

File hashes

Hashes for datadreamer_dev-0.25.0-py3-none-any.whl
Algorithm Hash digest
SHA256 028f86161cd708c68bba7eb9bc21b2b02d3771eae4b934341854cba4f3840899
MD5 4b220f8429a36b1a936b1974e7bfd493
BLAKE2b-256 700eb676fbe0af625ff4257ade3cba584ba131c576d2dc68f0ce69c83fe68679

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page