After migrating your assets, you must manually modify the score()
of Python functions to be compatible with V4 APIs. The is because the input for the score
function is the scoring payload
data and the schema of v4 API's scoring payload is changed from the format used in the v3 APIs. Similarly, you must update the output of the score response to be in V4's scoring response format.
Follow these steps to update your Python function.
Migrate the Python function from a V3 to V4 asset
Download the Python function content from the Watson Machine Language repository
Modify the Python function code related to score()
.
Re-package the function and upload the attachment back to the corresponding /v4/functions asset.
Deploy the Python function.
Update the scoring payload using these examples as a guide to the new format.
{
"fields": ["GENDER", "AGE", "PROFESSION"],
"values": [
["M", 27, "Professional"],
["F", 56, "Hospitality"]
]
}
{
"input_data": [{
"fields": [ "GENDER", "age", "PROFESSION"],
"values": [
["M", 23, "student"],
["F", 33, "engineer"]
]
}]
}
{
"fields": ["prediction", "predicted_label"],
"values": [
[0, "Camping Equipment"],
[0, "Camping Equipment"]
]
}
{
"predictions": [{
{
"fields": ["prediction", "predicted_label"],
"values": [
[0, "Camping Equipment"],
[0, "Camping Equipment"]
]
}
}]
}