Skip to main content

Évaluation des modèles IA

Testez et comparez les sorties des modèles IA à l’aide d’évaluateurs et de mesures de scoring dans GitHub Models.

Vue d’ensemble

GitHub Models fournit un flux de travail d’évaluation simple qui aide les développeurs à comparer des grands modèles de langage (LLM), à améliorer les prompts et à prendre des décisions basées sur les données au sein de la plateforme GitHub. Vous pouvez utiliser GitHub Models pour tester de nouvelles fonctionnalités ou valider des modifications apportées au modèle en analysant les performances, l’exactitude et le coût à l’aide d’outils d’évaluation structurés.

Conseil

Vous pouvez exécuter des évaluations directement à partir de la ligne de commande à l’aide de la commande gh models eval. Elle utilise les mêmes évaluateurs que l’interface utilisateur : correspondance de chaînes, similarité, évaluateurs personnalisés de type LLM-juge, etc. Vous pouvez ainsi tester votre fichier .prompt.yml localement ou dans l’intégration continue.

Cas d’usage pour GitHub Models

Le comportement du modèle peut varier considérablement en fonction du prompt, de l’entrée ou de la configuration. GitHub Models vous aide à :

  • Tester et comparer plusieurs LLM dans des cas d’utilisation réalistes.
  • Optimiser la formulation des prompts, la température et d’autres paramètres.
  • Évaluer les sorties du modèle à l’aide de mesures structurées et reproductibles.
  • Intégrer le développement de l’IA dans votre flux de travail.

Exemple de scénario

Imaginez que vous développiez une fonctionnalité permettant de résumer les commentaires des clients soumis via des tickets de support. Ces résumés seront utilisés pour générer des rapports internes et des tickets, leur sortie doit donc être claire, pertinente et concise.

Vous souhaitez :

  • Testez différents modèles et configurations de prompts.
  • Évaluez la configuration la plus performante en fonction de la qualité, de la cohérence et de l’efficacité.
  • Enregistrez la configuration dans votre référentiel pour pouvoir la réutiliser et la partager.

Test de prompt dans le Terrain de jeu

Pour vous familiariser avec la création et la gestion des prompts dans GitHub Models, consultez Tester un prompt dans le Terrain de jeu.

Le Terrain de jeu vous permet de comparer les modèles côte à côte, d’ajuster leurs paramètres et de tester des variations de prompt.

À cette étape, vous allez configurer un modèle pour générer des résumés des commentaires du support client. Vous allez définir un prompt système, le tester avec un exemple d’entrée, puis l’améliorer afin de garantir que la sortie est concise et pertinente.

Définition du prompt système

Définissez le comportement du modèle pour votre objectif actuel. Dans ce cas, l’objectif est de résumer les commentaires des clients. Sous Paramètres, entrez le prompt système suivant :

You are a helpful assistant that summarizes support ticket responses into concise summaries.

Laissez les autres paramètres par défaut.

Capture d’écran du prompt système. L’entrée du prompt système est mise en surbrillance.

Écrire un prompt utilisateur

Maintenant que le modèle est configuré, entrez les commentaires client suivants dans la boîte de dialogue Prompt :

The app crashes every time I try to upload a PDF from my phone. It works on desktop but not on mobile.

Le modèle peut générer une réponse telle que la suivante :

The user experiences consistent app crashes when attempting to upload a PDF from their phone. Uploading PDFs works normally on desktop. They request an investigation into the issue.

Définition de la variable d’entrée

À ce stade, la configuration génère un résumé clair et concis. En bas des paramètres Paramètres, cliquez sur Créer un fichier prompt.yml pour ouvrir la vue Prompt. Votre prompt système sera prérempli automatiquement.

Dans le champ Prompt utilisateur, entrez le prompt suivant :

Summarize the following: {{input}}

La variable {{input}} agit comme un espace réservé qui vous permet de tester différentes entrées (commentaires des clients) sans modifier le prompt à chaque fois. Chaque entrée de test que vous ajoutez remplacera {{input}} lorsque la comparaison s’exécutera.

Ajout d’entrées de test

En haut de la vue Prompts, sélectionnez Comparer pour activer ou désactiver la vue Comparaisons. Cette vue vous permet d’effectuer des comparaisons structurées entre plusieurs prompts ou modèles et d’appliquer des évaluateurs pour mesurer les performances.

Capture d’écran du bouton pour activer ou désactiver la comparaison. Le bouton pour activer ou désactiver la comparaison est mis en surbrillance.

Dans la vue Comparaisons, chaque ligne du tableau représente un cas de test unique, avec une entrée spécifique et une sortie attendue. Chaque colonne présente une configuration de prompt différente afin de comparer les performances de différents modèles ou styles de prompt à l’aide d’évaluateurs.

