Qumulo LogoQumulo Logo

Blog

Formation de modèles de fondation avec des données géo-distribuées en utilisant Qumulo et SageMaker HyperPod

Co-écrit par : Bryan Berezdivin & Marcos Seoane

Les entreprises de tous les secteurs d'activité s'empressent d'adopter iA générative et les modèles de fondation (FM). Même avec des investissements massifs dans une infrastructure accélérée, un défi persiste : les données et l'informatique sont rarement au même endroit. Les modèles de fondation modernes exigent une échelle sans précédent. L'entraînement d'un FM peut nécessiter des milliers d'instances accélérées par le GPU fonctionnant pendant des jours, voire des semaines, et consommant des ensembles de données allant de centaines de téraoctets pour les modèles de langage à des dizaines de pétaoctets pour les systèmes multimodaux combinant texte, imagerie et vidéo. Ces ensembles de données ne sont pas statiques et évoluent en permanence à mesure que les organisations ré-entraînent et affinent les modèles pour capturer de nouveaux cas de figure, des commentaires d'utilisateurs ou des données spécifiques à un domaine.

Pour la plupart des grandes entreprises, la réalité est que leurs données se trouvent dans des centres de données sur site et dans plusieurs nuages. Ce décalage entre la localisation des données et la disponibilité accélérée du calcul est devenu l'un des principaux obstacles à l'extension de l'intelligence artificielle (IA). Le déplacement d'ensembles de données à l'échelle du pétaoctet entre les régions ou les nuages ajoute des frais généraux opérationnels, des coûts, des temps de latence et une complexité de gouvernance, ce qui a un impact direct sur le temps de formation et le retour sur investissement (ROI). Une structure de données unifiée et sensible à la localité comble cette lacune. La plate-forme de données unifiée de Qumulo garantit une cohérence mondiale, un accès universel et un accès à faible latence à travers des topologies multirégionales ou hybrides, permettant un nouveau paradigme d'architecture de données qui s'aligne sur les usines d'IA modernes. 

Dans cet article, nous décrivons les éléments architecturaux d'une telle plateforme de données unifiée, capable de prendre en charge des charges de travail d'IA à grande échelle telles que l'apprentissage de modèles de fondations. Nous montrons également comment Amazon SageMaker HyperPod, jumelé avec Cloud Native Qumulo (CNQ) sageMaker HyperPod fournit un environnement de bout en bout pour la formation distribuée en IA/ML. SageMaker HyperPod permet une orchestration et une mise à l'échelle résilientes des clusters de GPU, tandis que CNQ avec Cloud Data Fabric (CDF) garantit que les données sont accessibles, avec une faible latence, à travers les régions ou les sites. Nous illustrons des architectures de référence vérifiées combinant SageMaker HyperPod et CNQ dans un déploiement mono-régional (voir Figure 1) et multi-régional (voir Figure 2), ainsi que des détails d'intégration pour Qumulo et SageMaker HyperPod.

En associant Qumulo à SageMaker HyperPod (et à d'autres outils d'IA dans le cloud ou sur site), les entreprises peuvent :

  • Accélérer de plus de 25 % le délai d'obtention des résultats avant et après la formation.

  • Déployez des charges de travail d'IA sur vos données géodistribuées et surmontez la pénurie accélérée de calcul.

  • Réduire la charge opérationnelle de la boucle de données d'IA avec une orchestration nulle 

  • Unifier la gouvernance des données et les politiques de sécurité dans tous les environnements.

Figure 1 : Amazon Sagemaker Hyperpod sur l'architecture Qumulo (ensemble de données d'une seule région)

Une plateforme de données unifiée pour la formation au modèle de fondation

