DataRobot-Research/drdocs huggingface dataset:
---
title: How-tos
description: Step-by-step instructions to perform tasks within the DataRobot application as well as partners, cloud providers, and 3rd party vendors.

---

# How-tos {: #how-tos }

These sections provide step-by-step instructions to perform tasks within the DataRobot application as well as partners, cloud providers, and 3rd party vendors:

Topic | Describes...
----- | ------
[Alteryx](alteryx) | How to create projects and make predictions without leaving the Alteryx interface.
[AWS](aws/index) | How to integrate DataRobot with Amazon Web Services.
[Azure](azure/index) | How to integrate DataRobot with Azure cloud services.
[Google](google/index) | How to integrate DataRobot with Google Kubernetes and cloud platforms.
[Snowflake](snowflake/index) | How to integrate DataRobot with Snowflake's Data Cloud.
[Tableau extension URL](tableau) | How to modify the Tableau extension configuration to work with DataRobot.
[Android for Scoring Code](android) | How to use DataRobot Scoring Code on Android.
[Apache Spark API for Scoring Code](sc-apache-spark) | How to use the Spark API to integrate DataRobot Scoring Code JARs into Spark clusters.
[DataRobot Provider for Apache Airflow](apache-airflow) | How to use the DataRobot Provider for Apache Airflow to implement a basic [DAG (Directed Acyclic Graph)](https://airflow.apache.org/docs/apache-airflow/stable/core-concepts/dags.html) orchestrating an end-to-end DataRobot AI pipeline.

!!! note
    The Microsoft Excel Add-In was deprecated in June 2022 and was removed from the product in the July 2022 release.
# Feature considerations {: #feature-considerations }

The following sections describe considerations to be aware of when working with DataRobot features:

* [Anomaly detection](anomaly-detection#feature-considerations)
* [Clustering](clustering#feature-considerations)
* [Composable ML](cml-consider)
* [Custom models](custom-models/index#feature-considerations)
* [Data requirements](data/index#feature-considerations)
* [Data Quality Assessment](data-quality#feature-considerations)
* [DataRobot Prime](prime/index#feature-considerations) (Disabled)
* [Deployments (model monitoring and management)](deployment/index#feature-considerations)
* [Eureqa models](eureqa#feature-considerations)
* [Feature Discovery](feature-discovery/index#feature-considerations)
* [Location AI](location-ai/index#feature-considerations)
* [Monotonic modeling](monotonic#feature-considerations)
* [Multiclass modeling](multiclass#feature-considerations)
* [Multilabel modeling](multilabel#feature-considerations)
* [Out of time validation (OTV)](otv#feature-considerations)
* [Prediction Explanations (XEMP and SHAP)](pred-explain/index#feature-considerations)
* [Rating Tables](rating-table#feature-considerations)
* [Time series and multiseries](ts-consider)
* [Visual AI considerations](vai-model#feature-considerations)
# Version 7.1.4 {: #version-714 }

_December 21, 2021_

The DataRobot v7.1.4 release includes some fixed issues in the DataRobot Self-Managed AI Platform platform. See the v7.1.0 release notes for:

* [Features introduced in v7.1.0](v7.1.0-aml)

## Issues fixed in v7.1.4 {: #issues-fixed-in-v714 }

The following issues have been fixed since Enterprise release v7.1.3:

### Enterprise {: #enterprise }

* EP-2133: Updates the Scoring Code build plugins to avoid the inclusion of vulnerable log4j versions.

### Platform {: #platform }

* PLT-5079: Fixes an issue in Azure storage backend affecting the speed prediction data processing for external deployments.

### Custom Models {: #custom-models }

* RAPTOR-6334: Execution environment version responses in the API only include non-null links to the environment version's downloadable artifacts if they are downloadable.
* RAPTOR-7296: Fixes an issue that caused transformed data to be sent to custom models during prediction explanation initialization.

### Predictions {: #predictions }

* CODEGEN-1097: Fixes an issue where unused old JAR files were installed. Now the old JAR files have been removed from the installation.

### Feature Discovery {: #feature-discovery }

* SAFER-4224: Fixes an issue with EDA getting deadlocked when using Python 3 and fork method.

### Time Series {: #time-series }

* TIME-9425: Fixes an issue that caused a blank page when accessing smart-sampled OTV projects with custom backtest settings.

### Trust & Explainability {: #trust-explainability }

* TREX-282: Fixes an issue with a database migration that could cause some models to lose their Lift Chart data during the Self-Managed AI Platform upgrade process.
* TREX-296: Fixes an issue with a database migration that could cause some models to lose their Word Cloud data during the Self-Managed AI Platform upgrade process.

_All product and company names are trademarks&trade; or registered&reg; trademarks of their respective holders. Use of them does not imply any affiliation with or endorsement by them_.
---
title: Anti-Money Laundering (AML) Alert Scoring
description: Build a model that uses historical data, including customer and transactional information, to identify which alerts resulted in a Suspicious Activity Report (SAR).
---

# Anti-Money Laundering (AML) Alert Scoring {: #anti-money-laundering-aml-alert-scoring }

This use case builds a model that uses historical data, including customer and transactional information, to identify which alerts resulted in a Suspicious Activity Report (SAR). The model can then be used to assign a suspicious activity score to future alerts and improve the efficiency of an AML compliance program using rank ordering by score. It is captured below as a UI-based walkthrough. It is also available as a [Jupyter notebook](anti_money_laundering.ipynb) that you can download and execute.


Download the sample training dataset [here](https://s3.amazonaws.com/datarobot-use-case-datasets/DR_Demo_AML_Alert_train.csv).

{% include 'includes/aml-1-include.md' %}

{% include 'includes/aml-2-include.md' %}

{% include 'includes/aml-3-include.md' %}


### No-Code AI Apps {: #no-code-ai-apps }

Consider building a custom application where stakeholders can interact with the predictions and record the outcomes of the investigation. Once the model is deployed, predictions can be consumed for use in the [decision process](#decision-process). For example, this [No-Code AI App](app-builder/index) is an easily shareable, AI-powered application using a no-code interface:

![](images/anti-money-1.png)

![](images/anti-money-2.png)

### Notebook demo {:#notebook-demo}

See the notebook version of this accelerator [here](anti_money_laundering.ipynb).

{% include 'includes/aml-4-include.md' %}
---
title: Model integrity and security
description: What measures does the platform support to assure the integrity and security of AI models?
---

# Model integrity and security {: #model-integrity-and-security }



<span style="color:red;font-size: 1rem"> `Robot 1`</span>

**What measures does the platform support to assure the integrity and security of AI models?**

For example, do we provide adversarial training, reducing the attack surface through security controls, model tampering detection, and model provenance assurance?

<span style="color:red;font-size: 1rem"> `Robot 2`</span>

We have a variety of approaches:

1. While we don’t use adversarial training explicitly, we do make heavy use of tree-based models, such as XGBoost, which are very robust to outliers and adverse examples. These models do not extrapolate, and we fit them to the raw, unprocessed data. Furthermore, since XGBoost only uses the order of the data, rather than the raw values, large outliers do not impact its results, even if those outliers are many orders of magnitude. In our internal testing, we’ve found that XGBoost is very robust to mislabeled data as well. If your raw training data contains outliers and adverse examples, XGBoost will learn how to handle them.

2. All of our APIs are protected by API keys. We do not allow general access, even for predictions. This prevents unauthorized users from accessing anything about a DataRobot model.

3. We do not directly allow user access to model internals, which prevents model tampering. The only way to tamper with models is through point 1, and XGBoost is robust to adverse examples. (Note that rating table models and custom models do allow the user to specify the model, and should therefore be avoided in this case. Rating table models are fairly simple though, and for custom models, we retain the original source code for later review).

4. In MLOPs we provide a full lineage of model replacements and can tie each model back to the project that created it, including the training data, models, and tuning parameters.
<span style="color:red;font-size: 1rem"> `Robot 1`</span>

Do not extrapolate?

<span style="color:red;font-size: 1rem"> `Robot 2`</span>

That is a huge factor in preventing adverse attacks. Most of our models do not extrapolate. 

Take a look at the materials on bias and fairness too. Assessing a model's bias is very closely related to protecting against adverse attacks. Here are the docs on [bias and fairness](b-and-f/index) functionality which include options from the settings when starting a project, model insights, and deployment monitoring.
DataRobot offers portable prediction methods, allowing you to execute prediction jobs outside of the DataRobot application. The portable prediction methods are detailed below:

Method | Description
------ | ------------
[Scoring Code](scoring-code/index) | You can export Scoring Code from DataRobot in Java or Python to make predictions. Scoring Code is portable and executable in any computing environment.  This method is useful for low-latency applications that cannot fully support REST API performance or lack network access.
[Portable Prediction Server](pps/index) | A remote DataRobot execution environment for DataRobot model packages (`MLPKG` files) distributed as a self-contained Docker image.
[DataRobot Prime](prime/index) (Disabled) |  The ability to create new DataRobot Prime models has been removed from the application. This does not affect existing Prime models or deployments.
---
title: Downloads tab
description: Understand how to use the Downloads tab to export models for transfer and download exportable charts.

---


# Downloads tab {: #downloads-tab }

The **Downloads** tab allows you to download model artifacts&mdash;chart/graph PNGs and model data&mdash;in a single ZIP file. To access and download these artifacts, select a model on the **Leaderboard** and click **Predict > Downloads**.

![](images/download-tab-options.png)

!!! note
    The **Downloads** tab previously contained Scoring Code for downloading. Scoring Code is now available from the [Leaderboard](sc-download-leaderboard) or a [deployment](sc-download-deployment). The artifacts available depend on your installation and which features are enabled.


=== "SaaS and Self-Managed"

    **Download Exportable Charts**: Click the **Download** link to download a single ZIP archive containing charts, graphs, and data for the model. Charts and graphs are exported in PNG format; model data is exported in CSV format. To save individual charts and graphs, use the [**Export**](export-results) function.

    !!! note
        If Feature Effects is computed, you can export the chart image for individual features. If you choose to export a ZIP file, you will get all of the chart images and the CSV files for partial dependence and predicted vs. actual data.

=== "Self-Managed"

    **MLOps package**: Download a package for DataRobot MLOps containing all the information needed to create a deployment. To use the model in a separate DataRobot instance, download the model package and upload it to the Model Registry of your other instance.

    Accessing the MLOps package directs you to the **Deploy** tab. From there, you can download your model as a model package file (`MLPKG`). Once downloaded, you can use the model in a separate DataRobot instance by uploading it to the **Model Registry** of your other instance.

    For full details, see the section on [model transfer](reg-transfer).

    !!! info "Availability information"
        DataRobot’s exportable models and independent prediction environment option, which allows a user to export a model from a model building environment to a dedicated and isolated prediction environment, is not available for managed AI Platform deployments.
---
title: Download Scoring Code
description: How to download a deployment’s monitoring agent with Scoring Code.

---

# Download Scoring Code {: #download-scoring-code }

You can download the monitoring agent packaged with [Scoring Code](scoring-code/index) directly from a deployment.

!!! note
    Note that the deployed model must be trained with Scoring Code enabled in order to access the package. Additionally, this package is only compatible with models running at the command line. The package does not support models running on [the Portable Prediction Server.](portable-pps)

After deploying your Scoring Code model, Select **Get Scoring Code** from the [**Actions**](actions-menu) menu to download the Scoring Code JAR file.

In addition to Scoring Code, you can now download a monitoring agent package preconfigured for the deployment. This allows you to quickly integrate the monitoring agent and report model monitoring statistics back to DataRobot. Reference the quickstart guide in the agent tarball for instruction on the initial setup after downloading the package.

If you do not wish to integrate the monitoring agent, instead download just the Scoring Code, available in Source and Binary formats.

![](images/agent-sc-2.png)
---
title: Track ML experiments with MLFlow
description: Automate machine learning experimentation using DataRobot, MLFlow, and Papermill.

---

# Track ML experiments with MLFlow {: #track-ml-experiments-with-mlflow }

[Access this AI accelerator on GitHub <span style="vertical-align: sub">:material-arrow-right-circle:{.lg }</span>](https://github.com/datarobot-community/ai-accelerators/tree/main/advanced-experimentation/MLFLOW){ .md-button }

Experimentation is a mandatory activity in any machine learning developer’s day-to-day activities. For time series projects, the number of parameters and settings to tune for achieving the best model is in itself a vast search space.

Many of the experiments in time series use cases are common and repeatable. Tracking these experiments and logging results is a task that needs streamlining. Manual errors and time limitations may lead to selection of suboptimal models leaving better models lost in global minima.  

The integration of DataRobot API, Papermill, and MLFlow automates machine learning experimentation so that is becomes easier, robust, and easy to share.

As illustrated below, you will use the [orchestration notebook](https://github.com/datarobot-community/ai-accelerators/blob/main/advanced-experimentation/MLFLOW/orchestration_notebook.ipynb) to design and run the [experiment notebook](https://github.com/datarobot-community/ai-accelerators/blob/main/advanced-experimentation/MLFLOW/experiment_notebook.ipynb), with the permutations of parameters handled automatically by DataRobot. At the end of the experiments, copies of the experiment notebook will be available, with the outputs for each permutation for collaboration and reference.

 ![](images/mlflow.png)

You can review [the dependencies](https://github.com/datarobot-community/ai-accelerators/blob/main/advanced-experimentation/MLFLOW/requirements.txt) for the accelerator.

This accelerator covers the following activities:

* Acquiring a training dataset.
* Building a new DataRobot project.
* Deploying a recommended model.
* Scoring via Spark using DataRobot's exportable Java Scoring Code.
* Scoring via DataRobot's Prediction API.
* Reporting monitoring data to DataRobot's MLOps agent framework.
* Writing results back to a new table.
---
title: Troubleshooting the Python client
description: Review cases that can cause issues with using the Python client and known fixes.

---

# Troubleshooting the Python client {: #troubleshooting-the-python-client }

This page outlines cases that can cause issues with using the Python client and provides known fixes.

### InsecurePlatformWarning {: #insecureplatformwarning }

Python versions earlier than 2.7.9 might report an [InsecurePlatformWarning](https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning) in your output. To prevent this warning without updating your Python version, you should install the [pyOpenSSL](https://urllib3.readthedocs.org/en/latest/security.html#pyopenssl) package:

`pip install pyopenssl ndg-httpsclient pyasn1`

### AttributeError: 'EntryPoint' object has no attribute 'resolve' {: #attributeerror-entrypoint-object-has-no-attribute-resolve }

Some earlier versions of [setuptools](https://setuptools.pypa.io/en/latest/){ target=_blank } cause an error when importing DataRobot.

```
>>> import datarobot as dr
...
File "/home/clark/.local/lib/python2.7/site-packages/trafaret/__init__.py", line 1550, in load_contrib
  trafaret_class = entrypoint.resolve()
AttributeError: 'EntryPoint' object has no attribute 'resolve'
```

The recommended fix is upgrading setuptools to the latest version.

`pip install --upgrade setuptools`

If you are unable to upgrade, pin [trafaret](https://pypi.python.org/pypi/trafaret/){ target=_blank } to version <=7.4 to correct this issue.

### Connection errors {: #connection-errors }

`configuration.rst` describes how to configure the DataRobot client with the `max_retries` parameter to fine tune
behaviors like the number of attempts to retry failed connections.

### ConnectTimeout {: #connecttimeout }

If you have a slow connection to your DataRobot installation, you may see a traceback like:

```python
ConnectTimeout: HTTPSConnectionPool(host='my-datarobot.com', port=443): Max
retries exceeded with url: /api/v2/projects/
(Caused by ConnectTimeoutError(<requests.packages.urllib3.connection.VerifiedHTTPSConnection object at 0x7f130fc76150>,
'Connection to my-datarobot.com timed out. (connect timeout=6.05)'))
```
You can configure a longer connect timeout (increasing the wait time on each request attempting to connect to the DataRobot server before aborting) using a `connect_timeout` value in either a configuration file or when calling `datarobot.Client`.

### project.open_leaderboard_browser {: #project-open-leaderboard-browser }

Calling ``project.open_leaderboard_browser`` may be blocked if you run it with a text-mode browser or
on a server that doesn't have the ability to open a browser.
---
title: End-to-end modeling workflow with Azure
description: Use data stored in Azure to train a collection of models on DataRobot.

---

# End-to-end modeling workflow with Azure {: #end-to-end-modeling-workflow-with-azure}

[Access this AI accelerator on GitHub <span style="vertical-align: sub">:material-arrow-right-circle:{.lg }</span>](https://github.com/datarobot-community/ai-accelerators/blob/main/end-to-end/Azure_End_to_End.ipynb){ .md-button }

DataRobot offers an in-depth API that allows you to produce fully automated workflows in your coding environment of choice. This accelerator shows how to enable end-to-end processing of data stored natively in Azure.

In this notebook you'll see how data stored in Azure can be used to train a collection of models on DataRobot. You'll then deploy a recommended model and use DataRobot's batch prediction API to produce predictions and write them back to the source Azure container.

This accelerator notebook covers the following activities:

* Acquire a training dataset from an Azure storage container
* Build a new DataRobot project
* Deploy a recommended model
* Score via DataRobot's batch prediction API
* Write results back to the source Azure container
---
title: Other Leaderboard tabs
description: In addition to the model-specific tabs available, additional insights are available on the Leaderboard level.

---

# Other {: #other }

In addition to the model-specific tabs available, additional insights are available on the Leaderboard level:

Insight tab  | Description
------------------|-------------
[Insights](analyze-insights) | Provides graphical representations of model details.
[Learning Curves](learn-curve)  |  Helps to determine whether it is worthwhile to increase dataset size.
[Speed vs Accuracy](speed) | Illustrates the tradeoff between runtime and predictive accuracy.
[Model Comparison](model-compare)  | Compares selected models by varying criteria.
[Bias vs Accuracy](bias-tab) |  Illustrates the tradeoff between predictive accuracy and fairness.
---
title: Alteryx
description: Provides documentation for a tool that allows you to create projects and make predictions without leaving the Alteryx interface.

---

# Tools for Alteryx {: #alteryx }

DataRobot Tools allow you to create projects and make predictions without leaving the Alteryx interface.

1. Download the tools from <a target="_blank" href="https://s3.amazonaws.com/datarobot-public-external-connectors/DataRobotTools.yxi">this link</a>.

2. Once the download completes, double click the file and follow the instructions to install.

When the installation finishes, the **DataRobot Automodel** and **DataRobot Predict** tools will be available under the Predictive tab in Alteryx.

DataRobot Tools support Alteryx versions 2018.1 and later.

See the following documents for more information:

* <a target="_blank" href="https://s3.amazonaws.com/datarobot-public-external-connectors/modelFactoryHelp.html">Help for DataRobot Automodel Tool.</a>
* <a target="_blank" href="https://s3.amazonaws.com/datarobot-public-external-connectors/predictHelp.html">Help for DataRobot Predict Tool.</a>
* <a target="_blank" href="https://s3.amazonaws.com/datarobot-public-external-connectors/CHANGELOG.html">Release Notes.</a>
# Version 8.0.8 {: #version-808 }

_November 7, 2022_

The DataRobot v8.0.8 release includes some fixed issues in the DataRobot Self-Managed AI Platform platform. See the v8.0.0 release notes for:

* [Features introduced in v8.0.0](v8.0.0-aml)

In addition to the issues listed below, DataRobot addressed several outstanding security issues. This release/update is part of DataRobot's continual effort to secure the product and platform.

Note that DataRobot has been tracking developments in the CVE-2022-42889 (aka Text4Shell) remote code security issue. This vulnerability was not exploitable in DataRobot's software, but relevant version updates have been made in order to remove any concerns users might have.

## Issues fixed in v8.0.8 {: #issues-fixed-in-v808 }

The following issues have been fixed since release v8.0.7:

### Data management {: #data-management }

* DM-7590: Data engine and worker ingest jobs now only support Python 3.

### Predictions {: #predictions }

* CODEGEN-1485: If Scoring Code is enabled but wasn't generated after training a model, an in-app message now displays with the reason DataRobot did not generate Scoring Code.


_All product and company names are trademarks&trade; or registered&reg; trademarks of their respective holders. Use of them does not imply any affiliation with or endorsement by them_.