L’innovation IA ne faiblit pas, comme en témoigne cette nouvelle annonce.
Créer un système de langage de grande envergure (LLM) axé sur le raisonnement : guide pratique pour le traitement en continu, la sélection et le réglage fin du corpus de raisonnement de SupraLabs
Dans ce tutoriel, nous mettons en place un workflow de bout en bout pour exploiter le corpus de raisonnement de SupraLabs. Nous récupérons en continu un sous-ensemble représentatif directement depuis le Hugging Face Hub, nous analysons sa distribution d’origine, les schémas de longueur des tokens, la composition des tâches et les ratios raisonnement/réponse, puis nous appliquons une série de filtres de qualité afin d’éliminer les exemples d’entraînement inadaptés. Nous transformons les échantillons conservés en un format d’affinage supervisé basé sur le chat, avec des balises de raisonnement explicites
À ce sujet, nous configurons l’environnement Colab, installons les bibliothèques d’apprentissage automatique requises et supprimons le paquet torchao incompatible. Nous détectons le périphérique de calcul disponible, nous nous connectons au corpus de raisonnement SupraLabs via le streaming Hugging Face et évitons de télécharger l’intégralité du jeu de données. Nous mélangeons les enregistrements diffusés en continu, générons un échantillon représentatif, puis examinons la structure et le contenu d’une ligne type.
En parallèle, nous convertissons l’ensemble de éléments échantillonné en un DataFrame pandas et analysons la répartition des référentiels sources et des longueurs de tokens. Nous calculons le nombre de caractères du raisonnement et de la réponse, mesurons le rapport raisonnement/réponse et visualisons les relations au sein de l’ensemble de données. Nous appliquons également des règles heuristiques simples pour classer chaque enregistrement en tant que tâche de programmation, de mathématiques, de médecine, à choix multiples ou générale.
Nous mettons en place un pipeline de filtrage de qualité qui élimine les échantillons présentant des longueurs de tokens inadaptées, des réponses incomplètes, des répétitions excessives ou un contenu de raisonnement déséquilibré. Nous chargeons le tokeniseur SmolLM2 et transformons chaque enregistrement conservé en une conversation structurée comprenant une invite du système, un message de l’utilisateur et une réponse de l’assistant enrichie par le raisonnement. Nous mélangeons ensuite les données formatées, créons des sous-ensembles d’entraînement et d’évaluation, puis examinons le modèle de conversation final utilisé pour l’affinage supervisé.
Nous chargeons le modèle d’IA de langage causal SmolLM2 et configurons les adaptateurs LoRA pour un apprentissage efficace en termes de paramètres. Nous définissons les paramètres d’optimisation, de regroupement par lots, d’évaluation, de précision et de sauvegarde des gradients via SFTConfig de TRL. Nous initialisons le SFTTrainer, affinons le modèle à partir des conversations de raisonnement sélectionnées, puis évaluons ses performances finales d’apprentissage.
Nous créons une fonction d’inférence qui formule de nouvelles questions en utilisant la même invite mécanisme et génère des réponses à partir du modèle affiné. Nous séparons la section
Cette actualité s’inscrit dans une dynamique plus large qui mérite d’être suivie.
Pour aller plus loin :
Via MarkTechPost : MarkTechPost