This package provides a MLServer runtime compatible with Scikit-Learn.
You can install the runtime, alongside mlserver
, as:
pip install mlserver mlserver-sklearn
For further information on how to use MLServer with Scikit-Learn, you can check out this worked out example.
If no content type is present on the request or metadata, the Scikit-Learn runtime will try to decode the payload as a NumPy Array. To avoid this, either send a different content type explicitly, or define the correct one as part of your model's metadata.
The Scikit-Learn inference runtime exposes a number of outputs depending on the
model type.
These outputs match to the predict
, predict_proba
and transform
methods
of the Scikit-Learn model.
Output | Returned By Default | Availability |
---|---|---|
predict |
✅ | Available on most models, but not in Scikit-Learn pipelines. |
predict_proba |
❌ | Only available on non-regressor models. |
transform |
❌ | Only available on Scikit-Learn pipelines. |
By default, the runtime will only return the output of predict
.
However, you are able to control which outputs you want back through the
outputs
field of your {class}InferenceRequest <mlserver.types.InferenceRequest>
payload.
For example, to only return the model's predict_proba
output, you could
define a payload such as:
---
emphasize-lines: 10-12
---
{
"inputs": [
{
"name": "my-input",
"datatype": "INT32",
"shape": [2, 2],
"data": [1, 2, 3, 4]
}
],
"outputs": [
{ "name": "predict_proba" }
]
}