Fine-tune an open-source language model on your own dataset without manually guessing hyperparameters.
Compare base model output against a fine-tuned version before committing to a full training run.
Export a fine-tuned model to GGUF format and upload it to Hugging Face automatically.
| theprint/auto-sft | 100/awesome-machine-learning | adam-s/car-diagnosis | |
|---|---|---|---|
| Stars | 8 | 8 | 8 |
| Language | Python | Python | Python |
| Last pushed | — | 2024-08-07 | — |
| Maintenance | — | Stale | — |
| Setup difficulty | hard | easy | moderate |
| Complexity | 4/5 | 1/5 | 3/5 |
| Audience | developer | developer | researcher |
Figures from each repo's GitHub metadata at analysis time.
Requires an NVIDIA GPU with CUDA, there is no CPU fallback for fine-tuning.
Auto-SFT is a Python tool that automates part of the process of fine-tuning AI language models. Fine-tuning means taking an existing base model and training it further on your own data so it performs better at a specific task. The project is inspired by an idea from AI researcher Andrej Karpathy. The tool works in three steps. First, you give it a base model and a training dataset. It then runs many short, cheap trial fine-tuning runs, each using different settings such as learning rate and LoRA rank, a technique that lets you fine-tune a model efficiently without retraining every parameter. It scores each trial either by asking another AI to judge the outputs, or by running standard benchmark tests. Once it finds the settings that perform best, it runs one full length fine-tune using those settings. From there it can export the finished model in a compressed format called GGUF and optionally upload it to Hugging Face, a popular hub for sharing AI models. Auto-SFT includes a web interface where you can start and stop training runs, watch progress and loss curves in real time, compare outputs from the base model against the tuned one, and manage settings, all without touching the command line if you prefer. Setup can be done through Docker, which packages everything needed to run the tool, or through a native Python install using pip. The project uses a library called unsloth to speed up training, though a standard PEFT training path is also supported. A working NVIDIA GPU with CUDA is required for the actual fine-tuning step, and there is no option to run it on a regular computer processor. This project has 8 stars and is written in Python. It suits people who already have a dataset and a base model in mind and want to skip manually guessing at training settings.
Auto-SFT automates hyperparameter search for LoRA fine-tuning, then runs one full training pass with the winning settings and can export the result to Hugging Face.
Mainly Python. The stack also includes Python, PyTorch, Unsloth.
Setup difficulty is rated hard, with roughly 1h+ to a first successful run.
Mainly developer.
This repo across BitVibe Labs
double-check against the repo, no cap.