Les chercheurs de Microsoft soulignent la réduction de « toxicité » et de biais dans les réponses de Phi-2 par rapport à Llama 2. Malgré ses résultats prometteurs, Phi-2 est actuellement limité à un usage exclusivement de recherche, interdisant son utilisation commerciale selon une licence personnalisée de Microsoft Research. Cette restriction décevra les entreprises cherchant à exploiter cette technologie pour développer des produits.
Au cours des derniers mois, l’équipe Machine Learning Foundations à Microsoft Research a publié une suite de petits modèles de langage (SLM) appelés "Phi" qui atteignent des performances remarquables sur une variété de points de référence. Le premier modèle, le Phi-1(opens in new tab) de 1,3 milliard de paramètres, a atteint des performances de pointe sur le codage Python parmi les SLM existants (en particulier sur les benchmarks HumanEval et MBPP). Microsoft a ensuite étendu son champ d'action au raisonnement de bon sens et à la compréhension du langage et créé un nouveau modèle de 1,3 milliard de paramètres appelé Phi-1.5(opens in new tab), dont les performances sont comparables à celles de modèles 5 fois plus grands.
Le modèle de langage Phi-1 est un transformateur spécialisé dans le codage Python de base. Son entraînement a fait appel à diverses sources de données, notamment des sous-ensembles de codes Python provenant de The Stack v1.2, du contenu Q&A de StackOverflow, du code de concours provenant de code_contests, ainsi que des manuels et des exercices Python synthétiques générés par gpt-3.5-turbo-0301. Même si le modèle et les ensembles de données sont relativement petits par rapport aux grands modèles de langage (LLM) contemporains, Phi-1 a démontré un taux de précision impressionnant dépassant 50 % sur le benchmark de codage Python simple, HumanEval.
Utilisations prévues
Compte tenu de la nature des données d'entraînement, Phi-1 est mieux adapté aux messages-guides utilisant le format de code :
Format de code :
Code : | Sélectionner tout |
1 2 3 4 5 6 7 8 9 10 | def print_prime(n): """ Print all primes between 1 and n """ for num in range(2, n+1): for i in range(2, num): if num % i == 0: break else: print(num) |
- Portée limitée : 99,8 % des scripts Python de notre ensemble de données de réglage fin utilisent uniquement les paquets "typing, math, random, collections, datetime, itertools". Si le modèle génère des scripts Python qui utilisent d'autres paquets, nous recommandons vivement aux utilisateurs de vérifier manuellement toutes les utilisations de l'API ;
- Répliquer les scripts en ligne : notre modèle étant entraîné sur des scripts Python trouvés en ligne, il existe un faible risque qu'il reproduise ces scripts, en particulier s'ils apparaissent de manière répétitive dans différentes sources en ligne ;
- Générer du code inexact : le modèle génère fréquemment du code incorrect. Nous suggérons aux utilisateurs de considérer ces résultats comme une source d'inspiration plutôt que comme des solutions définitives ;
- Réponses peu fiables à des formats alternatifs : Bien qu'ils semblent comprendre les instructions dans des formats tels que les questions-réponses ou le chat, nos modèles donnent souvent des réponses inexactes, même s'ils semblent confiants. Leurs capacités dans les formats non codés sont nettement plus limitées.
Limites de la compréhension du langage naturel. En tant que robot de codage, l'objectif principal de Phi-1 est de répondre aux questions liées au codage. Bien qu'il puisse avoir quelques capacités de compréhension du langage naturel, sa fonction première n'est pas d'engager des conversations générales ou de faire preuve de bon sens comme le ferait un assistant d'IA. Sa force réside dans la fourniture d'une assistance et de conseils dans le contexte de la programmation et du développement de logiciels.
Biais potentiels : Phi-1, comme d'autres modèles d'IA, est formé sur des données web et synthétiques. Ces données peuvent contenir des biais et des erreurs susceptibles d'affecter les performances de l'IA. Les biais peuvent provenir de diverses sources telles qu'une représentation déséquilibrée, des stéréotypes ou des opinions controversées présentes dans les données d'entraînement. Par conséquent, le modèle peut parfois générer des réponses qui reflètent ces biais ou ces erreurs.
Avertissement sur les risques de sécurité
Lorsque l'on exploite Phi-1, il est primordial d'être vigilant. Le modèle, bien que puissant, peut introduire par inadvertance des failles de sécurité dans le code généré. Les exemples incluent, mais ne sont pas limités à :
- Traversée de répertoire : le code peut ne pas mettre en œuvre des contrôles de sécurité contre les attaques de traversée de répertoire, ce qui peut permettre un accès non autorisé à des fichiers sensibles sur votre système ;
- Attaques par injection : il peut y avoir des lacunes dans l'échappement des chaînes de caractères, ce qui rend l'application vulnérable aux attaques SQL, aux commandes du système d'exploitation ou à d'autres attaques par injection ;
- Incompréhension des exigences : le modèle peut parfois mal comprendre ou simplifier à l'extrême les exigences des utilisateurs, ce qui conduit à des solutions incomplètes ou peu sûres ;
- Absence de validation des entrées : dans certains cas, le modèle peut négliger d'intégrer la validation des entrées ou d'assainir les entrées des utilisateurs, ce qui ouvre la porte à des attaques telles que le Cross-Site Scripting (XSS) ;
- Défauts non sécurisés : le modèle peut recommander ou générer du code dont les paramètres par défaut ne sont pas sûrs, comme des exigences de mot de passe faibles ou des transmissions de données non cryptées ;
- Défaut de gestion des erreurs : Une mauvaise gestion des erreurs peut révéler par inadvertance des informations sensibles sur le système ou le fonctionnement interne de l'application.
Compte tenu de ces pièges potentiels, et d'autres qui ne sont pas explicitement mentionnés, il est essentiel d'examiner, de tester et de vérifier minutieusement le code généré avant de le déployer dans une application, en particulier celles qui sont sensibles du point de vue de la sécurité. En cas de doute, consultez toujours des experts en sécurité ou effectuez des tests de pénétration rigoureux.
Microsoft publie aujourd'hui Phi-2(opens in new tab), un modèle de langage de 2,7 milliards de paramètres qui démontre des capacités exceptionnelles de raisonnement et de compréhension du langage, avec des performances de pointe parmi les modèles de langage de base de moins de 13 milliards de paramètres. Sur des benchmarks complexes, Phi-2 égale ou surpasse des modèles jusqu'à 25 fois plus grands, grâce à de nouvelles innovations dans la mise à l'échelle du modèle et la curation des données d'entraînement.
Avec sa taille compacte, Phi-2 est un terrain de jeu idéal pour les chercheurs, notamment pour l'exploration de l'interprétabilité mécaniste, l'amélioration de la sécurité ou le réglage fin de l'expérimentation sur une variété de tâches. Nous avons rendu Phi-2(s'ouvre dans un nouvel onglet) disponible dans le catalogue de modèles d'Azure AI Studio pour encourager la recherche et le développement sur les modèles de langage.
Principales idées à l'origine de Phi-2
L'augmentation massive de la taille des modèles de langage à des centaines de milliards de paramètres a débloqué une foule de capacités émergentes qui ont redéfini le paysage du traitement du langage naturel. Il reste à savoir si ces capacités émergentes peuvent être obtenues à plus petite échelle en utilisant des choix stratégiques pour la formation, par exemple la sélection des données.
La ligne de travail avec les modèles Phi vise à répondre à cette question en formant des SLM qui atteignent des performances comparables à celles de modèles d'échelle beaucoup plus élevée (mais encore loin des modèles frontières). Les principales conclusions pour briser les lois conventionnelles de mise à l'échelle des modèles de langage avec Phi-2 sont de deux ordres :
Premièrement, la qualité des données d'apprentissage joue un rôle essentiel dans la performance des modèles. Cela est connu depuis des décennies, mais cette idée est poussée à l'extrême en nous concentrant sur des données de « qualité manuel », dans le prolongement de notre travail précédent « Textbooks Are All You Need ». Les données d'entraînement contient des ensembles de données synthétiques spécifiquement créés pour enseigner au modèle le raisonnement de bon sens et les connaissances générales, y compris la science, les activités quotidiennes et la théorie de l'esprit, entre autres.
Deuxièmement, Microsoft utilise des techniques innovantes pour passer à l'échelle supérieure, en partant de notre modèle à 1,3 milliard de paramètres, Phi-1.5, et en intégrant ses connaissances dans le modèle à 2,7 milliards de paramètres Phi-2. Ce transfert de connaissances à grande échelle accélère non seulement la convergence de la formation, mais aussi les scores de référence de Phi-2, qui s'en trouvent nettement améliorés.
Détails de l'entraînement
Phi-2 est un modèle basé sur un transformateur avec un objectif de prédiction du mot suivant, entraîné sur 1,4T tokens à partir de plusieurs passages sur un mélange d'ensembles de données synthétiques et Web pour le NLP et le codage. L'entraînement de Phi-2 a duré 14 jours sur 96 GPU A100. Phi-2 est un modèle de base qui n'a pas fait l'objet d'un alignement par apprentissage par renforcement à partir du feedback humain (RLHF), ni d'un réglage fin de l'instruction. Malgré cela, un meilleur comportement a été observé en ce qui concerne la toxicité et les biais par rapport aux modèles open source existants qui ont été alignés. Cela correspond à ce qui a été observé dans Phi-1.5 grâce à notre technique de curation de données adaptée.
Évaluation de Phi-2
Ci-dessous, nous résumons les performances de Phi-2 sur des benchmarks académiques comparés à des modèles de langage populaires. Nos benchmarks couvrent plusieurs catégories, à savoir : Big Bench Hard (BBH) (3 coups avec CoT), raisonnement de bon sens (PIQA, WinoGrande, ARC easy and challenge, SIQA), compréhension du langage (HellaSwag, OpenBookQA, MMLU (5 coups), SQuADv2 (2 coups), BoolQ), mathématiques (GSM8k (8 coups)), et codage (HumanEval, MBPP (3 coups)).
Avec seulement 2,7 milliards de paramètres, Phi-2 surpasse les performances des modèles Mistral et Llama-2 à 7B et 13B paramètres sur divers benchmarks agrégés. Il obtient notamment de meilleures performances que le modèle Llama-2-70B, 25 fois plus grand, pour les tâches de raisonnement en plusieurs étapes, c'est-à-dire le codage et les mathématiques. En outre, Phi-2 égale ou surpasse le Google Gemini Nano 2 récemment annoncé, bien qu'il soit plus petit en taille.
Bien entendu, nous sommes conscients des difficultés actuelles liées à l'évaluation des modèles et du fait que de nombreux critères de référence publics peuvent s'infiltrer dans les données d'apprentissage. Pour notre premier modèle, Phi-1, nous avons réalisé une étude de décontamination approfondie afin d'écarter cette possibilité, qui peut être consultée dans notre premier rapport « Les manuels sont tout ce dont vous avez besoin ».
En fin de compte, nous pensons que la meilleure façon de juger un modèle linguistique est de le tester sur des cas d'utilisation concrets. Dans cet esprit, nous avons également évalué Phi-2 en utilisant plusieurs ensembles de données et tâches internes à Microsoft, en le comparant à nouveau à Mistral et Llama-2. Nous avons observé des tendances similaires : en moyenne, Phi-2 surpasse Mistral-7B, et ce dernier surpasse les modèles Llama-2 (7B, 13B et 70B).
La révélation de Phi-2 par Microsoft marque certainement une avancée significative dans le domaine des modèles de langage d'intelligence artificielle, dépassant ses concurrents en termes de performances malgré sa taille relativement modeste de 2,7 milliards de paramètres. La capacité de Phi-2 à rivaliser avec des modèles plus imposants, y compris le Gemini Nano 2 de Google, est indéniablement impressionnante et démontre l'efficacité de son architecture.
L'accent mis par Microsoft sur la réduction de la "toxicité" et des biais dans les réponses de Phi-2, en comparaison avec d'autres modèles tels que Llama 2, est une évolution positive. Cette attention à la qualité des réponses souligne l'importance de promouvoir des modèles de langage qui minimisent les préjugés et les éléments indésirables, améliorant ainsi la fiabilité et l'utilité de l'IA dans divers contextes.
Cependant, la déception réside dans la restriction imposée à l'utilisation commerciale de Phi-2, limitant son déploiement à des fins de recherche uniquement. Cette décision peut être perçue comme un obstacle pour les entreprises cherchant à exploiter cette technologie pour développer des produits innovants. La restriction soulève des questions sur la stratégie de Microsoft quant à la commercialisation de ses avancées en matière d'IA, et elle pourrait potentiellement freiner l'adoption de Phi-2 dans des applications pratiques et lucratives.
En fin de compte, bien que les progrès technologiques de Phi-2 soient louables, la limitation à des fins de recherche seulement pourrait entraver son impact réel sur le marché et susciter des interrogations sur la volonté de Microsoft de partager ses innovations avec le monde commercial.
Source : Microsoft (1, 2)
Et vous ?
Bien que Phi-2 semble surpasser ses concurrents en termes de performances, dans quelle mesure cette comparaison prend-elle en compte des critères autres que le nombre de paramètres, tels que la précision contextuelle et la compréhension sémantique ?
Microsoft critique la démonstration de Google avec Gemini Nano 2. Quels éléments spécifiques de cette démonstration sont remis en question, et comment Phi-2 aborde-t-il ces aspects de manière différente ou similaire ?
Voir aussi :
Les LLM (grand modèle de langage) peuvent générer des JSON (JavaScript Object Notation) valides dans 100% des cas, selon Rémi Louf
Starling-7B : un nouveau grand modèle de langage (LLM) open source, presque aussi performant que GPT-4, selon une étude de l'Université de Californie
LLM par taux d'hallucinations : GPT-4 est le modèle de langage IA qui hallucine le moins, d'après une évaluation de Vectara, qui suggère que les LLM de Google sont les moins fiables