Public preview R client v2.29¶
Now available for public preview, DataRobot has released version 2.29 of the R client. This version brings parity between the R client and version 2.29 of the Public API. As a result, it introduces significant changes to common methods and usage of the client. These changes are encapsulated in a new library (in addition to the datarobot library): datarobot.apicore, which provides auto-generated functions to access the Public API. The datarobot package provides a number of "API wrapper functions" around the apicore package to make it easier to use.
In addition to the release notes outlined below, reference the public preview documentation for an overview of the functions introduced with v2.29.
Feature overview¶
New API Functions:
- Generated API wrapper functions are organized into categories based on their tags from the OpenAPI specification.
- These functions use camel-cased argument names to be consistent with the rest of the package.
- Most function names follow a
VerbObjectpattern based on the OpenAPI specification. - Some function names match "legacy" functions that existed in v2.18 of the R Client if they invoked the same underlying endpoint. For example, the wrapper function is called
GetModel, notRetrieveProjectsModels, since the latter is what was implemented in the R client for the endpoint/projects/{mId}/models/{mId}. - Similarly, these functions use the same arguments as the corresponding "legacy" functions to ensure DataRobot does not break existing code that calls those functions.
- Added the
DownloadDatasetAsCsvfunction to retrieve dataset as CSV usingcatalogId. - Added the
GetFeatureDiscoveryRelationshipsfunction to get the feature discovery relationships for a project.
Other new features:
- The R client (both
datarobotanddatarobot.apicorepackages) will output a warning when you attempt to access certain resources (projects, models, deployments, etc.) that are deprecated or disabled by the DataRobot platform migration to Python 3. - Added the helper function
EditConfigthat allows you to interactively modify drconfig.yaml.
Many prominent features introduced in datarobot.apicore are listed below.
| Feature | Method name |
|---|---|
| Visual AI image learning | datarobot.apicore::ImagesApi |
| Location AI | datarobot.apicore::InsightsApi |
| Data Quality Assessment | datarobot::RetrieveModelingFeatures() |
| SHAP insights | datarobot.apicore::InsightsApi |
| Segment analysis for service health | datarobot::ListDeploymentSettings() |
| Model package replacement | datarobot.apicore::DeploymentsApi$DeploymentsModelPatchMany() |
| Download Scoring Code from deployments | datarobot::ListDeploymentsScoringCode() |
| Challenger Models | datarobot::RetrieveDeploymentsChallengers() |
| Feature Discovery | datarobot.apicore::ProjectsApi |
| Bias and Fairness | datarobot::ListProjectsModelsFairnessInsights() |
| Prediction environments | datarobot.apicore::DeploymentsApi |
| Visual AI image augmentation | datarobot.apicore::ImagesApi |
| Batch prediction cloud connectors | datarobot.apicore::PredictionsApi |
| Feature Discovery Snowflake integration | datarobot.apicore::ProjectsApi |
| DataRobot Pipelines | datarobot.apicore::DataConnectivityApi |
| Composable ML project linking and bulk training | datarobot.apicore::BlueprintsApi, datarobot.apicore::CustomTasksApi |
| Clustering | datarobot.apicore::InsightsApi |
| Multilabel classification | datarobot.apicore::ProjectsApi, datarobot.apicore::InsightsApi |
| Automated Retraining | datarobot.apicore::DeploymentsApi |
| Bias Mitigation functionality | datarobot.apicore::ModelsApi |
| “Uncensored” blueprints | datarobot.apicore::BlueprintsApi |
| Scoring Code in Snowflake | datarobot::ListDeploymentsScoringCode() |
| Segmented modeling for multiseries projects | datarobot.apicore::ModelsApi |
| Time series data prep | datarobot.apicore::AiCatalogApi |
| Scoring Code for time series | datarobot.apicore::ModelsApi, datarobot.apicore::DeploymentsApi |
Enhancements¶
- The function
RequestFeatureImpactnow accepts arowCountargument, which will change the sample size used for Feature Impact calculations. - The internal helper function
ValidateModelwas renamed toValidateAndReturnModeland now works with model classes from theapicorepackage. - The
quickrunargument has been removed from the functionSetTarget. Setmode = AutopilotMode.Quickinstead. - Removed files (code, tests, doc) representing parts of the Public API not present in v2.27-2.29.
Bugfixes¶
- The enum
ModelCapabilityhas been properly exported. - Fixed
FullAverageDatasetfunction in the PartialDependence vignette to ignoreNAwhen calculating theminandmaxof the data range. - Fixed
RetrieveAutomatedDocumentsfunction to accept filename argument that is used to specify where to save the automated document. - Fixed
datarobot.apicorefile upload functions to properly encode the payload as "multipart". - Fixed
datarobot.apicoreJSON serialization bugs. - Fixed tests exercising the
BuildPathhelper function.
Dependency changes¶
- The
datarobotpackage is now dependent on R >= 3.5 due to changes in the updated "Introduction to DataRobot" vignette. - Added dependency on
AmesHousingpackage for updated "Introduction to DataRobot" vignette. - Removed dependency on
MASSpackage. - Client documentation is now explicitly generated with Roxygen2 v7.2.1.
Documentation changes¶
- Package-level documentation for both packages has been updated to explain how to use package options.
- Updated "Introduction to DataRobot" vignette to use Ames, Iowa housing data instead of Boston, Massachusetts housing dataset.
- Compressed
extdata/Friedman1.csvand updated vignettes dependent on that dataset. - Removed
extdata/anomFrame.csvas it was unused.
Deprecations and deletions¶
Review the breaking changes introduced in version 2.29:
- The
quickrunargument has been removed from the function SetTarget. Setmode = AutopilotMode.Quickinstead. -
The Transferable Models functions have been removed. Note that the underlying endpoints were also removed from the Public API with the removal of the Standalone Scoring Engine (SSE). The affected functions are listed below:
ListTransferableModelsGetTransferableModelRequestTransferableModelDownloadTransferableModelUploadTransferableModelUpdateTransferableModelDeleteTransferableModel
Review the deprecations introduced in version 2.29:
- Compliance Documentation API is deprecated. Instead use the Automated Documentation API.
Installation¶
The following sections outline how to install v2.29 of DataRobot's R client.
Prerequisites¶
Install the client's dependencies:
install.packages("jsonlite")
install.packages("httr")
install.packages("R6")
Install the package¶
library(remotes)
install_github("datarobot/rsdk", subdir = "datarobot.apicore", ref = github_release())
install_github("datarobot/rsdk", subdir = "datarobot", ref = github_release())
Usage¶
library(datarobot) # This will load the datarobot.apicore package as well
Configuration options¶
The datarobot.apicore package can be configured in the following ways with the following options (using getOption() and setOption()):
datarobot.apicore.returnS3 is a boolean that, if TRUE, will return all API responses to the caller as S3 objects. If FALSE, the responses are returned as R6 objects. The default configuration is TRUE.
To work with R6 objects, run the following snippet:
options('datarobot.apicore.returnS3 = FALSE')