Vous trouverez ci-dessous les éléments clés de la formation au modèle de base de soutien utilisant des données locales ou des données distribuées géographiquement :

  1. Accès à haut débit et à faible latence aux données pour une utilisation durable du GPU localement et à distance.

  2. Évolutivité élastique pour gérer des ensembles de données de plusieurs pétaoctets et des grappes de calcul de taille dynamique.

  3. Prise en charge multiprotocole pour fournir des bibliothèques optimales basées sur des fichiers comme PyTorch

  4. Visibilité et gouvernance mondiales pour répondre aux exigences en matière de résidence des données et de conformité.

Qumulo fournit chacune de ces fonctions avec son architecture unique run-anywhere qui permet aux caractéristiques uniques de se manifester à travers n'importe quel mélange de calcul, de mémoire et de stockage. Cela a permis à la plate-forme de données de fonctionner avec les meilleurs coûts et performances de sa catégorie dans le nuage (AWS, Azure, GCP et OCI) ainsi que sur n'importe quel matériel serveur sur site, y compris HPE, Cisco, Penguin et d'autres. C'est la base d'une plate-forme unifiée, mais la prise en charge multiprotocole de Qumulo pour les applications afin d'accéder aux données et de les gérer à travers ces sites est tout aussi importante. Cela facilite l'intégration dans un écosystème d'applications d'entreprise, y compris diverses chaînes d'outils de développement d'IA telles que PyTorch, TensorFlow et JAX. Ceci est également essentiel pour faciliter l'intégration avec Amazon SageMaker Hyperpod.

Garantir des performances élevées est essentiel pour les formations coûteuses, pour lesquelles Qumulo NeuralCache offre des performances optimales dans les architectures de données locales et géo-distribuées. À titre d'exemple, les temps de latence moyens étaient inférieurs à la milliseconde pour l'entraînement de llama-3.1-8B en utilisant plusieurs instances EC2 AWS P5e (chacune avec 8 GPU Nvidia H200 Tensor Core). Nous avons recueilli d'autres données de performance qui seront publiées séparément pour les déploiements dans une seule région et dans plusieurs régions.

Pour les équipes d'IA, le développement de modèles nécessite de multiples entraînements, qui utilisent généralement des données en dehors du site disposant de ressources de calcul accélérées. Un exemple de cette situation est la nécessité d'effectuer un entraînement dans la région 1, mais qui est retardé de plusieurs jours, voire de plusieurs semaines, en raison de problèmes de pénurie de GPU. L'approche "do-it-yourself" (DIY) se traduit par des centaines de pipelines pour mettre en scène chaque ensemble de données présélectionné pour les exécutions de formation et de validation sur un site de calcul accéléré. Il en résulte un retard dans le temps de formation, une prolifération des données, un manque de cohérence des ensembles de données et des problèmes de gouvernance. Une autre approche consiste à utiliser une plateforme de données unifiée pour déplacer les données à la demande en votre nom afin de garantir la performance, la rentabilité et la cohérence entre les sites. Avec Cloud Data Fabric (CDF) qumulo fournit une plate-forme de données tenant compte des spécificités locales. CDF étend efficacement un répertoire/préfixe d'un "hub" à un ou plusieurs "spokes". Les rayons sont entièrement cohérents et utilisent la connaissance de la localité et l'ensemble de modèles de Neural Cache pour décider des données à prélever pour chaque charge de travail. Le CDF permet aux rayons de fournir aux applications des performances locales. Les figures 1 et 2 illustrent une architecture vérifiée avec SageMaker HyperPod et Qumulo. 

Il s'agit en fait d'un nouveau paradigme de données pour les équipes d'IA qui réduira le temps nécessaire aux ingénieurs pour obtenir des résultats et augmentera la performance des nouveaux modèles grâce à une boucle de données optimisée sans orchestration. La modélisation des coûts montre que l'utilisation de cette approche peut réduire le coût total de possession de plus de 30 %. Pour atteindre ces objectifs, les caractéristiques clés d'une plate-forme de données unifiée avec Qumulo sont décrites ci-dessous ;

