Comment Meta entraîne les grands modèles de langage à l'échelle, permettant aux chercheurs d'utiliser PyTorch et d'autres nouveaux développements open-source, et accélérant la recherche à la production.
Meta partage ses méthodes pour l'entraînement des grands modèles de langage à l'échelle, permettant aux chercheurs d'utiliser PyTorch et d'autres nouveaux développements open-source. Cela facilite également le développement rapide de la recherche à la production.
Meta AI est la division de Meta, anciennement Facebook, qui développe des technologies d'intelligence artificielle. Meta AI se considère comme un laboratoire de recherche universitaire, axé sur la production de connaissances pour la communauté de l'IA. Meta a adopté une stratégie des poids ouverts pour améliorer la sécurité des modèles, la vitesse d'itération, augmenter l'adoption parmi les développeurs et les chercheurs, et devenir la norme de l'industrie.
À partir de février 2023, Meta a publié sa famille de grands modèles de langage (LLM), appellé Llama (acronyme de Large Language Model Meta AI). Un LLM est un modèle informatique qui se distingue par sa capacité à générer du langage à des fins générales et à réaliser d'autres tâches de traitement du langage naturel telles que la classification. Basés sur des modèles de langage, les LLM acquièrent ces capacités en apprenant des relations statistiques à partir de grandes quantités de texte au cours d'un processus d'apprentissage autosupervisé et semi-supervisé à forte intensité de calcul.
Alors que les chercheurs se concentrent sur la résolution de problèmes de plus en plus complexes pour le développement de l'IA, l'un des changements les plus significatifs et les plus difficiles connus à ce jour est l'ampleur même des calculs nécessaires pour entraîner les LLM. Meta vient de publier comment elle entraîne les grands modèles de langage à l'échelle.
Les défis de la formation de modèles à grande échelle
Traditionnellement, l'entraînement d'un modèle d'IA impliquait l'entraînement d'un nombre massif de modèles qui nécessitaient un nombre relativement faible de GPU. C'était le cas pour les modèles de recommandation de Meta (les modèles de flux et de classement) qui ingéraient de grandes quantités d'informations pour faire des recommandations précises qui alimentent la plupart de ses produits.
Avec l'avènement de l'IA générative (GenAI), Meta a constaté une évolution vers des tâches moins nombreuses, mais incroyablement volumineuses. La prise en charge de l'IA générative à grande échelle a nécessité de repenser la manière dont les logiciels, le matériel et l'infrastructure réseau s'articulent. À mesure qu'on augmente le nombre de GPU dans un travail, la probabilité d'une interruption due à une défaillance matérielle augmente également.
De plus, tous ces GPU doivent communiquer sur le même réseau à grande vitesse pour fonctionner de manière optimale. Cela souligne l'importance de quatre facteurs :
- La fiabilité du matériel : Il est important de s'assurer que le matériel est fiable. Il faut minimiser les risques qu'une défaillance matérielle interrompe un travail de formation. Cela implique des tests rigoureux et des mesures de contrôle de la qualité, ainsi qu'une automatisation permettant de détecter rapidement les problèmes et d'y remédier.
- Récupération rapide en cas de panne : Malgré tous les efforts, des pannes matérielles peuvent se produire et se produisent effectivement. Dans ce cas, ilsil faut être en mesure de récupérer rapidement. Cela implique une réduction de la charge de travail liée à la replanification et une réinitialisation rapide de la formation.
- Préservation efficace de l'état de la formation : En cas de défaillance, il faut être en mesure de reprendre là où on s'est arrêté. Cela signifie qu'il faut régulièrement vérifier l'état d'entraînement et stocker et récupérer efficacement les données d'entraînement.
- Connectivité optimale entre les GPU : L'apprentissage de modèles à grande échelle implique le transfert de grandes quantités de données entre les GPU de manière synchronisée. Un échange de données lent entre un sous-ensemble de GPU peut aggraver et ralentir l'ensemble du travail. La résolution de ce problème nécessite une infrastructure réseau robuste et à haut débit, ainsi que des protocoles et des algorithmes de transfert de données efficaces.
Innover dans l'ensemble de l'infrastructure
Il est important de perfectionner chaque couche de l'infrastructure en raison des exigences de la GenAI à grande échelle. Cela a entraîné des développements dans un large éventail de domaines.
Logiciel de formation
Meta permet aux chercheurs d'utiliser PyTorch et d'autres nouveaux développements open source, facilitant un développement extrêmement rapide de la recherche à la production. Cela inclut le développement de nouveaux algorithmes et de nouvelles techniques pour un entraînement efficace à grande échelle et l'intégration de nouveaux outils et cadres logiciels dans son infrastructure.
Planification
Une programmation efficace permet de garantir une utilisation optimale des ressources. Cela implique des algorithmes sophistiqués capables d'allouer des ressources en fonction des besoins des différents travaux et une programmation dynamique pour s'adapter à l'évolution de la charge de travail.
Matériel
Il faut un matériel très performant pour répondre aux exigences de calcul de la formation de modèles à grande échelle. Au-delà de la taille et de l'échelle, de nombreuses configurations et caractéristiques matérielles doivent être optimisées pour la GenAI. Étant donné que les délais de développement du matériel sont traditionnellement longs, Meta a adapter le matériel existant et ils ont exploré diverses dimensions, notamment la puissance, la capacité et la vitesse du HBM, et les E/S.
Meta a également pivoté en modifiant la plateforme Grand Teton qui a été développée avec des GPU NVIDIA H100, en augmentant le TDP des GPU à 700 W et en passant à HBM3 sur les GPU. Avec le manque de temps pour modifier l'infrastructure de refroidissement, ils ont dû rester dans un environnement refroidi par air. Les conceptions mécaniques et thermiques ont dû être modifiées en conséquence, ce qui a déclenché un cycle de validation pour soutenir un déploiement à grande échelle.
Tous ces changements liés au matériel ont constitué un véritable défi, car Meta a dû trouver une solution adaptée aux contraintes de ressources existantes, avec une très faible marge de manœuvre pour effectuer des changements et respecter un calendrier serré.
Déploiement du centre de données
Une fois le GPU et le système choisis, la tâche de les placer dans un centre de données pour une utilisation optimale des ressources (alimentation, refroidissement, réseau, etc.) nécessite de revoir les compromis faits pour d'autres types de charges de travail. Les infrastructures d'alimentation et de refroidissement des centres de données ne peuvent pas être modifiées rapidement (ou facilement) et Meta a dû trouver une disposition optimale permettant une capacité de calcul maximale dans un centre de données. Pour ce faire, il a fallu déplacer les services d'appui, tels que les lecteurs, hors de la salle de données et placer autant de racks de GPU que possible pour maximiser la puissance et la capacité du réseau afin d'obtenir la plus grande densité de calcul avec la plus grande grappe de réseaux.
Fiabilité
Selon Meta, ils ont planifier la détection et la correction afin de minimiser les temps d'arrêt en cas de défaillance du matériel. Le nombre de pannes augmente avec la taille de la grappe, et lorsqu'un travail s'étend sur toute la grappe, il est nécessaire de conserver une capacité de réserve suffisante pour redémarrer le travail dès que possible. En outre, ils surveillent les défaillances et peuvent parfois prendre des mesures préventives pour limiter les temps d'arrêt.
Meta commente :
RéseauLes modes de défaillance les plus fréquents que nous avons observés sont les suivants :
- Les GPU tombent : Dans ce cas, les GPU ne sont pas détectés par l'hôte sur PCIe. Il y a plusieurs raisons à cela, mais ce mode de défaillance est plus fréquent au début de la vie du serveur et se résorbe au fur et à mesure qu'il vieillit.
- DRAM & SRAM UCE : les erreurs non corrigibles sont courantes dans les mémoires, et nous surveillons et identifions les récidivistes, nous effectuons un suivi par rapport aux seuils, et nous lançons des RMA lorsque les taux d'erreur dépassent les seuils du fournisseur.
- Câble réseau HW : Dans la catégorie générale des serveurs inaccessibles, ces défaillances sont également observées le plus souvent au début de la vie du serveur.
L'entraînement de modèles à grande échelle implique le transfert rapide de grandes quantités de données entre les GPU. Cela nécessite une infrastructure réseau robuste et à haut débit, ainsi que des protocoles et des algorithmes de transfert de données efficaces.
Il existe deux choix principaux dans l'industrie qui répondent à ces exigences : RoCE et les réseaux InfiniBand. Ces deux options présentent des inconvénients. D'une part, Meta a construit des clusters RoCE au cours des quatre dernières années, mais les plus grands de ces clusters ne prenaient en charge que 4 000 GPU. Ils ont besoin de clusters RoCE beaucoup plus grands. D'autre part, Meta avait construit des grappes de recherche avec InfiniBand pouvant accueillir jusqu'à 16 000 GPU. Cependant, ces clusters n'étaient pas étroitement intégrés dans l'environnement de production de Meta et n'étaient pas non plus conçus pour la dernière génération de GPU/réseaux. Il a donc été difficile de décider avec quelle structure construire.
Meta a donc décidé de construire les deux : deux clusters de 24k, l'un avec RoCE et l'autre avec InfiniBand. Selon Meta, l'intention était de construire et d'apprendre de l'expérience opérationnelle. Ces enseignements éclaireront l'orientation future des tissus GenAI. Ils ont optimisé le cluster RoCE pour un temps de construction rapide et le cluster InfiniBand pour une bande passante à pleine section. Ils ont utilisé les clusters InfiniBand et RoCE pour entraîner le Llama 3, le cluster RoCE étant utilisé pour l'entraînement du plus grand modèle. Malgré les différences de technologie de réseau sous-jacentes entre ces clusters, Meta annonce avoir régler les deux pour obtenir des performances équivalentes pour ces grandes charges de travail GenAI
Meta ajoute :
Nous avons optimisé trois aspects de la pile globale afin que la communication réseau pour les modèles GenAI soit performante sur les deux clusters :
- Nous avons assigné des modèles de communication résultant de différents parallélismes de modèles, de données et de pipelines à différentes couches de la topologie du réseau afin d'exploiter efficacement les capacités du réseau.
- Nous avons mis en œuvre des modèles de communication collective en tenant compte de la topologie du réseau afin qu'ils soient moins sensibles à la latence. Pour ce faire, nous avons modifié l'implémentation par défaut des collectifs avec des algorithmes personnalisés tels que le doublement récursif ou la réduction de moitié au lieu d'algorithmes conventionnels tels que les anneaux.
- Tout comme les tâches de classement, les tâches GenAI produisent des flux supplémentaires qui rendent difficile la distribution du trafic sur tous les chemins possibles du réseau. Nous avons donc dû investir davantage dans l'équilibrage de la charge du réseau et dans le routage pour parvenir à une distribution optimale du trafic sur les ressources du réseau.
Stockage
Il faut des solutions de stockage de données efficaces pour stocker les grandes quantités de données utilisées dans l'entraînement des modèles. Cela implique d'investir dans des technologies de stockage à haute capacité et à grande vitesse et de développer de nouvelles solutions de stockage de données pour des charges de travail spécifiques.
Meta conclue :
Source : MetaAu cours des prochaines années, nous travaillerons avec des centaines de milliers de GPU, nous traiterons des volumes de données encore plus importants et nous devrons faire face à des distances et des latences plus longues. Nous adopterons de nouvelles technologies matérielles, notamment de nouvelles architectures de GPU, et nous ferons évoluer notre infrastructure.
Ces défis nous pousseront à innover et à nous adapter d'une manière que nous ne pouvons pas encore totalement prévoir. Mais une chose est sûre : Nous ne sommes qu'au début de ce voyage. Alors que nous continuons à naviguer dans le paysage changeant de l'IA, nous restons déterminés à repousser les limites du possible.
Et vous ?
Quel est votre avis sur le sujet ?
Voir aussi :
Construire l'infrastructure GenAI de Meta : la société partage les détails sur deux nouveaux clusters de 24 000 GPU, qui ont été conçus pour soutenir la recherche et le développement en matière d'IA
Les dépenses en solutions GenAI en Europe dépasseront 30 milliards $ en 2027 et enregistreront un taux de croissance annuel composé de 33,7 %, stimulant le marché européen global de l'IA, d'après IDC
Meta prévoit d'utiliser vos données personnelles pour entraîner ses modèles d'IA sans demander de consentement, mais le groupe de défense NOYB demande aux autorités de l'Europe d'y mettre un terme
Partager