OpenDCAI/DataFlex
Data-centric LLM training with dynamic sample selection, domain mixture optimization, and example reweighting inside the LLaMA-Factory training loop.
What it solves
DataFlex addresses the difficulty of managing training data during the LLM optimization process. Instead of using a static dataset, it allows developers to dynamically adjust which samples are used, how they are mixed, and how much weight they contribute to the model's learning process, which often leads to better model performance and experimental reproducibility.
How it works
Built as a dynamic training framework on top of LLaMA-Factory, DataFlex integrates several data-centric training strategies into a unified system. It provides reproducible implementations of three core capabilities:
- Data Selection: Dynamically chooses training samples based on strategies like gradient-based (LESS, NICE) or loss-based methods, focusing on "hard" samples.
- Data Mixture: Adjusts the ratio of data from different domains (e.g., using DOREMI or ODM) during training to optimize the balance between different types of information.
- Data Reweighting: Modifies the sample weights during backpropagation to emphasize specific data points preferred by the model.
Who it’s for
Researchers and developers training Large Language Models (LLMs) who want more flexible and powerful control over their training data scheduling and optimization.
Highlights
- LLaMA-Factory Integration: Acts as a drop-in replacement for LLaMA-Factory, maintaining full compatibility.
- Unified Framework: Consolidates multiple difficult-to-reproduce research repositories into one place.
- Scalability: Supports gradient computation under DeepSpeed ZeRO-3 for training larger-scale models.
- Data-Centric Approach: Focuses on the data scheduling during the training loop rather than just pre-processing.
Related
- Project
- Project
- Project
- Project
- Project