This article introduces you to Batch Prediction API which can be used to score big datasets on deployed DataRobot models. The Python notebook available at the DataRobot Community GitHub provides instructions for getting predictions out of a DataRobot deployed model.
The Batch Prediction API allows you to score huge datasets by taking advantage of the prediction servers you have already deployed. The API is available through the DataRobot Public API and can be consumed by REST-enabled clients or the DataRobot Python Public API bindings. (View the full documentation for the DataRobot Python client package here.)
There are multiple advantages to using the Batch Prediction API:
The Batch Prediction API can intake (ingest) data from the following:
The Batch Prediction API can output (save) data to the following:
When scoring huge datasets, the Batch Prediction API will automatically split the data into chunks and score them concurrently on the prediction instance specified by the deployment. The level of concurrency is a parameter that the user can directly change depending on the case.
The Batch Prediction API does not stop you from using all of the model monitoring capabilities you are used to having when working with DataRobot.
If you have have replaced a deployed model after a job has been queued, DataRobot will still use the deployed model at the time of job creation. This ensures that every row is scored using the same mode, and the results stay consistent.
Documentation for the latest DataRobot Python client is available here.
If you’re a licensed DataRobot customer:
@lhaviland was wondering, where in the API/Docs can I find a reference to the file size limits for input/output and timeout settings?
Hey @chhay ,
Great question! If you have access to the platform documentation - which you can find this on the top right-hand corner when you are logged into DataRobot, you can search for " Batch Prediction API" and you should get the full documentation. Nevertheless, let me try to answer your questions in short:
- There is no input/output limit.
- The maximum runtime (after which it would timeout) is 4 hours for AI Managed Cloud and unlimited for on-premise installations.
Hope this helps!
Hey @Thodoris ,
Can you provide me a link in case I am not looking at the right place? Here's where I have looked and did not see limits referenced at all in the api docs (where I would have hoped to find it).
Batch Predictions API Link: https://datarobot-public-api-client.readthedocs-hosted.com/en/v2.22.1/autodoc/api_reference.html?hig...
DataRobot App Docs: https://app.datarobot.com/docs/reference/large-preds-api.html?highlight=batchprediction
Thanks,
@lhaviland - that's the page I was looking for but couldn't find. Thanks!