Sie können die Nutzlastprotokollierung aktivieren, um Modellauswertungen zu konfigurieren.
Um ' nutzdaten verwalten für die Konfiguration von Fairness- und Driftauswertungen und die Erklärbarkeit zu nutzen, müssen Sie Ihre Nutzlastdaten im Data Mart protokollieren. Wenn Sie Einsätze für Auswertungen hinzufügen oder Modelldetails bereitstellen, können Sie automatisch eine Bewertungsanfrage senden, um Ihre Modelltransaktionen zu protokollieren, wenn alle erforderlichen Modelldetails erkannt werden. Wenn nicht alle erforderlichen Modelldetails erkannt werden oder wenn Sie Bild- oder unstrukturierte Textmodelle auswerten, müssen Sie die Nutzlastprotokollierung manuell aktivieren.
Manuelle Nutzdatenprotokollierung
Zum Aktivieren der Nutzdatenprotokollierung können Sie die API für Nutzdatenprotokollierung oder eine JSON-Datei verwenden, um eine Scoring-Anforderung zu senden. Wenn Sie die Nutzlastprotokollierungs-API verwenden, können Sie Scoring-Anfragen mit cURL oder mit dem Python SDK senden.
Nutzdatenprotokollierung mit dem Python SDK
Sie können mit dem Python SDK eine Bewertungsanfrage senden, wie im folgenden Beispiel gezeigt:
from ibm_cloud_sdk_core.authenticators import IAMAuthenticator
from ibm_watson_openscale import APIClient
service_credentials = {
"apikey": "*****",
"url": "https://api.aiopenscale.cloud.ibm.com"
}
authenticator = IAMAuthenticator(
apikey=service_credentials['apikey']
)
client = APIClient(
service_url=service_credentials['url'],
service_instance_id="230a8e9f-2453-4c2d-a560-2a75399210bf"
authenticator=authenticator
)
from ibm_watson_openscale.data_sets import DataSetTypes, TargetTypes
# Put your subscription ID here
SUBSCRIPTION_ID = "<subscription_id>"
payload_logging_data_set_id = wos_client.data_sets.list(type=DataSetTypes.PAYLOAD_LOGGING, target_target_id=SUBSCRIPTION_ID, target_target_type=TargetTypes.SUBSCRIPTION).result.data_sets[0].metadata.id
from ibm_watson_openscale.supporting_classes.payload_record import PayloadRecord
# Put your scoring ID here
SCORING_ID = "<scoring_id>"
REQUEST_DATA = <put_your_data_here>
RESPONSE_DATA = <put_your_data_here>
wos_client.data_sets.store_records(data_set_id=payload_logging_data_set_id, request_body=[PayloadRecord(scoring_id=SCORING_ID, request=REQUEST_DATA, response=RESPONSE_DATA, response_time=460)])
Nutzdatenprotokollierung mit cURL
Mit dem folgenden cURL -Befehl können Sie eine Scoring-Anforderung senden:
curl -k -X POST https://$ICP_HOSTNAME:$PORT/openscale/00000000-0000-0000-0000-000000000000/v2/data_sets/<dataset_id>/records -d "$SCORING_PAYLOAD" \
--header 'Content-Type: application/json' --header 'Accept: application/json' --header "Authorization: Bearer $ICP_TOKEN"
Weitere Informationen finden Sie in der API.
Nutzdatenprotokollierung mit JSON
Sie können eine Scoring-Anforderung mit JSON wie im folgenden Beispiel gezeigt senden:
[
{
"request": {
"fields": [
"AGE",
"BP",
"CHOLESTEROL",
"NA",
"K"
],
"values": [
[
28,
"LOW",
"HIGH",
0.61,
0.026
]
],
"meta": {
"fields": [
"SEX"
],
"values": [
[
"M"
]
]
}
},
"response": {
"fields": [
"AGE",
"BP",
"CHOLESTEROL",
"NA",
"K",
"probability",
"prediction",
"predictedLabel"
],
"values": [
[
28,
"LOW",
"HIGH",
0.61,
0.026,
[
0.82,
0.07,
0,
0.05,
0.03
],
0,
"drugY"
]
]
}
}
]
Übergeordnetes Thema: Nutzdaten in Watson OpenScale