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.
Lorsque les évaluations de l'état du modèle sont activées, un ensemble de données sur l'état du modèle est créé dans le datamart. L'ensemble de données sur la santé du modèle stocke les détails de vos demandes de notation qui sont utilisés pour calculer les mesures 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:
Les évaluations de l'état des modèles ne sont pas prises en charge pour les déploiements de pré-production.
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:
Taille de charge
La taille totale, moyenne, minimale, maximale et médiane de la charge utile des enregistrements de transaction que votre modèle de déploiement traite dans le cadre des requêtes de notation est calculée en kilo-octets (Ko). Les mesures de la taille de la charge utile pour les modèles d'image ne sont pas prises en charge.
Enregistrements
Le nombre total, moyen, minimum, maximum et médian d'enregistrements de transactions traités dans le cadre des demandes de notation est calculé lors des évaluations de l'état de santé du modèle.
Demandes d'évaluation
Le nombre de demandes de notation que votre déploiement de modèle reçoit lors des évaluations de l'état de santé du modèle est calculé.
Débit et temps d'attente
La latence est calculée en mesurant le temps nécessaire pour traiter les demandes de notation et les enregistrements de transactions 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 la latence, la valeur response_time
de vos demandes de notation est utilisée pour suivre le temps nécessaire au déploiement de votre modèle pour traiter les demandes de notation.
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 paramètres suivants sont calculés pour mesurer le débit et la latence pendant les é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 la latence moyens, maximums, médians et minimums pour les demandes de notation et les enregistrements de transactions sont calculés.
Utilisateurs
Le nombre d'utilisateurs qui envoient des demandes de notation à vos déploiements de modèles est calculé.
Pour calculer le nombre d'utilisateurs, l'user_id
des demandes de notation est utilisé pour identifier les utilisateurs qui envoient les demandes de notation 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 consultez les résultats de la mesure Utilisateurs, utilisez 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. Pour plus d'informations, voir Examen des résultats de santé du modèle.