Azure for Small and Medium Sized Businesses
/SKILLSDK Azure Machine Learning v2 for Python. Use it for ML workspaces, tasks, models, datasets, and resources
--- name: azure-ai-ml-py description: Azure Machine Learning SDK v2 for Python. Use for ML workspaces, jobs, models, datasets, compute, and pipelines. risk: unknown source: community date_added: '2026-02-27' --- # Azure Machine Learning SDK v2 for Python Client library for managing Azure ML resources: workspaces, jobs, models, data, and compute. ## Installation ``bash pip install azure-ai-ml ` ## Environment Variables `bash AZURE_SUBSCRIPTION_ID=<your-subscription-id> AZURE_RESOURCE_GROUP=<your-resource-group> AZURE_ML_WORKSPACE_NAME=<your-workspace-name> ` ## Authentication `python from azure.ai.ml import MLClient from azure.identity import DefaultAzureCredential ml_client = MLClient( credential=DefaultAzureCredential(), subscription_id=os.environ["AZURE_SUBSCRIPTION_ID"], resource_group_name=os.environ["AZURE_RESOURCE_GROUP"], workspace_name=os.environ["AZURE_ML_WORKSPACE_NAME"] ) ` ### From Config File `python from azure.ai.ml import MLClient from azure.identity import DefaultAzureCredential # Uses config.json in current directory or parent ml_client = MLClient.from_config( credential=DefaultAzureCredential() ) ` ## Workspace Management ### Create Workspace `python from azure.ai.ml.entities import Workspace ws = Workspace( name="my-workspace", location="eastus", display_name="My Workspace", description="ML workspace for experiments", tags={"purpose": "demo"} ) ml_client.workspaces.begin_create(ws).result() ` ### List Workspaces `python for ws in ml_client.workspaces.list(): print(f"{ws.name}: {ws.location}") ` ## Data Assets ### Register Data `python from azure.ai.ml.entities import Data from azure.ai.ml.constants import AssetTypes # Register a file my_data = Data( name="my-dataset", version="1", path="azureml://datastores/workspaceblobstore/paths/data/train.csv", type=AssetTypes.URI_FILE, description="Training data" ) ml_client.data.create_or_update(my_data) ` ### Register Folder `python my_data = Data( name="my-folder-dataset", version="1", path="azureml://datastores/workspaceblobstore/paths/data/", type=AssetTypes.URI_FOLDER ) ml_client.data.create_or_update(my_data) ` ## Model Registry ### Register Model `python from azure.ai.ml.entities import Model from azure.ai.ml.constants import AssetTypes model = Model( name="my-model", version="1", path="./model/", type=AssetTypes.CUSTOM_MODEL, description="My trained model" ) ml_client.models.create_or_update(model) ` ### List Models `python for model in ml_client.models.list(name="my-model"): print(f"{model.name} v{model.version}") ` ## Compute ### Create Compute Cluster `python from azure.ai.ml.entities import AmlCompute cluster = AmlCompute( name="cpu-cluster", type="amlcompute", size="Standard_DS3_v2", min_instances=0, max_instances=4, idle_time_before_scale_down=120 ) ml_client.compute.begin_create_or_update(cluster).result() ` ### List Compute `python for compute in ml_client.compute.list(): print(f"{compute.name}: {compute.type}") ` ## Jobs ### Command Job `python from azure.ai.ml import command, Input job = command( code="./src", command="python train.py --data ${{inputs.data}} --lr ${{inputs.learning_rate}}", inputs={ "data": Input(type="uri_folder", path="azureml:my-dataset:1"), "learning_rate": 0.01 }, environment="AzureML-sklearn-1.0-ubuntu20.04-py38-cpu@latest", compute="cpu-cluster", display_name="training-job" ) returned_job = ml_client.jobs.create_or_update(job) print(f"Job URL: {returned_job.studio_url}") ` ### Monitor Job `python ml_client.jobs.stream(returned_job.name) ` ## Pipelines ``python from azure.ai.ml import dsl, Input, Output from azure.ai.ml.entities import Pipeline @dsl.pipeline( compute="cpu-cluster", description="Training pipeline" ) def trainingpipeline(datainput): prepstep= prepcomponent(data= datainput) trainstep= traincomponent( data= prepstep.outputs. outputdata, learningrate=0.01 ) return {"model": train_step.ou