Cliquez sur Ajouter des lignes pour entrer vos données de test. L’entrée simule un message de support réel, et la sortie attendue représente le résumé idéal que le modèle devrait renvoyer. Le tableau ci-dessous présente des exemples d’entrées de test ainsi que leurs sorties attendues pour l’évaluation.

LigneInputSortie attendue
1L’application plante à chaque fois que j’essaie de télécharger un fichier PDF depuis mon téléphone. Elle fonctionne sur ordinateur, mais pas sur mobile.L’utilisateur signale que l’application mobile plante à chaque fois qu’il essaie de télécharger un fichier PDF, alors que la version bureau fonctionne sans problème.
2J’ai contacté le support technique il y a deux jours et je n’ai toujours pas reçu de réponse. J’ai besoin d’aide pour récupérer mon compte dès que possible.L’utilisateur attend une réponse du support technique et a besoin d’aide de toute urgence pour récupérer son compte.
3Merci d’ajouter un mode sombre. C’est très difficile à utiliser la nuit. J’ai mal aux yeux après une utilisation prolongée.L’utilisateur réclame un mode sombre en raison d’une fatigue oculaire lors de l’utilisation nocturne.

Ajustement des paramètres du modèle

À droite du tableau, cliquez sur pour ajouter une nouvelle configuration de prompt.

Dans la nouvelle configuration de prompt, vous pouvez mettre à jour le modèle et affiner son comportement à l’aide des paramètres disponibles. Ces paramètres contrôlent la manière dont le modèle génère du texte, notamment sa longueur, son caractère aléatoire et ses répétitions.

Configuration du modèle

Dans le menu déroulant Modèle, choisissez PHI-4 pour créer une configuration distincte à des fins de comparaison.

Vous pouvez ajuster les paramètres suivants pour influencer la sortie du modèle :

  • Nombre maximal de jetons : définit le nombre maximal de jetons que le modèle peut retourner. Les valeurs plus élevées permettent des sorties plus longues.
  • Température : contrôle le caractère aléatoire de la réponse. Les valeurs plus faibles (de 0,2 à 0,4) produisent des sorties plus ciblées et déterministes. Les valeurs plus élevées (0,8 à 1,0) introduisent davantage de variation et de créativité.
  • Top P : contrôle la diversité des sorties en sélectionnant parmi un ensemble des mots suivants les plus probables. Les valeurs plus faibles réduisent la variabilité, tout comme la baisse de la température.
  • Pénalité de présence : décourage le modèle d’introduire de nouveaux sujets. Les valeurs plus élevées appliquent une pénalité plus forte. Une valeur de 0 convient généralement pour la synthèse.
  • Pénalité de fréquence : réduit la probabilité de répétition des mots. Les valeurs plus élevées appliquent une pénalité plus forte. Une valeur comprise entre 0 et 0,5 permet de garantir la clarté des résumés et d’éviter toute redondance.
  • Stop : spécifie une ou plusieurs chaînes qui, lorsqu’elles sont générées, interrompent la réponse du modèle. Utilisez cette option pour éviter les sorties trop longues ou pour appliquer des règles de mise en forme.

Le tableau ci-dessous fournit une configuration des paramètres permettant de générer des résumés concis lors de la comparaison de modèles.

ParamètreValeurRaison
Nombre maximal de jetons128Permet de donner des réponses courtes et pertinentes
Température0.3Garantit des sorties déterministes et ciblées
Meilleur P1.0Permet d’utiliser tout le vocabulaire, mais guide la sélection
Pénalité de présence0Aucune pénalité : les résumés ne nécessitent pas de variation de sujet
Pénalité de fréquence0.3Réduit les répétitions dans les résumés concis
Stop(facultatif)À utiliser si vous souhaitez arrêter la sortie après un mot-clé ou un symbole

Après avoir appliqué les paramètres, vous pouvez ajouter des colonnes supplémentaires pour comparer plusieurs modèles ou configurations de prompt côte à côte.

Évaluation des sorties

Une fois le prompt configuré, exécutez une évaluation structurée pour comparer les sorties du modèle à l’aide de données réelles et de métriques reproductibles.

L’évaluation des modèles vous aide à comprendre comment différents modèles et configurations de prompts fonctionnent avec des entrées réelles. Dans la vue Prompt, vous pouvez appliquer des évaluateurs à plusieurs modèles côte à côte et passer en revue des métriques telles que la similarité, la pertinence et l’ancrage.