Accès aux données élastiques et hautes performances pour l'informatique accélérée

  • Échelle de 1 GB/s à 1 TB/s débit avec une latence inférieure à la milliseconde, comme le montre l'exemple suivant Repères AI-Image.

  • Utilisez pleinement les GPU en éliminant les blocages d'E/S pendant le chargement des données, le partage, le point de contrôle ou le réglage fin.

  • S'adapter automatiquement à chaque charge de travail de formation à l'aide de la mise en cache et de la prélecture pilotées par NeuralCache™ AI, localement et à distance.

Unified Data Fabric pour la mobilité de la charge de travail

  • Optimisation des latences sur les rayons à l'aide de NeuralCache™ AI-driven caching and prefetching de manière transparente depuis les clusters Qumulo hub vers/depuis plusieurs clusters Qumulo spoke.

  • Compression, déduplication et optimisation des transferts de données sur le réseau étendu pour réduire les données transférées de plus de 30 % par rapport aux copies manuelles.

  • Appliquer des données cohérentes dans tous les environnements avec des métadonnées partagées, telles que des informations sur les versions.

Flexibilité multi-protocoles

  • Prise en charge native des S3, NFS, SMB, REST et SFTP élimine le remaniement, la réarchitecture ou les copies redondantes...

  • Les scientifiques, les ingénieurs et les équipes de simulation peuvent accéder aux mêmes ensembles de données avec leurs outils préférés.

  • Réduit jusqu'à 4 fois la charge d'orchestration des données par rapport au stockage traditionnel en silos.

SageMaker HyperPod avec Qumulo

Pour le démontrer, Qumulo a vérifié un flux de travail commun entre la fondation et le modèle à l'aide des éléments suivants SageMaker HyperPod déployés dans la même région que les données d'apprentissage, ainsi que dans une région distincte de l'ensemble des données d'apprentissage. Il en résulte un entraînement global des modèles sans duplication des données ni orchestration, tout en préservant la cohérence et en réduisant le coût total de possession. Un détail important est que, dans la plupart des efforts de développement de modèles d'IA, nous ne voyons que 30 % des données étiquetées utilisées par cycle de formation, et un chevauchement significatif entre le premier cycle et les cycles suivants. Cela permet d'obtenir un meilleur retour sur investissement que si l'on réplique l'ensemble des données à chaque exécution, ce qui est un scénario courant pour la plupart des équipes dans le cadre de leurs efforts d'orchestration. Ce qui a encore plus d'impact sur l'amélioration du retour sur investissement, c'est que de nombreuses équipes ont construit des catalogues de données complexes pour éviter les redondances à cette fin, ce qui n'est plus nécessaire de construire, de maintenir et d'évoluer lorsque Qumulo CDF est exploité.

SageMaker HyperPod avec Qumulo - DataSet à région unique

Dans ce déploiement, nous avons déployé CNQ avec les données d'entraînement dans la même région que SageMaker HyperPod. CNQ a été déployé dans une approche de zone de disponibilité unique qui n'était pas colocalisée avec les nœuds EC2 P5e. L'architecture est présentée à la figure 1. 

SageMaker HyperPod avec Qumulo - DataSet Multi-Régions

Dans ce déploiement, nous avons déployé CNQ dans la région 2 en tant que hub et dans la région 1 en tant que spoke. CDF distribue de manière optimale les données vers/depuis le dossier CNQ Spoke. Ainsi, seules les données nécessaires à la formation sont distribuées dans le rayon.

Figure 2 : Amazon Sagemaker Hyperpod sur l'architecture Qumulo pour un ensemble de données multirégionales

SageMaker HyperPod avec Qumulo - Option hybride ou multi-cloud

