Azure ML Now Supports Multiple R & Python Versions, Including Microsoft R Open & Python 3

This post is authored by Roope Astala, Senior Program Manager at Microsoft.

We are thrilled to announce the support for multiple versions of R and Python in Azure ML.

As a data scientist building new models in R or Python, you often want to use the latest runtime and package versions which have the newest features and bug fixes. Meanwhile, you might have existing production models that you have to maintain and that rely on older versions.

Until recently, Azure ML solved the latter part of this problem: it provided a stable, backwards-compatible runtime for your R and Python models, both for experimentation and operationalization as a web service. However, you were limited to a single version of each runtime and packages that were compatible with that runtime.

Now Azure ML provides support for multiple R and Python versions. You can choose a newer version when building a new experiment, or you can update existing scripts to run under a newer version. Or you can keep using an old version if your legacy model depends on it. The supported versions include:

You can select the version from a drop-down in Execute R Script and Execute Python Script modules.


Once the experiment is published into production as a web service, the experiment keeps using the R or Python version and packages it was created with to maintain backwards compatibility. You can later change the version within the experiment and update the web service if needed. Note that all R and Python modules in same experiment must use same versions, and that Create R Model and custom R modules are still limited to CRAN R 3.1.0.

We’ve also updated the set of packages to those that are up-to-date with versions, and added new R packages based on popular demand, such as cclust and xgboost (see Gallery example). For Python, we’ve upgraded the packages to Anaconda 4.0 distribution and included Microsoft Azure SDK for Python package.

Roope