0 / 0
Retourner à la version anglaise de la documentation
Évaluations du moniteur de santé de modèle
Dernière mise à jour : 05 déc. 2024
Évaluations du moniteur de santé de modèle

Vous pouvez configurer les évaluations du moniteur de santé du modèle pour vous aider à comprendre le comportement et les performances de votre modèle. Vous pouvez utiliser des métriques de santé de modèle pour déterminer l'efficacité avec laquelle votre déploiement de modèle traite vos transactions.

Les évaluations de l'état des modèles sont activées par défaut pour les évaluations de modèles d'apprentissage automatique en production et pour tous les types de déploiements d'actifs d'IA générative. Lorsque les évaluations de santé de modèle sont activées, un jeu de données de santé de modèle est créé dans le magasin de données pour le service que vous utilisez. L'ensemble de données de santé du modèle stocke des détails sur vos demandes de scoring qui sont utilisées pour calculer les métriques de santé du modèle.

Pour configurer les évaluations du moniteur de santé de modèle, vous pouvez définir des valeurs de seuil pour chaque métrique, comme illustré dans l'exemple suivant:

Configuration des évaluations du moniteur de santé de modèle

Les évaluations de l'état des modèles pour la pré-production et les déploiements par lots ne sont pas prises en charge pour les déploiements de modèles d'apprentissage automatique.

Métriques de santé de modèle prises en charge

Les catégories de mesures suivantes sont prises en charge pour l'évaluation de la santé du modèle. Chaque catégorie contient des métriques qui fournissent des détails sur les performances de votre modèle.

Les évaluations du moniteur de santé de modèle prennent en charge les mesures suivantes:

Demandes d'évaluation

Les évaluations du moniteur de santé de modèle calculent le nombre de demandes d'évaluation que votre déploiement de modèle reçoit.

  • Modèles pris en charge: apprentissage automatique et LLM

Enregistrements

Les évaluations de moniteur de santé de modèle calculent le total, la moyenne, minimum, maximumet la valeur médiane du nombre d'enregistrements de transaction traités dans les demandes d'évaluation.

  • Modèles pris en charge: apprentissage automatique et LLM

Débit et temps d'attente

Les évaluations du moniteur de santé de modèle calculent le temps d'attente en suivant le temps nécessaire au traitement des demandes d'évaluation et des enregistrements de transaction par milliseconde (ms). Le débit est calculé en suivant le nombre de demandes d'évaluation et d'enregistrements de transaction traités par seconde.

Pour calculer le débit et le temps d'attente, la valeur response_time de vos demandes d'évaluation est utilisée pour suivre le temps que prend votre déploiement de modèle pour traiter les demandes d'évaluation.

Pour les déploiements de watsonx.ai Runtime, la valeur 'response_time est automatiquement détectée lorsque vous configurez les évaluations.

Pour les déploiements externes et personnalisés, vous devez spécifier la valeur " response_time lorsque vous envoyez des requêtes d'évaluation pour calculer le débit et la latence, comme le montre l'exemple suivant tiré du SDKPython:

    from ibm_watson_openscale.supporting_classes.payload_record import PayloadRecord            
        client.data_sets.store_records(
        data_set_id=payload_data_set_id, 
        request_body=[
        PayloadRecord(
            scoring_id=<uuid>,
            request=openscale_input,
            response=openscale_output,
            response_time=<response_time>,  
            user_id=<user_id>)
                    ]
        ) 

Les métriques suivantes sont calculées pour mesurer la réflexion et le temps d'attente lors des évaluations:

  • Temps d'attente de l'API: Temps nécessaire (en ms) pour traiter une demande d'évaluation par votre déploiement de modèle.
  • Débit de l'API: nombre de demandes d'évaluation traitées par votre déploiement de modèle par seconde
  • Temps d'attente d'enregistrement: Temps nécessaire (en ms) pour traiter un enregistrement par votre déploiement de modèle
  • Débit d'enregistrement: nombre d'enregistrements traités par votre déploiement de modèle par seconde

Le débit et le temps d'attente moyens, maximaux, médians et minimaux pour les demandes d'évaluation et les enregistrements de transaction sont calculés lors des évaluations du moniteur de santé du modèle.

  • Modèles pris en charge: apprentissage automatique et LLM

Taille de contenu