De nombreuses entreprises exploitent déjà des clusters GPU dans un environnement, tandis que leurs ensembles de données restent dans un autre. La Cloud Data Fabric de Qumulo permet des topologies hybrides ou multicloud transparentes sans aucune orchestration :

  • Du sur place à l'informatique dématérialisée : S'entraîner sur SageMaker HyperPod ou Azure AI Foundry en utilisant des clusters Qumulo sur site comme source de données faisant autorité. Nous illustrons cela dans la figure 2.

  • Multicloud : Utilisez les instances Qumulo sur AWS, Azure et GCP avec un espace de noms unifié et des contrôles de politique.

  • D'un bout à l'autre du spectre : Collecte, curation et formation sur des données générées en périphérie, sans tâches de réplication complexes.

Figure 3 : Amazon Sagemaker Hyperpod sur l'architecture Qumulo pour un ensemble de données hybrides

Intégrer Qumulo à SageMaker HyperPod

Nous fournissons ci-dessous une recette vérifiée pour le déploiement d'une seule région à l'aide de Cloud Native Qumulo (CNQ) sur la place de marché AWS pour s'intégrer à SageMaker Hyperpod. Dans cette recette, CNQ prend en charge les données d'entraînement et les points de contrôle et utilise le pilote NFS CSI pour permettre les déploiements dynamiques de conteneurs sur SageMaker Hyperpod.

Pour reproduire une configuration validée, nous décrivons les étapes suivantes ;

Étape 1 : Approvisionnement d'Amazon EKS et du cluster HyperPod

Nous avons suivi la Guide d'installation de l'EKS et de l'HyperPod pour déployer un cluster EKS et intégrer SageMaker HyperPod.

# Création d'un cluster EKS avec des groupes de nœuds gérés
eksctl create cluster \N
--name hyperpod-eks \N
--version 1.29 \N- -region us-west-2 \N
--region us-west-2 \N
--nodegroup-name workers \N- -node-type P5.4 \N
--node-type P5.4xlarge \N -nodes 2 \N
--nodes 2 \N- -nodes-min 2 \N- -nodes-min 2 \N- -nodes-min
--nodes-min 2 \N- -nodes-max 8 \N
--nodes-max 8

# Confirmer que les nœuds sont prêts
kubectl get nodes

Étape 2 : Déployer le cluster Qumulo via Terraform

Le déploiement de Cloud Native Qumulo (CNQ) sur AWS avec Terraform implique la mise en place d'une plate-forme de données de fichiers entièrement élastique qui exploite AWS S3 pour le stockage persistant et les instances EC2 pour les ressources de calcul et de cache. Le processus de déploiement suit le cadre bien architecturé d'AWS, garantissant l'évolutivité, la sécurité et l'efficacité opérationnelle. Avant de commencer, l'environnement doit répondre à plusieurs conditions préalables, notamment les autorisations IAM appropriées, la connectivité Internet sortante pour les points finaux de Qumulo et la configuration d'une passerelle S3 VPC si elle est utilisée. Le package de déploiement Terraform fournit des modèles modulaires qui automatisent le provisionnement de toutes les ressources AWS requises.

Le déploiement se déroule en deux phases principales. Tout d'abord, le stockage persistant est établi en créant les buckets S3 qui contiendront les données Qumulo à l'aide de configurations Terraform. Une fois le stockage créé, la deuxième phase déploie les instances EC2 qui hébergent Qumulo Core. Terraform gère automatiquement la cohérence de la configuration, les conventions de dénomination et la gestion des dépendances, en étiquetant toutes les ressources avec un identifiant de déploiement unique pour éviter les conflits entre plusieurs clusters.

Après le déploiement, les tâches post-déploiement comprennent la validation de la configuration du cluster, la confirmation de la réussite du provisionnement via AWS Systems Manager et, éventuellement, la configuration de la résolution DNS à l'aide de Qumulo Authoritative DNS. Le résultat est un cluster Qumulo natif dans le nuage, entièrement opérationnel, capable de gérer des données à l'échelle du pétaoctet avec l'élasticité nécessaire, accès multiprotocole pour Accès S3, NFS, SMB, FTP et RestAPI et d'intégration d'AWS.

