BLOOM (modèle de langage)

From Wikipedia, the free encyclopedia

BLOOM (BigScience Large Open-science Open-access Multilingual Language Model) est un modèle de langage multilingue (46 langues et 13 langages de programmation), open source, développé dans le cadre du projet BigScience initié principalement par l'entreprise franco-américaine Hugging Face, le Centre national de la recherche scientifique (CNRS), GENCI, et le ministère de l'Enseignement supérieur et de la Recherche[1].

Ce modèle d'IA avancée est développé en France dans le cadre du projet collaboratif international BigScience (un projet porté par Hugging Face, visant à développer des modèles d'intelligence artificielle avancés dans une optique science ouverte et de transparence, soutenu par des institutions telles que le CNRS et GENCI, BigScience et fédérant une communauté internationale de chercheurs soucieux de démocratiser l'accès aux technologies d'IA tout en promouvant une gouvernance responsable avec des restrictions d'utilisation pour des buts non éthiques[2],[1].

BLOOM est initialement conçu pour générer du texte cohérent dans 46 langues (plus de 50 ensuite) et plus de 10 langages de programmation (C, C#, C++, Go, Java, JavaScript, Lua, PHP, Python, Rust, Scala et TypeScript), en utilisant la technologie des transformers, (qui permet de traiter des données séquentielles efficacement) mais uniquement décodeur (le terme décodeur désigne ici un modèle Transformer utilisant uniquement la partie « décodeur » de l'architecture : contrairement aux modèles employant à la fois un encodeur et un décodeur (par exemple, pour la traduction automatique), ce type de modèle se concentre exclusivement sur la génération de texte en prédisant de manière autogressive chaque mot suivant à partir des tokens précédents. Ainsi, BLOOM est conçu pour générer du texte cohérent en évaluant itérativement la probabilité du mot suivant, sans passer par une phase d'encodage distincte). Le modèle d'IA a été entraîné sur un ensemble de données de 1,6 To (le corpus de formation de BLOOM, nommé ROOTS[3], combine des données extraites de la dernière version du corpus Web OSCAR (38 % de ROOTS) et des données nouvellement collectées extraites d'une liste de sources de données linguistiques sélectionnées et documentées manuellement. BLOOM, basé sur environ 350 milliards de tokens, a été développé grâce au supercalculateur Jean Zay du CNRS. Avec 176 milliards de paramètres, il est classé dans les modèles de langage les plus avancés. Il fonctionne sur une infrastructure de traitement de 8 GPU comptant 80 Go chacun, mais Hugging Face en commercialise aussi une version cloud (c'est-à-dire accessible via une interface en ligne).

Histoire

De à , plus de 1 000 chercheurs de 60 pays y travaillent ; l'entraînant sur un vaste jeu de données textuelles, grâce à l'équivalent de 28 pétaflops de calcul sur le supercalculateur Jean Zay du CNRS (dédié au calcul numérique intensif).

De 2023 à 2025, le projet s'est enrichi de nouveaux corpus d'entraînement, et élargi à 46 langues naturelles et 13 langages de programmation, tout en consolidant sa démarche éthique[4] et transparente en science ouverte.

Licence éthique

Bloom est publié sous licence « BigScience RAIL License » dans une logique open source, mais de type « permissive », c'est-à-dire qui permet de redistribuer le logiciel (modifié ou non), mais sans adopter toutes les contraintes propres au logiciel libre (la licence de BLOOM interdit à tout utilisateur de recourir à cette IAg pour des objectifs contraires à la loi ou considérés comme non-éthiques)[5]. Plus précisément, il est interdit d'utiliser BLOOM dans les cas suivants :

  • Pour toute application qui viole toute loi ou réglementation nationale, fédérale, étatique, locale ou internationale applicable,
  • Dans le but d'exploiter, de nuire ou de tenter d'exploiter ou de nuire à des mineurs de quelque manière que ce soit,
  • Pour générer ou diffuser de fausses informations vérifiables dans le but de nuire à autrui,
  • Pour générer ou diffuser des informations personnelles identifiables qui peuvent être utilisées pour nuire à un individu,
  • Pour générer ou diffuser des informations ou du contenu, dans n'importe quel contexte (par exemple, des publications, des articles, des tweets, des chatbots ou d'autres types de robots automatisés) sans indiquer expressément et de manière intelligible que le texte est généré par une machine,
  • Diffamer, dénigrer ou harceler d'autres personnes,
  • Usurper l'identité ou tenter d'usurper l'identité d'autrui,
  • Pour une prise de décision entièrement automatisée qui porte atteinte aux droits légaux d'un individu,
  • Pour toute utilisation destinée ou avec pour effet de discriminer ou de nuire à des individus ou des groupes sur la base d'un comportement social en ligne ou hors ligne ou de caractéristiques personnelles ou de personnalité connues ou prévues,
  • Pour exploiter l'une des vulnérabilités d'un groupe spécifique de personnes en fonction de leur âge, de leurs caractéristiques sociales, physiques ou mentales, afin de déformer matériellement le comportement d'une personne appartenant à ce groupe d'une manière qui cause ou est susceptible de causer à cette personne ou à une autre personne un préjudice physique ou psychologique,
  • Pour toute utilisation destinée à discriminer ou avec effet de discriminer des individus ou des groupes sur la base de caractéristiques ou de catégories légalement protégées,
  • Fournir des conseils médicaux et interpréter les résultats médicaux,
  • Pour générer ou diffuser des informations dans le but d'être utilisées pour l'administration de la justice, l'application de la loi, les procédures d'immigration ou d'asile, telles que la prédiction qu'un individu commettra une fraude/un crime (par exemple, par le profilage de texte, en établissant des relations causales entre des affirmations faites dans des documents et une utilisation aveugle et arbitrairement ciblée).

