Benchmarks de modèles dans Azure AI Studio
Important
Les éléments marqués (préversion) dans cet article sont actuellement en préversion publique. Cette préversion est fournie sans contrat de niveau de service, nous la déconseillons dans des charges de travail de production. Certaines fonctionnalités peuvent être limitées ou non prises en charge. Pour plus d’informations, consultez Conditions d’Utilisation Supplémentaires relatives aux Évaluations Microsoft Azure.
Dans Azure AI Studio, vous pouvez comparer les benchmarks entre les modèles et jeux de données disponibles dans le secteur d’activité pour déterminer celui qui correspond à votre scénario métier. Vous pouvez accéder directement aux résultats de benchmarking détaillés dans le catalogue de modèles. Que vous ayez déjà des modèles en tête ou que vous soyez en train de les découvrir, les données de benchmarking d’Azure AI vous permettent de prendre des décisions éclairées rapidement et efficacement.
Azure AI prend en charge le benchmarking des modèles pour les modèles sélectionnés qui sont populaires et les plus fréquemment utilisés. Les modèles pris en charge ont une icône de benchmarks qui ressemble à un histogramme. Vous pouvez trouver ces modèles dans le catalogue de modèles à l’aide du filtre Collections et en sélectionnant Résultats du benchmark. Vous pouvez ensuite utiliser la fonctionnalité de recherche pour rechercher des modèles spécifiques.
Les benchmarks de modèles vous aident à prendre des décisions éclairées concernant la durabilité des modèles et des jeux de données avant de lancer un travail. Les benchmarks sont une liste organisée des modèles les plus performants pour une tâche, basée sur un comparatif complet des métriques de benchmarking. Azure AI Studio fournit les benchmarks suivants pour les modèles basés sur les collections du catalogue de modèles :
- Benchmarks entre les grands modèles de langage (LLM) et les petits modèles de langage (SLM)
- Benchmarks entre les modèles d’incorporation
Benchmarks des LLM et des SLM
Les benchmarks de modèles évaluent les grands modèles de langage et les petits modèles de langage dans les catégories suivantes : qualité, performance et coût. Les points de référence sont régulièrement mis à jour, à mesure que de nouvelles métriques et jeux de données sont ajoutés aux modèles existants et que de nouveaux modèles sont ajoutés au catalogue de modèles.
Contrôle
Azure AI évalue la qualité des grands et petits modèles de langage sur différentes métriques regroupées en deux catégories principales : l’exactitude et les métriques assistées par invite :
Pour une métrique d’exactitude :
Métrique | Description |
---|---|
Précision | Les scores de précision sont disponibles au niveau du jeu de données et du modèle. Au niveau du jeu de données, le score est la valeur moyenne d’une métrique de précision calculée sur tous les exemples du jeu de données. La métrique d’exactitude utilisée est exact-match dans tous les cas, à l’exception du jeu de données HumanEval qui utilise une métrique pass@1 . La correspondance exacte compare le texte généré par le modèle avec la réponse correcte en fonction du jeu de données, en remontant « un » si le texte généré correspond exactement à la réponse et « zéro » dans le cas contraire. La métrique pass@1 mesure la proportion de solutions de modèle qui réussissent un ensemble de tests unitaires dans une tâche de génération de code. Au niveau du modèle, le score de précision est la moyenne des précisions au niveau du jeu de données pour chaque modèle. |
Pour les métriques assistées par invite :
Métrique | Description |
---|---|
Cohérence | La cohérence évalue la façon dont le modèle de langage peut produire une sortie fluide, qui se lit naturellement et qui ressemble à un langage humain. |
Fluidité | La fluidité évalue la maîtrise du langage d’une réponse prédite par l’IA générative. Elle évalue la façon dont le texte généré respecte les règles grammaticales, les structures syntaxiques et l’utilisation appropriée du vocabulaire, ce qui aboutit à des réponses linguistiques correctes et naturelles. |
GPTSimilarity | La GPTSimilarity est une mesure qui quantifie la similarité entre une phrase de vérité terrain (ou un document) et la phrase de prédiction générée par un modèle d'IA. La métrique est calculée en calculant d’abord les intégrations au niveau de la phrase à l’aide de l’API d’intégration pour la vérité terrain et la prédiction du modèle. Ces incorporations constituent des représentations vectorielles de haute dimension des phrases, capturant leur signification sémantique et leur contexte. |
Fondement | Le fondement mesure l’alignement des réponses générées par le modèle de langage sur les informations de la source d’entrée. |
Pertinence | La pertinence mesure dans quelle proportion les réponses générées par le modèle de langage sont pertinentes et directement liées aux questions données. |
Azure AI affiche également l’index de qualité comme suit :
Index | Description |
---|---|
Index de qualité | L’index de qualité est calculé en effectuant un scale-down de GPTSimilarity entre zéro et un, suivi d’une moyenne avec des métriques d’exactitude. Des valeurs plus élevées de l’indice de qualité sont préférables. |
L’index de qualité représente le score moyen de la métrique primaire applicable (exactitude, GPTSimilarity remise à l’échelle) sur 15 jeux de données standard et est fourni sur une échelle de zéro à un.
L’index de qualité constitue deux catégories de métriques :
- Exactitude (par exemple, correspondance exacte ou
pass@k
). Est comprise entre zéro et un. - Métriques basées sur les invites (par exemple, GPTSimilarity, fondement, cohérence, fluidité et pertinence). Est comprise entre un et cinq.
La stabilité de la valeur d’index de qualité fournit un indicateur de la qualité globale du modèle.
Performances
Les métriques de performances sont calculées en tant qu’agrégat sur 14 jours, en fonction de 24 pistes (deux requêtes par piste) envoyées quotidiennement avec un intervalle d’une heure entre chaque piste. Les paramètres par défaut suivants sont utilisés pour chaque requête au point de terminaison du modèle :
Paramètre | Valeur | Applicable pour |
---|---|---|
Région | USA Est/USA Est 2 | API serverless et Azure OpenAI |
Limite de débit des jetons par minute (TPM) | 30 000 (180 RPM sur la base d’Azure OpenAI) N/A (API serverless) |
Pour les modèles Azure OpenAI, la sélection est disponible pour les utilisateurs avec des plages de limites de débit en fonction du type de déploiement (standard, global, standard global, et ainsi de suite.) Pour les API serverless, ce paramètre est abstrait. |
Nombre de demandes | Deux requêtes dans une piste par heure (24 pistes par jour) | API serverless, Azure OpenAI |
Nombre de pistes/exécutions | 14 jours avec 24 pistes par jour pour 336 exécutions | API serverless, Azure OpenAI |
Longueur de l’invite/du contexte | Longueur modérée | API serverless, Azure OpenAI |
Nombre de jetons traités (modérés) | Ratio 80:20 pour les jetons d’entrée et de sortie, c’est-à-dire 800 jetons d’entrée pour 200 jetons de sortie. | API serverless, Azure OpenAI |
Nombre de demandes simultanées | Un (les demandes sont envoyées séquentiellement l’une après l’autre) | API serverless, Azure OpenAI |
Données | Synthétique (invites d’entrée préparées à partir du texte statique) | API serverless, Azure OpenAI |
Région | USA Est/USA Est 2 | API serverless et Azure OpenAI |
Type de déploiement | Standard | Applicable uniquement pour Azure OpenAI |
Streaming | True | S’applique aux API serverless et à Azure OpenAI. Pour les modèles déployés via le calcul managé, définissez max_token = 1 pour répliquer le scénario de diffusion en continu, ce qui permet de calculer des métriques telles que le délai total du premier jeton (TTFT) pour le calcul managé. |
Générateur de jetons | Package tiktoken (Azure OpenAI) ID du modèle Hugging Face (API serverless) |
ID du modèle Hugging Face (API serverless Azure) |
Les performances des grands et petits modèles de langage sont évaluées dans les métriques suivantes :
Métrique | Description |
---|---|
Moyenne de latence | Temps moyen en secondes nécessaire pour le traitement d’une requête, calculé sur plusieurs requêtes. Pour calculer cette métrique, nous envoyons une requête au point de terminaison toutes les heures pendant deux semaines et calculons la moyenne. |
Latence P50 | Valeur du 50e centile (médiane) de latence (le temps écoulé entre la requête et le moment où nous recevons la réponse complète avec un code de réussite). Par exemple, lorsque nous envoyons une requête au point de terminaison, 50 % des requêtes sont effectuées en « x » secondes, « x » étant la mesure du temps de latence. |
Latence P90 | Valeur du 90e centile de latence (le temps écoulé entre la requête et le moment où nous recevons la réponse complète avec un code de réussite). Par exemple, lorsque nous envoyons une requête au point de terminaison, 90 % des requêtes sont effectuées en « x » secondes, « x » étant la mesure du temps de latence. |
Latence P95 | Valeur du 95e centile de latence (le temps écoulé entre la requête et le moment où nous recevons la réponse complète avec un code de réussite). Par exemple, lorsque nous envoyons une requête au point de terminaison, 95 % des requêtes sont terminées en « x » secondes, « x » étant la mesure du temps de latence. |
Latence P99 | Valeur du 99e centile de latence (le temps écoulé entre la requête et le moment où nous recevons la réponse complète avec un code de réussite). Par exemple, lorsque nous envoyons une requête au point de terminaison, 99 % des requêtes sont terminées en « x » secondes, « x » étant la mesure du temps de latence. |
GTPS de débit | Les jetons générés par seconde (GTPS) correspondent au nombre de jetons de sortie qui sont générés par seconde à partir du moment où la requête est envoyée au point de terminaison. |
TTPS de débit | Le total de jetons par seconde (TTPS) est le nombre total de jetons traités par seconde, y compris à partir de l’invite d’entrée et des jetons de sortie générés. |
TTFT de latence | Le délai total du premier jeton (TTFT) est le temps nécessaire pour que le premier jeton de la réponse soit renvoyé depuis le point de terminaison lorsque la diffusion en continu est activée. |
Durée entre les jetons | Cette métrique correspond au temps écoulé entre la réception des jetons. |
Azure AI affiche également des index de performances pour la latence et le débit comme suit :
Index | Description |
---|---|
Index de latence | Délai du premier jeton moyen. Les valeurs basses sont préférables. |
Index de débit | Nombre moyen de jetons générés par seconde. Des valeurs plus élevées sont préférables. |
Pour les métriques de performances telles que la latence ou le débit, le délai du premier jeton et les jetons générés par seconde donnent une meilleure idée globale des performances et du comportement typiques du modèle. Nous actualisons nos chiffres de performance à intervalles réguliers.
Cost
Les calculs de coût sont des estimations pour l’utilisation d’un point de terminaison de modèle de grand ou petit modèle de langage hébergé sur la Plateforme d’IA Azure. Azure AI prend en charge l’affichage du coût des API serverless et des modèles Azure OpenAI. Étant donné que ces coûts sont susceptibles de changer, nous actualisons nos calculs de coûts à une cadence régulière.
Le coût des petits et grands modèles de langage est évalué dans les métriques suivantes :
Métrique | Description |
---|---|
Coût par jetons d’entrée | Coût du déploiement d’API serverless pour 1 million de jetons d’entrée |
Coût par jetons de sortie | Coût du déploiement d’API serverless pour 1 million de jetons de sortie |
Coût estimé | Coût de la somme du coût par jetons d’entrée et du coût par jetons de sortie, avec un ratio de 3:1. |
Azure AI affiche également l’index de coût comme suit :
Index | Description |
---|---|
Index des coûts | Coût estimé. Les valeurs basses sont préférables. |
Benchmarks des modèles d’incorporations
Les benchmarks de modèles évaluent les modèles d’incorporation en fonction de leur qualité.
Contrôle
La qualité des modèles d’incorporation est évaluée dans les métriques suivantes :
Métrique | Description |
---|---|
Précision | L’exactitude est la proportion de prédictions correctes par rapport au nombre total de prédictions traitées. |
Score F1 | Le score F1 est la moyenne pondérée de la précision et du rappel, où la meilleure valeur est « un » (précision et rappel parfaits) et la pire est « zéro ». |
Moyenne de la précision moyenne (MAP, Mean Average Precision) | La MAP évalue la qualité des systèmes de classement et de recommandation. Elle mesure à la fois la pertinence des éléments suggérés et la capacité du système à placer les éléments plus pertinents en haut. Les valeurs peuvent aller de zéro à un, et plus la MAP est élevée, plus le système peut placer les éléments pertinents en haut de la liste. |
Gain cumulatif actualisé normalisé (NDCG, Normalized Discounted Cumulative Gain) | Le NDCG évalue la capacité d’un algorithme d’apprentissage automatique à trier les éléments en fonction de leur pertinence. Il compare les classements à un ordre idéal où tous les éléments pertinents sont en haut de la liste et où k est la longueur de la liste, tout en évaluant la qualité des classements. Dans nos benchmarks, k=10, indiqué par une métrique ndcg_at_10 , signifie que nous examinons les 10 premiers éléments. |
Precision | La précision mesure la capacité du modèle à identifier correctement les instances d’une classe en particulier. La précision indique la fréquence à laquelle un modèle Machine Learning est correct lors de la prédiction de la classe cible. |
Corrélation de Spearman | La corrélation de Spearman basée sur la similarité cosinus est mesurée en calculant d’abord la similarité cosinus entre les variables, puis en classant ces scores et en utilisant les classements pour calculer la corrélation de Spearman. |
Mesure V | La mesure V est une métrique utilisée pour évaluer la qualité du clustering. La mesure V est calculée en tant que moyenne harmonieuse de l’homogénéité et de l’exhaustivité, garantissant un équilibre entre les deux pour un score significatif. Les notes possibles se situent entre zéro et un, la note 1 correspondant à un étiquetage parfaitement complet. |
Calcul des scores
Scores individuels
Les résultats du benchmark proviennent de jeux de données publics couramment utilisés pour l’évaluation des modèles de langage. Dans la plupart des cas, les données sont hébergées dans des référentiels GitHub gérés par les créateurs ou les curateurs des données. Les pipelines d’évaluation Azure AI téléchargent des données depuis leurs sources d’origine, extraient des invites de chaque ligne d’exemple, génèrent des réponses de modèle, puis calculent les métriques de précision pertinentes.
La construction d’invites suit les bonnes pratiques pour chaque jeu de données, comme spécifié par le document présentant le jeu de données et les normes du secteur d’activité. Dans la plupart des cas, chaque invite contient plusieurs coups, c’est-à-dire des exemples de questions et réponses complètes pour préparer le modèle à la tâche. Les pipelines d’évaluation créent des coups en échantillonnant des questions et des réponses dans une partie des données conservées de l’évaluation.