Axolotl est un outil open source spécialement conçu pour simplifier divers processus de post-entraînement de modèles d'IA. Le post-entraînement fait référence à toute modification ou entraînement supplémentaire effectué sur un modèle pré-entraîné, y compris le fine-tuning complet du modèle, le réglage efficace des paramètres (comme LoRA et QLoRA), le fine-tuning supervisé (SFT), le réglage des instructions et les techniques d'alignement. Cet outil prend en charge diverses architectures de modèles et configurations d'entraînement, permettant aux utilisateurs de commencer facilement à utiliser ces techniques d'entraînement avancées.
pip3 install -U packaging==23.2 setuptools==75.8.0 wheel ninja
pip3 install --no-build-isolation axolotl[flash-attn,deepspeed]
# Télécharger les exemples de fichiers de configuration
axolotl fetch examples
axolotl fetch deepspeed_configs # Optionnel
git clone https://github.com/axolotl-ai-cloud/axolotl.git
cd axolotl
pip3 install -U packaging setuptools wheel ninja
pip3 install --no-build-isolation -e '.[flash-attn,deepspeed]'
docker run --gpus '"all"' --rm -it axolotlai/axolotl:main-latest
Obtenir des exemples de configuration:
axolotl fetch examples
Entraîner le modèle:
axolotl train examples/llama-3/lora-1b.yml
Configuration personnalisée: Modifier les paramètres dans le fichier de configuration YAML selon les besoins
Axolotl utilise des fichiers de configuration YAML pour contrôler l'ensemble du processus d'entraînement, notamment :
Modèle | fp16/fp32 | LoRA | QLoRA | GPTQ | Flash Attn | xformers |
---|---|---|---|---|---|---|
LLaMA | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Mistral | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Mixtral-MoE | ✅ | ✅ | ✅ | ❓ | ❓ | ❓ |
Pythia | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ |
Falcon | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ |
Qwen | ✅ | ✅ | ✅ | ❓ | ❓ | ❓ |
Gemma | ✅ | ✅ | ✅ | ❓ | ❓ | ✅ |
✅: Pris en charge ❌: Non pris en charge ❓: Non testé