03
Définir des échantillons et des critères qui permettent une comparaison
Une évaluation réutilisable sépare la fonction testée, les entrées, les attentes et le jugement porté sur la sortie. Si ces éléments sont mélangés dans un test monolithique, une modification de consigne peut changer silencieusement la population évaluée ou la règle utilisée pour noter le résultat. Cette confusion rend les comparaisons peu fiables.
Constituez un jeu d’exemples représentatif des usages prévus et des erreurs que le produit doit éviter. Pour une fonction de génération, les entrées devraient couvrir des demandes ordinaires, des demandes incomplètes et des cas où la consigne doit empêcher une réponse non souhaitée. Pour une classification, décrivez les catégories attendues et les cas ambigus. Pour un appel d’outil, évaluez la pertinence de l’appel et la qualité des arguments, sans confondre la décision du modèle avec l’exécution réelle de l’outil.
La quantité d’exemples ne garantit pas à elle seule la pertinence. Un petit ensemble peut servir au contrôle rapide d’une modification, mais il ne permet pas nécessairement de tirer une conclusion sur l’ensemble des usages. La documentation Apple sur la conception d’évaluations efficaces fournit les principes à appliquer pour organiser une évaluation ; la sélection des exemples doit ensuite être adaptée aux erreurs et aux usages observés dans le produit.
Distinguez les indicateurs calculables de ceux qui demandent un jugement qualitatif. Un indicateur automatisable doit avoir une définition stable et un lien direct avec un risque ou un objectif produit : par exemple, la présence d’une information requise, le respect d’un format ou la capacité à éviter une catégorie de sortie interdite. Une appréciation qualitative peut porter sur la clarté, la pertinence ou la qualité d’une réponse, mais elle doit être accompagnée de critères concrets afin que les personnes chargées de la revue ne notent pas selon des attentes différentes.
Versionnez séparément le code, le jeu d’entrées, les consignes et les critères. Pour chaque exécution, il doit être possible d’identifier la révision logicielle et les données auxquelles le rapport correspond. Cela évite de comparer une nouvelle consigne sur un ensemble modifié à un ancien résultat sans le signaler. Cela évite aussi d’attribuer à une modification de code un écart qui vient en réalité d’un changement de données ou de règle de notation.
Une note agrégée masque parfois le cas qui importe le plus : conservez les résultats par échantillon et reliez-les à leur entrée, à la consigne et au critère appliqué.
Si l’équipe utilise un modèle comme évaluateur, définissez précisément le rôle qui lui est confié et contrôlez ses limites. La documentation Apple sur la conception des évaluateurs de modèles concerne cette conception ; elle ne transforme pas l’évaluation automatisée en vérité de référence. Les cas sensibles, les sorties contestées et les évolutions qui affectent un usage important doivent rester accessibles à une revue humaine.