Sie können Auswertungen des Modellzustandsmonitors konfigurieren, die Ihnen helfen, das Verhalten und die Leistung Ihres Modells zu verstehen. Mithilfe von Modellzustandsmetriken können Sie ermitteln, wie effizient Ihre Modellbereitstellung Ihre Transaktionen verarbeitet.
Bewertungen des Modellzustands sind standardmäßig für Bewertungen von Modellen für maschinelles Lernen in der Produktion und für alle Arten von generativen KI-Assets aktiviert. Wenn Modellzustandsauswertungen aktiviert sind, wird ein Modellzustandsdataset im Datamart für den von Ihnen verwendeten Service erstellt. Das Dataset 'Modellzustand' speichert Details zu Ihren Scoring-Anforderungen, die zum Berechnen von Modellzustandsmetriken verwendet werden.
Zum Konfigurieren von Auswertungen des Modellzustandsmonitors können Sie Schwellenwerte für jeden Messwert festlegen, wie im folgenden Beispiel gezeigt:
Modellzustandsbewertungen für Vorproduktions- und Batch-Bereitstellungen werden für Bereitstellungen von Modellen für maschinelles Lernen nicht unterstützt.
Unterstützte Modellzustandsmetriken
Die folgenden Kategorien von Metriken für die Bewertung der Modellgesundheit werden unterstützt. Jede Kategorie enthält Metriken, die Details zur Modellleistung bereitstellen.
Auswertungen der Modellzustandsüberwachung unterstützen die folgenden Messwerte:
Scoring-Anforderungen
Die Auswertungen der Modellzustandsüberwachung berechnen die Anzahl der Scoring-Anforderungen, die Ihre Modellbereitstellung empfängt.
- Unterstützte Modelle: maschinelles Lernen und LLMs
Aufzeichnungen
Die Auswertungen der Modellzustandsüberwachung berechnen die Gesamtzahl, Durchschnitt, Minimum, Maximumund Median der Transaktionsdatensätze, die über Scoring-Anforderungen hinweg verarbeitet werden.
- Unterstützte Modelle: maschinelles Lernen und LLMs
Durchsatz und Latenzzeit
Die Auswertungen der Modellzustandsüberwachung berechnen die Latenzzeit, indem sie die Zeit verfolgen, die zur Verarbeitung von Scoring-Anforderungen und Transaktionsdatensätzen pro Millisekunde (ms) benötigt wird. Der Durchsatz wird berechnet, indem die Anzahl der pro Sekunde verarbeiteten Scoring-Anforderungen und Transaktionsdatensätze verfolgt wird.
Zur Berechnung von Durchsatz und Latenzzeit wird der Wert response_time
aus Ihren Scoring-Anforderungen verwendet, um die Zeit zu verfolgen, die Ihre Modellbereitstellung für die Verarbeitung von Scoring-Anforderungen benötigt.
Bei watsonx.ai Runtime-Einsätzen wird der Wert ' response_time
automatisch erkannt, wenn Sie die Auswertungen konfigurieren.
Bei externen und benutzerdefinierten Bereitstellungen müssen Sie den Wert " response_time
angeben, wenn Sie Scoring-Anfragen senden, um Durchsatz und Latenz zu berechnen, wie im folgenden Beispiel aus dem Python gezeigt:
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>)
]
)
Die folgenden Metriken werden berechnet, um den Gedanken und die Latenz bei Auswertungen zu messen:
- API-Latenzzeit: Die zum Verarbeiten einer Scoring-Anforderung durch Ihre Modellbereitstellung benötigte Zeit (in ms).
- API-Durchsatz: Anzahl der Scoring-Anforderungen, die von Ihrer Modellbereitstellung pro Sekunde verarbeitet werden
- Datensatzlatenz: Die Zeit (in Millisekunden), die für die Verarbeitung eines Datensatzes durch Ihre Modellbereitstellung benötigt wird.
- Datensatzdurchsatz: Anzahl der Datensätze, die von Ihrer Modellbereitstellung pro Sekunde verarbeitet werden
Der durchschnittliche, maximale, mediane und minimale Durchsatz und die Latenzzeit für Scoring-Anforderungen und Transaktionsdatensätze werden während der Auswertungen des Modellzustandsmonitors berechnet.
- Unterstützte Modelle: maschinelles Lernen und LLMs
Nutzdatengröße
Die Summe, Durchschnitt, Minimum, Maximumund Median Nutzdatengröße der Transaktionsdatensätze, die Ihre Modellbereitstellung über Scoring-Anforderungen in Kilobyte (KB) verarbeitet, wird während der Auswertungen des Modellzustandsmonitors berechnet. Metriken für die Nutzdatengröße für Imagemodelle werden nicht unterstützt. Metriken für die Nutzdatengröße werden nur für traditionelle Modelle berechnet.
- Unterstützte Modelle: Maschinelles Lernen
Benutzer
Auswertungen der Modellzustandsüberwachung berechnen die Anzahl der Benutzer, die Scoring-Anforderungen an Ihre Modellbereitstellungen senden.
Um die Anzahl der Benutzer zu berechnen, wird user_id
aus Scoring-Anforderungen verwendet, um die Benutzer zu identifizieren, die die Scoring-Anforderungen senden, die Ihr Modell empfängt.
Bei watsonx.ai Runtime-Einsätzen wird der Wert ' user_id
automatisch erkannt, wenn Sie die Auswertungen konfigurieren.
Bei externen und benutzerdefinierten Bereitstellungen müssen Sie den Wert " user_id
angeben, wenn Sie Scoring-Anfragen senden, um die Anzahl der Benutzer zu berechnen, wie im folgenden Beispiel aus dem Python gezeigt:
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
]
)
Wenn Sie eine Auswertungszusammenfassung für die Metrik Benutzer überprüfen, können Sie die Echtzeitansicht verwenden, um die Gesamtzahl der Benutzer anzuzeigen, und die zusammengefassten Ansichten, um die durchschnittliche Anzahl der Benutzer anzuzeigen.
- Unterstützte Modelle: maschinelles Lernen und LLMs
Tokenanzahl
Wenn Sie Watsonx.governanceverwenden, berechnen Auswertungen des Modellzustandsmonitors die Anzahl der Tokens, die in Scoring-Anforderungen für Ihre Modellbereitstellung verarbeitet werden. Diese Metrikkategorie wird nur für Basismodelle unterstützt.
Watsonx.governance berechnet die folgenden Metriken zum Messen der Tokenanzahl während der Auswertungen:
Anzahl der Eingabetoken: Berechnet die Anzahl der Eingabetoken total, average, minimum, maximumund median für mehrere Scoring-Anforderungen während Auswertungen.
Anzahl der Ausgabetoken: Berechnet die Anzahl der Ausgabetoken total, average, minimum, maximumund median für Scoring-Anforderungen während Auswertungen.
Unterstützte Modelle: LLMs
Um benutzerdefinierte Token-Anzahl-Metriken zu berechnen, müssen Sie die Felder generated_token_count
und input_token_count
angeben, wenn Sie Scoring-Anfragen mit dem Python SDK senden, um die Eingabe- und Ausgabe-Token-Anzahl-Metriken zu berechnen, wie im folgenden Beispiel gezeigt:
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
]
)