Empreinte carbone et empreinte énergétique de BLOOM

Elle a été estimée en 2022, et  alors que le calcul de l'empreinte carbone des modèles de langage se limite généralement aux seules émissions dues à la consommation d'énergie lors de l'entraînement du modèle  dans le cas de BLOOM, les évaluateurs ont aussi tenu compte la fabrication de l'équipement, de l'entraînement intermédiaire et du déploiement du modèle[3].

  • L'entraînement de BLOOM a généré environ 81 tonnes d'équivalent CO2, réparties entre la fabrication de l'équipement (14 %, soit 11 tonnes), l'énergie consommée pendant l'entraînement (30 %, soit 25 tonnes) et la consommation électrique des équipements et du cluster de calcul en période d'inactivité (55 %, soit 45 tonnes)[3].
  • Sa consommation d'énergie (433 MWh) dépasse (de peu) celle d'OPT[note 1] (324 MWh), mais ses émissions (25 tonnes) sont environ deux tiers inférieures à celles d'OPT (70 tonnes), en raison de la forte part du nucléaire dans l'origine de l'électricité utilisée pour entraîner BLOOM (57 gCO2 eq/kWh), comparativement à celui utilisé pour OPT (231 gCO2 eq/kWh). BLOOM et OPT ont tous deux généré beaucoup moins d'émissions de carbone que GPT-3, grâce à un matériel plus efficace et à des sources d'énergie moins carbonées.
    L'entraînement final de BLOOM représente environ 37 % des émissions totales du projet, les 63 % restants étant dus à d'autres processus (entraînements intermédiaires et tests d'évaluation du modèle)[3].
  • Le déploiement en temps réel de l'API du modèle BLOOM sur une instance GCP avec 16 GPU dans la région us-central1 a été estimé à environ 20 kg d'équivalent CO2 par jour (ou 0,83 kg par heure) avec des variations selon le matériel utilisé, l'implémentation du modèle et le nombre de requêtes[3].

Les prompts

Notes et références

Voir aussi

Related Articles

Wikiwand AI