La taille totale, moyenne, minimale, maximaleet médiane de la charge utile des enregistrements de transaction que votre déploiement de modèle traite dans les demandes d'évaluation en kilooctets (ko) est calculée lors des évaluations du moniteur de santé de modèle. Les métriques de taille de contenu pour les modèles d'image ne sont pas prises en charge. Les métriques de taille de contenu sont calculées pour les modèles traditionnels uniquement.

  • Modèles pris en charge: apprentissage automatique

Utilisateurs

Les évaluations du moniteur de santé de modèle calculent le nombre d'utilisateurs qui envoient des demandes d'évaluation à vos déploiements de modèle.

Pour calculer le nombre d'utilisateurs, le user_id des demandes d'évaluation est utilisé pour identifier les utilisateurs qui envoient les demandes d'évaluation que votre modèle reçoit.

Pour les déploiements de watsonx.ai Runtime, la valeur 'user_id est automatiquement détectée lorsque vous configurez les évaluations.

Pour les déploiements externes et personnalisés, vous devez spécifier la valeur " user_id lorsque vous envoyez des requêtes de scoring pour calculer le nombre d'utilisateurs, comme le montre l'exemple suivant tiré du SDKPython:

    from ibm_watson_openscale.supporting_classes.payload_record import PayloadRecord    
        client.data_sets.store_records(
            data_set_id=payload_data_set_id, 
            request_body=[
                PayloadRecord(
                    scoring_id=<uuid>,
                    request=openscale_input,
                    response=openscale_output,
                    response_time=<response_time>,
                    user_id=<user_id>). --> value to be supplied by user 
            ]
        ) 

Lorsque vous passez en revue un récapitulatif d'évaluation pour l'indicateur Utilisateurs , vous pouvez utiliser la vue en temps réel pour voir le nombre total d'utilisateurs et les vues agrégées pour voir le nombre moyen d'utilisateurs.

  • Modèles pris en charge: apprentissage automatique et LLM

Nombre de jetons

Si vous utilisez Watsonx.governance, les évaluations du moniteur de santé de modèle calculent le nombre de jetons traités dans les demandes d'évaluation pour votre déploiement de modèle. Cette catégorie de métrique est prise en charge uniquement pour les modèles de base.

Watsonx.governance calcule les métriques suivantes pour mesurer le nombre de jetons lors des évaluations:

  • Nombre de jetons d'entrée: calcule le total, la moyenne, le minimum, le maximumet la médiane du nombre de jetons d'entrée dans plusieurs demandes d'évaluation au cours des évaluations.

  • Nombre de jetons de sortie: calcule le total, la moyenne, le minimum, le maximumet la médiane du nombre de jetons de sortie dans les demandes de scoring au cours des évaluations.

  • Modèles pris en charge: LLM

Pour calculer des mesures de comptage de jetons personnalisées, vous devez spécifier les champs generated_token_count et input_token_count lorsque vous envoyez des requêtes de notation avec le SDKPython pour calculer les mesures de comptage de jetons en entrée et en sortie, comme le montre l'exemple suivant :

request = {
            "fields": [
                "comment"
            ],
            "values": [
                [
                    "Customer service was friendly and helpful."
                ]
            ]
        }
response = {
            "fields": [
                "generated_text",
                "generated_token_count",
                "input_token_count",
                "stop_reason",
                "scoring_id",
                "response_time"
            ],
            "values": [
                [
                    "1",
                    2,
                    73,
                    "eos_token",
                    "MRM_7610fb52-b11d-4e20-b1fe-f2b971cae4af-50",
                    3558
                ],
                [
                    "0",
                    3,
                    62,
                    "eos_token",
                    "MRM_7610fb52-b11d-4e20-b1fe-f2b971cae4af-51",
                    3778
                ]
            ]
        }

from ibm_watson_openscale.supporting_classes.payload_record import PayloadRecord    
        client.data_sets.store_records(
            data_set_id=payload_data_set_id, 
            request_body=[
                PayloadRecord(
                    scoring_id=<uuid>,
                    request=request,
                    response=response,
                    response_time=<response_time>,
                    user_id=<user_id>). --> value to be supplied by user 
            ]
        ) 

En savoir plus

Recherche et réponse à l'IA générative
Ces réponses sont générées par un modèle de langue de grande taille dans watsonx.ai en fonction du contenu de la documentation du produit. En savoir plus