An alchemy of automation for the modern mage of machine learning
The Training Wizard is a tool that streamlines machine learning workflows by providing reusable components, structured experimentation, and TOML-based configuration for rapid model development and deployment.
- Reusable Components: Shared library of ML functions and utilities
- Experiment Tracking: Built-in MLflow integration for consistent operations
- Simple Configuration: TOML-based setup for streamlined model finetuning
- Multi-GPU Support: Accelerate integration for distributed training
Each example in the examples/ directory contains a complete recipe with its own README. Browse the available recipes and adapt one to your use case:
- Instruction Tuning: Fine-tune models for instruction following
- Sequence Classification: Train classification models
- GRPO/CPO/DPO: Preference optimization techniques
- Quantization: Efficient model compression
- And more...
Run any recipe with:
training-wizard examples/[recipe]/config.tomlFor distributed training, use accelerate. First configure your setup:
accelerate configThen launch any recipe with:
accelerate launch -m training_wizard examples/[recipe]/config.toml├── 📁 docs/ Documentation and assets
├── 📁 examples/ Recipe examples with READMEs
├── 📁 tests/ Test suite
├── 📁 training_wizard/ Core library modules
│ ├── 📁 components/ Reusable ML components
│ ├── 📁 commands/ CLI command implementations
│ ├── 📁 recipes/ Training recipe implementations
│ └── 📁 specs/ Configuration specifications
├── 📄 pyproject.toml Project configuration and dependencies
└── 📄 README.md This file
Contributions are welcome! If you've built something that would improve Training Wizard, please open a pull request.
Before we can accept your first contribution, you will need to sign our Contributor License Agreement (CLA).
This ensures that we can distribute your contributions under the same open source license as the rest of the project.
- Please review the Individual Contributor License Agreement for individuals or the Entity Contributor License Agreement for legal entities.
- By submitting a pull request, you confirm that you have read and signed the CLA.
This project uses a dual-license model:
-
Source Code — licensed under the Apache License 2.0.
You are free to use, modify, and distribute the code under permissive terms, including an express grant of patent rights from contributors. -
Documentation — licensed under the Creative Commons Attribution 4.0 International (CC BY 4.0). You may share and adapt the documentation, even for commercial purposes, as long as proper attribution is given.
For full details, see the LICENSE file (for source code) and license.md (for documentation).