Les évaluateurs suivants sont disponibles :

  • Similitude : mesure le degré de correspondance entre la sortie d’un modèle et une réponse attendue ou de référence. Cette mesure est utile lorsque vous souhaitez confirmer que le modèle renvoie des réponses cohérentes et précises, alignées sur un résultat connu. Le score varie de 0 à 1, les valeurs élevées indiquant une plus grande similitude.
  • Pertinence : fait référence à l’efficacité avec laquelle une réponse répond à une question. Il évalue l’exactitude, l’exhaustivité et la pertinence directe de la réponse basée uniquement sur l’information donnée. Le score varie de 0 à 1, les valeurs élevées indiquant une meilleure correspondance avec l’intention de l’entrée.
  • Ancrage : mesure dans quelle mesure une réponse est solidement ancrée dans le contexte fourni, en évaluant sa pertinence, sa précision et son exhaustivité basées exclusivement sur ce contexte. Il évalue dans quelle mesure la réponse traite pleinement la question sans introduire d’informations non pertinentes ou incorrectes. Le score varie de 0 à 1, les valeurs élevées indiquant une plus grande exactitude.
  • Prompt personnalisé : vous permet de définir vos propres critères d’évaluation pour un LLM afin d’évaluer la sortie d’un autre. Cela vous permet d’attribuer un score aux sorties du modèle en fonction de vos propres directives. Vous pouvez choisir entre des évaluations validées/non validées ou notées, ce qui est idéal dans les cas où les indicateurs standard ne permettent pas de mesurer les attentes en matière de test.

Lorsque vous êtes prêt à évaluer, cliquez sur Exécuter pour générer et comparer les sorties de toutes les configurations de prompt. Une fois l’exécution terminée, GitHub Models affiche la sortie de chaque configuration de prompt, ainsi que les scores des évaluateurs.

Capture d’écran du jeu de données après l’exécution de l’évaluateur.

Cas de test : plantage lors du téléchargement d’un fichier PDF

Entrée : The app crashes every time I try to upload a PDF from my phone. It works on desktop but not on mobile.

Les tableaux suivants affichent la sortie de chaque modèle et les scores attribués par l’évaluateur :

ModèleSortie
GPT-4.1L’utilisateur signale que l’application plante lors du téléchargement d’un fichier PDF depuis un mobile, alors que le téléchargement fonctionne sur un ordinateur de bureau.
DeepSeek-R1 D’accord, l’utilisateur rencontre un problème : l’application plante lorsqu’il essaie de télécharger un fichier PDF depuis son téléphone. Elle fonctionne sur ordinateur, mais pas sur mobile. Je vais analyser tout ça. Tout d’abord, le problème principal concerne le plantage de l’application lors du téléchargement de fichiers PDF sur mobile. Étant donné que l’application fonctionne sur ordinateur, il s’agit probablement d’un problème spécifique aux appareils mobiles. Les causes possibles pourraient être liées à la version de l’application mobile, au système d’exploitation du téléphone, aux limites de taille des fichiers sur mobile ou à des problèmes de compatibilité avec certains formats PDF sur les appareils mobiles. Je dois m’assurer que le résumé mentionne bien le plantage lors du téléchargement de PDF sur mobile, tout en précisant que la version sur ordinateur fonctionne correctement
Phi-4L’application plante lorsque l’on tente de télécharger un PDF depuis un appareil mobile, bien qu’elle fonctionne correctement sur la version sur ordinateur.
ModèleSimilaritéPertinenceFondementJetons d’entréeJetons de sortieLatence
GPT-4.1100 %50%100 %6120918 ms
DeepSeek-R150 %50 %75%521282 285 ms
Phi-475 %100 %100 %61661 117 ms

Utilisez les scores de l’évaluateur pour évaluer et comparer les réponses au-delà des formulations superficielles.

Similarité

Évaluez dans quelle mesure la sortie de chaque modèle correspond au résumé attendu. Le tableau ci-dessous indique les scores de pertinence pour chaque modèle.

ModèleScore de similarité
GPT-4.1100 %
DeepSeek-R150%
Phi-475 %

Bien que tous les modèles aient inclus le contenu clé de l’entrée, le score de similarité de DeepSeek-R1 est nettement inférieur en raison de ses commentaires internes détaillés, qui s’éloignent du format attendu d’un résumé concis. En revanche, la réponse de GPT-4.1 correspond à la formulation et à la structure de la sortie de référence.

Pertinence

Évaluez dans quelle mesure chaque modèle rend compte de l’intention principale de l’entrée. Le tableau ci-dessous indique les scores de pertinence pour chaque modèle.

ModèleScore de pertinence
GPT-4.150%
DeepSeek-R150%
Phi-4100 %

Les trois modèles ont identifié le problème majeur lié au plantage de l’application lors du téléchargement de fichiers PDF sur mobile. Phi-4 a obtenu un score de pertinence plus élevé pour avoir mieux reflété le point de vue de l’utilisateur. DeepSeek-R1 a perdu des points pour avoir introduit des causes techniques spéculatives non mentionnées dans les données d’entrée d’origine.

Fondement

Évaluez si la sortie de chaque modèle reste fidèle à l’entrée sans introduire d’informations non prises en charge. Le tableau ci-dessous indique les scores de pertinence pour chaque modèle.

