Azure Machine Learning is committed to simplifying the adoption of its platform for training and production cycles. Over the last several months, we have worked on adding support for workflows using command lines and support for scripts in multiple languages. We have also worked on bringing consistency of features and usability of functionality across all our surfaces.
We are now thrilled to make two announcements that are the culmination of this work.
- The general availability of Azure Machine Learning CLI v2
- The public preview of Azure Machine Learning Python SDK v2
Azure ML CLI v2
Azure ML CLI v2 is an extension that can be added to the Azure CLI. The AML CLI v2 allows users to define the configuration of any Azure ML workflow or asset using a YAML file. Users can then use commands with simple verbs like create, update, show, list etc. to create, run and maintain the workflows or assets. The YAML-based CLI v2 allows users to onboard Azure ML without learning a new programming language – users can bring in code in Python, R, Java, C#, and Julia. The use of command-line makes deployment and automation of workflows easier since they can be invoked from any offering/platform which allows to call the command line.
Azure ML Python SDK v2 (preview)
Azure ML Python SDK v2 is an updated python SDK package. The SDK v2 allows users to manage their entire lifecycle starting from training single jobs to pipelines and model deployments. The SDK v2 brings in new features like reusable components in pipelines, managed inferencing and allows users to build complex pipelines using python functions. It will allow users to move from simple to complex functionality in an incremental and easy way.
Why a new CLI and SDK?
The CLI v2 and SDK v2 offer several improvements in usability and new features. Here are some of the most interesting features:
New Features
Azure ML now offers new features which are only available via the CLI v2 and the SDK v2.
Managed inference deployments – endpoints to streamline model deployments for both real-time and batch inference deployments.
Reusable components in pipelines – components for managing and reusing common logic across pipelines.
On board to Azure ML using CLI v2 without the need to learn a specific programming language
The YAML file defines the configuration of the asset or workflow – what is it, where should it run, and so on. Any custom logic/IP used, say data preparation, model training, model scoring can remain in script files, which are referred to in the YAML, but not part of the YAML itself. Azure ML supports script files in python, R, Java, Julia or C#. All you need to learn is YAML format and command lines to use Azure ML. You can stick with script files of your choice.
Ease of deployment and automation with CLI v2
The use of command-line for execution makes deployment and automation simpler, since workflows can be invoked from any offering/platform, which allows users to call the command line.
Use Python functions to build a single step or a complex workflow using SDK v2
SDK v2 allows you to build a single command or a chain of commands like python functions – the command has a name, parameters, expects input, and returns output.
Move from simple to complex concepts incrementally using SDK v2
SDK v2 allows you to construct a single command, add a hyperparameter sweep on top of that command, add the command with various others into a pipeline one after the other.
This construction is useful, given the iterative nature of machine learning.
Where can I get started?
Use the following resources to get started on CLI v2 and SDK v2
- Train a model with Azure ML CLI v2 – https://aka.ms/amlcliv2
- Train a model with Azure ML SDK v2 – https://aka.ms/amlsdkv2
- Create production ML pipelines with Python SDK v2 – Tutorial
Article originally posted here. Reposted with permission.