Suivre le Guide pour déployer CNQ sur AWS avec Terraform pour connaître les étapes détaillées.

Étape 3 : Création d'un utilisateur Qumulo et exportation NFS 

L'utilisation de la Qumulo GUI Tool (accessible via un navigateur http) :

  1. Ajout d'un nouvel utilisateur et de nouvelles autorisations.

  2. Créer un chemin d'exportation NFS /ai-factory-data.

Référence : Comment créer une exportation NFS.

Étape 4 : Installation du pilote CSI et configuration des PVC

Pour connecter les charges de travail Kubernetes à Qumulo, nous avons installé le pilote CSI et défini des PVC.

# Installer le pilote CSI de Qumulo
helm repo add csi-driver-nfs https://raw.githubusercontent.com/kubernetes-csi/csi-driver-nfs/master/charts
helm install csi-driver-nfs csi-driver-nfs/csi-driver-nfs --namespace kube-system --version 4.12.0

# Exemple de configuration PV
apiVersion : v1
kind : PersistentVolume
metadata :
name : pv-qumulo-static
spec :
capacity :
stockage : 50Ti
accessModes :
- ReadWriteMany (lecture-écriture-plusieurs)
persistentVolumeReclaimPolicy : Conserver
storageClassName : ""
mountOptions :
- vers=3
- proto=tcp
- nolock
csi :
driver : nfs.csi.k8s.io
# ID unique pour ce répertoire/volume ; utiliser une poignée stable basée sur le chemin volumeHandle : qumulo-nfs-root
volumeAttributes :
server : qumulo.qumulo-hub.com
share : "/csi"

# Exemple de configuration PVC
apiVersion : v1
kind : PersistentVolumeClaim
metadata :
name : pvc-qumulo-static
spec :
accessModes :
- ReadWriteMany
ressources :
requêtes :
stockage : 50Ti
storageClassName : ""
volumeName : pv-qumulo-static

Référence : Connexion de Kubernetes avec le pilote CSI.

Étape 5 : Exécuter la charge de travail 

Nous avons déployé un Modèle Llama 2 en utilisant PyTorch FSDP sur Kubernetes.

# Lancement de l'emploi distribué Llama 2 avec FSDP

kubectl create -f llama2-fsdp-job.yaml

La configuration est conforme à l'exemple d'AWS : Llama 2 FSDP Example.

Cette configuration est prête pour la production, validée pour des opérations dans une seule région et dans plusieurs régions, et constitue le modèle des usines d'IA hybrides et multiclouds.

Conclusion

À mesure que les entreprises élargissent leurs ambitions en matière d'IA, la capacité de former là où le calcul est disponible sans avoir à se déplacer là où les données vivent améliore l'efficacité opérationnelle et le temps global des résultats pour les lignes d'affaires. Qumulo sur site, dans le cloud et à la périphérie est un facilitateur pour atteindre cet objectif de la manière la plus optimisée en termes de coûts avec la performance et la simplicité requises pour le développement de modèles de base. En associant Qumulo à SageMaker HyperPod (et à d'autres frameworks de développement d'IA dans le cloud ou sur site), les entreprises peuvent :

  • Accélérer de plus de 25 % le délai d'obtention des résultats avant et après la formation.

  • Déployez des charges de travail d'IA sur vos données géodistribuées et surmontez la pénurie accélérée de calcul.

  • Réduire la charge opérationnelle de la boucle de données d'IA avec une orchestration nulle

  • Unifier la gouvernance des données et les politiques de sécurité dans tous les environnements.

Que vos GPU fonctionnent sur AWS, Azure, GCP ou sur site, Qumulo permet une stratégie d'IA de formation partout et de gestion partout.

Pour en savoir plus qumulo.com/ai

Apprentissage de modèles Foundation avec des données géod...