Create custom inference models¶
Custom inference models are user-created, pretrained models that you can upload to DataRobot (as a collection of files) via the Custom Model Workshop. You can then upload a model artifact to create, test, and deploy custom inference models to DataRobot's centralized deployment hub.
You can assemble custom inference models in either of the following ways:
Create a custom model and include web server Scoring Code and a
start_server.shfile in the model's folder. This type of custom model can be paired with a custom or drop-in environment.
Create a custom model without providing web server Scoring Code and a
start_server.shfile. This type of custom model must use a drop-in environment. Drop-in environments contain the web server Scoring Code and a
start_server.shfile used by the model. They are provided by DataRobot in the Workshop. You can also create your own drop-in custom environment.
Be sure to review the guidelines for assembling a custom model before proceeding. If any files overlap between the custom model and the environment folders, the model's files will take priority.
Once a custom model's file contents are assembled, you can test the contents locally for development purposes before uploading it to DataRobot. After you create a custom model in the Workshop, you can run a testing suite from the Assemble tab.
Create a new custom model¶
To create a custom model, navigate to Model Registry > Custom Model Workshop and select the Models tab. This tab lists the models you have created. Click Add new model.
In the Add Custom Inference Model window, enter the fields described in the table below:
Element Description Model name Name the custom model. Target type / Target name Select the target type (binary classification, regression, multiclass, anomaly detection, or unstructured) and enter the name of the target feature. Positive class label / Negative class label These fields only display for binary classification models. Specify the value to be used as the positive class label and the value to be used as the negative class label.
For a multiclass classification model, these fields are replaced by a field to enter or upload the target classes in
Click Show Optional Fields and, if necessary, enter a prediction threshold, the coding language used to build the model, and a description.
After completing the fields, click Add Custom Model.
In the Assemble tab, under Model Environment on the right, select a model environment by clicking the Base Environment dropdown menu on the right and selecting an environment. The model environment is used for testing and deploying the custom model.
The Base Environment pulldown menu includes drop-in model environments, if any exist, as well as custom environments that you can create.
Under Model on the left, add content by dragging and dropping files or browsing. Alternatively, select a remote integrated repository.
If you click Browse local file, you have the option of adding a Local Folder. The local folder is for dependent files and additional assets required by your model, not the model itself. Even if the model file is included in the folder, it will not be accessible to DataRobot unless the file exists at the root level. The root file can then point to the dependencies in the folder.
You must also upload web server Scoring Code and a
start_server.shfile to your model's folder unless you are pairing the model with a drop-in environment.
You can create custom inference models that support anomaly detection problems. If you choose to build one, reference the DRUM template. (Log in to GitHub before clicking this link.) When deploying custom inference anomaly detection models, note that the following functionality is not supported:
- Data drift
- Accuracy and association IDs
- Challenger models
- Humility rules
- Prediction intervals