ModèleScore d’ancrage
GPT-4.1100 %
DeepSeek-R175 %
Phi-4100 %

Même si DeepSeek-R1 ajoute des commentaires internes, il n’introduit pas de faits imaginaires. Sa phrase de résumé finale reflète correctement le contenu de l’entrée d’origine.

Cas de test : demande de mode sombre

Entrée : Please add dark mode. It's very hard to use at night. My eyes hurt after prolonged use.

Les tableaux suivants affichent la sortie de chaque modèle et les scores attribués par l’évaluateur :

ModèleSortie
GPT-4.1L’utilisateur demande l’ajout d’un mode sombre en raison d’une gêne et d’une fatigue oculaire lorsqu’il utilise l’application la nuit.
DeepSeek-R1 D’accord, l’utilisateur souhaite que le mode sombre soit ajouté car le mode clair est difficile à utiliser la nuit et lui fait mal aux yeux. Je dois rédiger un résumé concis. Je vais commencer par la demande principale : ajouter un mode sombre. Ensuite, je vais donner la raison : fatigue oculaire due à une utilisation prolongée la nuit. Je vais rester concis, en une seule phrase. Je vais peut-être la structurer ainsi : « Demande d’implémentation d’un mode sombre afin de réduire la fatigue oculaire lors d’une utilisation nocturne ». Cela couvre les points importants sans détails superflus. Je vais vérifier si cela respecte la limite de caractères. Oui, ça semble bon. Résumé : demande de mise en place d’un mode sombre afin de réduire la fatigue oculaire causée par une utilisation nocturne prolongée.
Phi-4Le client demande l’ajout d’un mode sombre afin de réduire la fatigue oculaire lors de l’utilisation nocturne du produit.
ModèleSimilaritéPertinenceFondementJetons d’entréeJetons de sortieLatence
GPT-4.1100 %75 %100 %57181 286 ms
DeepSeek-R150%0 %25 %491281 946 ms
Phi-4100 %75 %100 %5820899 ms

Similarité

Évaluez dans quelle mesure la sortie de chaque modèle correspond au résumé attendu. Le tableau ci-dessous indique les scores de pertinence pour chaque modèle.

ModèleScore de similarité
GPT-4.1100 %
DeepSeek-R150%
Phi-4100 %

Bien que tous les modèles aient inclus le contenu clé de l’entrée, le score de similarité de DeepSeek-R1 est à nouveau nettement inférieur en raison de ses commentaires internes détaillés.

Pertinence

Évaluez dans quelle mesure chaque modèle rend compte de l’intention principale de l’entrée. Le tableau ci-dessous indique les scores de pertinence pour chaque modèle.

ModèleScore de pertinence
GPT-4.175 %
DeepSeek-R10 %
Phi-475 %

GPT-4.1 et Phi-4 ont tous deux saisi l’intention principale de la demande de l’utilisateur : la nécessité d’un mode sombre pour réduire la fatigue oculaire et améliorer l’ergonomie de nuit. DeepSeek-R1 a obtenu un score de pertinence de 0 % en raison de ses commentaires internes détaillés qui détournaient l’attention de la sortie effective.

Fondement

Évaluez si la sortie de chaque modèle reste fidèle à l’entrée sans introduire d’informations non prises en charge. Le tableau ci-dessous indique les scores de pertinence pour chaque modèle.

ModèleScore d’ancrage
GPT-4.1100 %
DeepSeek-R125 %
Phi-4100 %

DeepSeek-R1 a obtenu un score inférieur en raison de son bloc <think> détaillé, qui comprenait un raisonnement spéculatif non présent dans l’entrée d’origine.

Enregistrer la configuration

Une fois vos évaluations terminées, la dernière étape consiste à choisir le modèle qui offre les meilleures performances pour votre cas d’utilisation spécifique. Dans les exemples ci-dessus, Phi-4 et GPT-4.1 ont obtenu des résultats solides et cohérents auprès de tous les évaluateurs. DeepSeek-R1 a obtenu un score inférieur en raison de son raisonnement détaillé et de ses sorties moins ciblées.

Une fois que vous avez sélectionné votre modèle préféré et la configuration de prompt, ajoutez un nom descriptif au fichier prompt, puis cliquez sur Commiter les modifications. Cela enregistrera le modèle, le prompt, les paramètres et le jeu de données associé dans un fichier de configuration réutilisable dans votre référentiel.

Capture d’écran du bouton de validation des modifications. Le bouton « Commiter les modifications » est mis en surbrillance.

En commitant votre configuration de prompt, vous facilitez la réutilisation, la collaboration et l’itération entre les configurations de modèles. La réexécution des évaluations et le suivi des performances de la configuration de prompt au fil du temps sont ainsi simplifiés.

Pour aller plus loin