Essayez ici
Rejoignez notre Discord
Simplifine rationalise le réglage fin du LLM sur n'importe quel ensemble de données ou modèle avec une simple commande, gérant toute l'infrastructure, la gestion des tâches, le stockage dans le cloud et l'inférence.
Réglage facile du LLM basé sur le cloud : affinez n'importe quel LLM avec une seule commande.
Intégration transparente dans le cloud : gérez automatiquement le téléchargement, le stockage et l'exécution des modèles directement depuis le cloud.
Assistance IA intégrée : obtenez de l'aide pour la sélection d'hyperparamètres, la génération d'ensembles de données synthétiques et les contrôles de qualité des données.
Commutation de l'appareil vers le cloud : ajoutez un décorateur simple pour passer d'une formation locale à une formation basée sur le cloud.
Optimisation automatique : optimise automatiquement la parallélisation des modèles et des données via Deepspeed ✅ et FDSP ✅.
Prise en charge de l'évaluation personnalisée : utilisez le LLM intégré pour les fonctions d'évaluation ou importez vos propres métriques d'évaluation personnalisées.
Assistance communautaire : poser des questions d'assistance sur le Discord communautaire Simplifine.
Approuvé par les principales institutions : les laboratoires de recherche de l'Université d'Oxford s'appuient sur Simplifine pour leurs besoins de mise au point LLM.
Commencez ici >
Retrouvez notre documentation complète sur docs.simplifine.com.
Installation à partir de PyPI
pip installer simplifine-alpha
Vous pouvez également installer directement depuis github en utilisant la commande suivante :
pip install git+https://github.com/simplifine-llm/Simplifine.git
Nous recherchons des contributeurs ! Rejoignez le fil contributors
sur notre Discord :
Simplifine est sous licence GNU General Public License version 3. Voir le fichier LICENSE pour plus de détails.
Pour toutes les demandes de fonctionnalités, bugs et assistance, rejoignez notre Discord !
Si vous avez des suggestions de nouvelles fonctionnalités que vous aimeriez voir implémentées, veuillez soulever un problème : nous travaillerons dur pour y parvenir dès que possible !
Pour toute autre question, n'hésitez pas à nous contacter à [email protected].
? Corrections de bugs : code rationalisé et problèmes liés au formateur résolus pour un fonctionnement plus fluide.
Nouvelle fonctionnalité : introduction de la prise en charge de la définition de fichiers de configuration plus complexes, améliorant ainsi la flexibilité du formateur.
Documentation : ajout de nouveaux exemples, notamment des didacticiels sur la formation basée sur le cloud et la création d'un détecteur de fausses nouvelles.
? Documentation mise à jour : consultez les derniers documents sur docs.simplifine.com.
? Corrections de bugs : correction de problèmes qui provoquaient des échecs de chargement sur certaines configurations, garantissant une compatibilité plus large.
Nouvelle fonctionnalité : activation de l'installation directe à partir de Git et ajout de la prise en charge des jetons API Hugging Face, permettant l'accès à des modèles restreints.
Documentation : exemples actualisés pour refléter les dernières fonctionnalités.
Nous prenons actuellement en charge DistributedDataParallel (DDP) et ZeRO de DeepSpeed.
TL;DR :
DDP est utile lorsqu'un modèle peut tenir dans la mémoire GPU (cela inclut les dégradés et les états d'activation).
ZeRO est utile lorsqu'un modèle nécessite un partitionnement sur plusieurs GPU.
Version longue :
DDP : Distributed Data Parallel (DDP) crée une réplique du modèle sur chaque processeur (GPU). Par exemple, imaginez 8 GPU, chacun recevant un seul point de données, cela donnerait une taille de lot de 8. Les répliques du modèle sont ensuite mises à jour sur chaque appareil. DDP accélère la formation en parallélisant le processus d'alimentation des données. Cependant, DDP échoue si la réplique ne peut pas tenir dans la mémoire GPU. N'oubliez pas que la mémoire héberge non seulement les paramètres mais également les dégradés et les états de l'optimiseur.
ZeRO : ZeRO est une optimisation puissante développée par DeepSpeed et se décline en différentes étapes (1, 2 et 3). Chaque étape divise différentes parties du processus de formation (paramètres, gradients et états d'activation). Ceci est vraiment utile si un modèle ne peut pas tenir dans la mémoire GPU. ZeRO prend également en charge le déchargement vers le processeur, ce qui laisse encore plus de place à la formation de modèles plus grands.
Modèle LLaMA-3-8b avec une précision de 16 bits : Utilisez ZeRO Stage 3 sur 8 A100.
Modèle LLaMA-3-8b avec adaptateurs LoRA : Généralement bien avec DDP sur les A100.
GPT-2 avec une précision de 16 bits : utilisez DDP.
Problème : RuntimeError : erreur lors de la création de l'extension 'cpu_adam' du développeur Python
Cette erreur se produit lorsque python-dev
n'est pas installé et que ZeRO utilise le déchargement. Pour résoudre ce problème, essayez :
# Essayez sudo apt-get install python3-dev si les éléments suivants échouent.apt-get install python-dev # pour Python 2.x installsapt-get install python3-dev # pour les installations Python 3.x
Voir ce lien