Illustration de la news Graphcore et Hugging Face 🤗 nouent un partenariat

Graphcore et Hugging Face 🤗 nouent un partenariat

#news Dernière mise à jour : 06/10/2021 à 15:39
  • Fondateurs : Nigel Toon, ClĂ©ment Delangue
  • Nombre d'employĂ©s : 490
  • LevĂ©e de fonds : 310 Millions $

HUGGING FACE 🤗 ET GRAPHCORE OPTIMISENT LES TRANSFORMEURS POUR LA PRODUCTION DE MODELES TELS QUE BERT !

Graphcore a annoncĂ© rejoindre le programme de partenariat de Hugging Face, la startup française qui Ă©dite des transformeurs pour l’IA. Hugging Face, est l’une des principales startups de l’espace NLP utilisĂ©e notamment par Apple, Monzo et Bing.

Ce partenariat permettra aux dĂ©veloppeurs de dĂ©ployer, Ă  l’Ă©chelle de production et sur des IPU, des modèles basĂ©s sur des transformeurs. Les transformeurs ont complètement refaçonnĂ© le secteur de l’IA. Des modèles tels que BERT sont employĂ©s dans d’innombrables applications : du traitement automatique du langage naturel (TALN) en passant par l’extraction de caractĂ©ristiques, la gĂ©nĂ©ration de textes, l’analyse des sentiments, la traduction et bien d’autres domaines.

Graphcore, fabricant d’un processeur (IPU) spĂ©cifiquement conçu pour l’intelligence artificielle (IA), a annoncĂ© rejoindre le programme de partenariat de Hugging Face, la startup française qui Ă©dite des transformeurs pour l’IA. Ce partenariat permettra aux dĂ©veloppeurs de dĂ©ployer, Ă  l’Ă©chelle de production et sur des IPU, des modèles basĂ©s sur des transformeurs.

Les transformeurs ont complètement refaçonné le secteur de l’IA. Des modèles tels que BERT sont employés dans d’innombrables applications : du traitement automatique du langage naturel (TALN) en passant par l’extraction de caractéristiques, la génération de textes, l’analyse des sentiments, la traduction et bien d’autres domaines. Mais la mise en production de ces modèles massifs et leur exécution rapide à grande échelle constituent un défi de taille. Pour y faire face Hugging Face a annoncé le lancement de son nouveau programme de partenariat axé, en particulier, sur les modèles optimisés et les intégrations logicielles, et dont Graphcore est l’un des membres fondateurs.

Grâce au programme de partenariat de Hugging Face, les développeurs exploitant des systèmes Graphcore pourront déployer, sur une plus grande échelle de production et sur un IPU, des modèles basés sur des transformeurs. Le tout, sans qu’il soit nécessaire de procéder à un codage complexe.

Optimisation des transformeurs pour la production

Hugging Face héberge déjà des centaines de transformeurs, parmi lesquels CamemBERT, en langue française, ou ViT, qui applique les résultats obtenus avec le TALN à la vision par ordinateur. La bibliothèque de transformeurs est téléchargée en moyenne deux millions de fois chaque mois, et la demande est en augmentation.

Avec une communautĂ© de plus de 50 000 dĂ©veloppeurs, Hugging Face a connu la plus rapide adoption jamais constatĂ©e jusqu’Ă  prĂ©sent pour un projet open source. Par le biais de son programme de partenariat, Hugging Face permet de profiter d’un kit de transformeurs de haute qualitĂ©, combinĂ© au matĂ©riel le plus Ă©voluĂ© actuellement en matière d’IA. Ă€ l’aide d’Optimum, un nouvel ensemble d’outils open source qui inclut une bibliothèque, les dĂ©veloppeurs peuvent accĂ©der Ă  des modèles optimisĂ©s et certifiĂ©s par Hugging Face.

Ces derniers sont le fruit d’une collaboration entre Graphcore et Hugging Face : les premiers modèles optimisés pour les IPU feront leur apparition au sein d’Optimum d’ici la fin de l’année. À terme, ces modèles engloberont aussi bien des applications dédiées à la vision et à la parole qu’à la traduction et à la génération de textes, pour ne citer que ces exemples. Comme l’indique Clément Delangue, PDG de Hugging Face, « Les développeurs souhaitent tous pouvoir exploiter le matériel le plus récent et le plus performant, comme l’IPU de Graphcore. Cependant, la question est à chaque fois de savoir s’il sera nécessaire de maîtriser un nouveau code ou de nouveaux processus. Avec Optimum et le programme de partenariat de Hugging Face, elle ne se pose pas. On parle essentiellement de plug and play ».

Qu’est-ce qu’une « Intelligence Processing Unit » ?

Une « Intelligence Processing Unit », ou IPU, est un processeur que l’on retrouve sur les systèmes de calcul IPU-POD pour datacenter de Graphcore. Ce nouveau type de processeur a été spécialement conçu afin de répondre aux besoins spécifiques et uniques requis pour l’IA et l’apprentissage automatique. Il se caractérise, entre autres, par un parallélisme granulaire, une arithmétique à simple précision et la prise en charge de la sparsité.

L’architecture des IPU de Graphcore diffère de l’architecture SIMD/SIMT des GPU. Il s’agit en effet d’une architecture MIMD à fort parallélisme, avec une mémoire sur puce à bande passante extrêmement élevée. Une telle conception est garante de performances d’exception et d’une efficacité inégalée, qu’il soit question des modèles les plus populaires d’aujourd’hui, comme BERT et EfficientNet, ou d’applications d’IA nouvelle génération. L’aspect logiciel joue un rôle majeur. Poplar, le kit SDK de Graphcore, a été élaboré conjointement au processeur. Il s’intègre désormais totalement aux cadres d’apprentissage automatique standard, comme PyTorch et TensorFlow, ainsi qu’à des outils d’orchestration et de déploiement tels que Docker et Kubernetes.

Poplar étant compatible avec ces systèmes tiers, largement répandus, les développeurs peuvent sans difficulté transposer des modèles provenant d’autres plateformes de calcul et, ainsi, bénéficier pleinement des fonctionnalités d’IA avancées de l’IPU.

Modèles et matériel de pointe

Peu avant l’annonce par Hugging Face du lancement de son programme de partenariat, nous avions démontré à quel point notre IPU pouvait accélérer l’exécution de modèles basés sur des transformeurs via une implémentation optimisée et spécifique du modèle BERT de Hugging Face utilisant PyTorch.

Toutes les informations disponibles à ce sujet sont consultables dans l’article de blog BERT-Large training on the IPU explained (en anglais).