Costa Rica
Last updated: 2025-05-06
Topics:
- Azure Machine Learning - Overview
- Terraform Demonstration: Deploying Azure Resources for a Data Platform (Microsoft Fabric)
- Terraform Demonstration: Deploying Azure Resources for an ML Platform
- Demostration: How to integrate AI in Microsoft Fabric
- Demostration: Creating a Machine Learning Model - in progress
Azure Machine Learning (PaaS) is a cloud-based platform from Microsoft designed to help
data scientists and machine learning engineers build, train, deploy, and manage machine learning models at scale
. It supports theentire machine learning lifecycle, from data preparation and experimentation to deployment and monitoring.
It provides powerful tools forboth code-first and low-code users
, including Jupyter notebooks, drag-and-drop interfaces, and automated machine learning (AutoML).Azure ML integrates seamlessly with other Azure services and supports popular frameworks like TensorFlow, PyTorch, and Scikit-learn.
List of References (Click to expand)

Feature / Platform | Azure Machine Learning | Microsoft Fabric | Azure AI Foundry |
---|---|---|---|
Purpose | End-to-end ML lifecycle management and MLOps | Unified data analytics and business intelligence platform | Unified platform for building and deploying AI solutions |
Model Deployment | Supports real-time and batch deployment via AKS, ACI | Limited ML deployment; integrates with Azure ML | Deploys models as APIs or services within projects |
Compute Options | Compute instances, clusters, Kubernetes, attached compute | Uses OneLake and Spark compute for data processing | Managed compute for model training and inference |
Notebook Support | Jupyter notebooks, VS Code integration | Notebooks in Data Science experience (powered by Spark) | Code-first notebooks and SDK integration |
AutoML | Built-in AutoML for classification, regression, etc. | Not available directly | Not primary focus, but supports model selection and tuning |
MLOps & Monitoring | Full MLOps support with versioning, CI/CD, monitoring | Not a core feature | Continuous monitoring and governance for AI apps |
Target Users | Data scientists, ML engineers | Data analysts, data scientists, data engineers, developers, business users, executives | AI developers, app builders, enterprise teams |
Integration | Azure DevOps, GitHub, MLflow | Power BI, Synapse, Azure Data Factory | GitHub, VS Code, LangChain, Semantic Kernel, Azure AI |
Click here to read more about Azure AI Foundry portal or Azure Machine Learning studio: Which experience should I choose? - Detailed feature comparison
A taxonomy of the workspace is illustrated in the following diagram, from What is an Azure Machine Learning workspace?
Compute Instances
: Preconfigured VMs (CPU/GPU) used for development, experimentation, and running notebooks.
Experiments
: A training run that executes a script with different configurations (e.g., hyperparameters, datasets). It helps track and compare model performance across multiple runs.
Model
: The result of a successful experiment. It represents the trained algorithm and is registered in Azure ML for versioning and reuse. A registered model is essentially the output artifact of an experiment.
Endpoint
: A deployed model exposed as a web service or REST API. Endpoints allow real-time or batch inference. It's important to configure security settings properly, including network access (e.g., VNet integration) and port restrictions.
Pipelines
: Reusable, modular workflows that chain together multiple steps (e.g., data prep, training, evaluation). Useful for automating and orchestrating ML processes.
Datasets
: Versioned data assets used in experiments and pipelines. They ensure consistency and reproducibility across training runs.
Registered Models
: The output of successful experiments. These are trained models saved and versioned for deployment and reuse.
Deployment Endpoints
: Deployed models exposed as REST APIs for real-time or batch inference. Security settings (e.g., VNet, authentication, ports) should be reviewed carefully.
Notebooks
Azure ML provides integrated Jupyter notebooks that run on managed compute instances (CPU or GPU). These notebooks support Python and R, and come pre-installed with popular ML libraries like TensorFlow, PyTorch, Scikit-learn, and pandas. Users can access data from registered datasets, run experiments, and track metrics directly from the notebook using the Azure ML SDK. Notebooks can also be version-controlled and scheduled as part of pipelines.
Automated ML
Automated ML (AutoML) enables users to train models for classification, regression, and time-series forecasting without writing code. It performs algorithm selection, hyperparameter tuning, and model ensembling. Users can configure training constraints such as timeouts, primary metrics, and validation strategies. AutoML runs are tracked as experiments, and the best model can be registered and deployed directly from the UI or SDK.
Designer
The Designer is a visual interface for building machine learning pipelines using a drag-and-drop canvas. It supports data ingestion, transformation, model training, evaluation, and deployment. Each component in the pipeline is backed by a module (e.g., data split, normalization, logistic regression). Pipelines can be published as REST endpoints and reused in production workflows. Designer supports both built-in modules and custom Python scripts.
Prompt Flow
Prompt Flow is a development tool for building and managing prompt-based workflows for large language models (LLMs). It allows chaining of prompts, tools (e.g., Python functions, APIs), and control logic into structured flows. Developers can test, evaluate, and deploy these flows as endpoints. Prompt Flow supports integration with Azure OpenAI, LangChain, and Semantic Kernel, and includes telemetry for prompt performance and cost tracking.
The following diagram illustrates how you can use a single Environment object in both your run configuration (for training) and your inference and deployment configuration (for web service deployments).
Image from What are Azure Machine Learning environments?
Data
Datasets are foundational assets in machine learning workflows. In Azure Machine Learning, registered datasets are used across experiments, pipelines, and jobs to ensure consistency and reproducibility. These datasets can be versioned and stored in Azure Blob Storage or other supported data sources. Azure ML supports various data formats, including tabular data (e.g., CSV, Parquet), file-based data (e.g., images, text files), and URI-based references. By registering datasets, teams can track data lineage, manage access, and ensure that models are trained and evaluated on consistent data versions.
- Prepare your data in a supported format (e.g., CSV, JSON, images).
- Upload the data to Azure Blob Storage or another supported location.
- Register the dataset using the Azure ML SDK, CLI, or Studio.
- Version the dataset to track changes over time.
- Use the dataset in jobs, pipelines, or experiments to ensure reproducibility.
Jobs
Jobs represent individual executions of scripts, components, or pipelines in Azure ML. Each job captures inputs, outputs, logs, metrics, and environment details. Jobs can be triggered manually, on a schedule, or as part of a pipeline. They provide full traceability and monitoring for ML experiments and production workflows.
- Define your script or component (e.g., training or evaluation logic).
- Specify inputs (datasets, parameters) and expected outputs.
- Configure the environment (Docker image, Conda dependencies).
- Submit the job using the Azure ML SDK, CLI, or Studio interface.
- Monitor the job’s progress, view logs, and analyze metrics.
Components
Components are modular, reusable units of computation in Azure ML. They encapsulate specific tasks such as data preprocessing, model training, or evaluation. Defined using YAML, components support versioning and parameterization, and are the core building blocks of pipelines.
- Write a script that performs a specific task (e.g.,
train.py
). - Create a YAML file defining the component (inputs, outputs, environment).
- Register the component in Azure ML.
- Use the component in pipelines or jobs.
- Version the component to enable reuse and traceability.
Pipelines
Pipelines orchestrate multiple components into a complete machine learning workflow. They support parallelism, conditional logic, and reuse. Pipelines can be triggered via REST API, CLI, or SDK, and are ideal for automating ML workflows from data ingestion to deployment.
- Define components for each stage (e.g., preprocessing, training, evaluation).
- Chain components together using the Azure ML SDK.
- Specify data flow and dependencies between components.
- Submit the pipeline as a job.
- Monitor execution and reuse pipelines for automation and CI/CD.
Environments
Environments define the runtime configuration for jobs and components. They include Docker base images, Conda dependencies, and environment variables. Environments ensure consistency across development, training, and production stages.
- Create a Conda YAML file or specify a Docker image.
- Register the environment in Azure ML.
- Attach the environment to jobs or components.
- Version environments to maintain reproducibility.
- Use consistent environments across all stages of the ML lifecycle.
Models
Models are trained artifacts stored in the Azure ML workspace. They can be versioned, registered, and deployed to endpoints. Each model includes metadata, lineage, and evaluation metrics, supporting traceability and governance.
- Train a model using a job or pipeline.
- Register the model in the Azure ML workspace.
- Attach metadata such as metrics, tags, and lineage.
- Version the model to track improvements.
- Deploy the model to an endpoint for inference.
Endpoints
Endpoints expose deployed models as REST APIs for real-time (online) or batch inference. They support authentication, virtual network (VNet) integration, and traffic splitting for A/B testing or gradual rollouts.
- Choose a deployment target (real-time or batch).
- Create an inference configuration (entry script, environment).
- Deploy the model to an endpoint.
- Secure the endpoint with authentication and networking rules.
- Monitor and scale the endpoint as needed.
Read more about Endpoints for inference in production

Compute
Compute resources are the backbone of Azure Machine Learning workloads. This section allows you to create, manage, and monitor compute instances and clusters used for development, training, and inference. It supports various compute types including personal VMs, scalable clusters, and attached external resources.
- Navigate to Manage > Compute in Azure ML Studio.
- Choose the type of compute: Instance (for development), Cluster (for training), or Inference Cluster (for deployment).
- Configure the compute settings (VM size, scaling, idle shutdown).
- Attach external compute if needed (e.g., Azure Databricks, AKS).
- Monitor usage, status, and logs from the same interface.
Compute Type | Description | Purpose | Ideal Use Cases | Key Features |
---|---|---|---|---|
Compute Instances | Preconfigured VMs (CPU/GPU) with tools like VS Code, JupyterLab, and RStudio. | Interactive development and experimentation. | Data exploration, model prototyping, debugging. | Auto-shutdown, integrated notebooks, preinstalled ML frameworks. |
Compute Clusters | Scalable clusters that auto-scale based on workload. Supports both CPU and GPU nodes. | Distributed training and batch inference. | Training large models, running parallel experiments. | Autoscaling, cost control, reusable across users. |
Kubernetes Clusters | Includes AKS and attached Kubernetes clusters for production-grade deployments. | Real-time inference and scalable deployment. | Hosting REST endpoints, high-availability inference. | Load balancing, autoscaling, secure networking. |
Attached Compute | External compute resources manually connected to Azure ML. | Leverage existing infrastructure. | Using Azure VMs, Databricks, or on-prem compute. | Flexibility, hybrid cloud support, reuse of existing resources. |
Serverless Instances | Lightweight, on-demand compute (e.g., Azure Container Instances). | Quick testing and low-scale inference. | Temporary model deployment, dev/test environments. | No infrastructure management, fast startup, cost-effective. |
Monitoring
Monitoring provides visibility into the performance and health of your ML assets. It includes logs, metrics, and telemetry for jobs, pipelines, and deployed endpoints. This helps ensure reliability, detect anomalies, and maintain model quality over time.
- Go to Manage > Monitoring.
- Select the asset you want to monitor (e.g., job, endpoint).
- View logs, metrics, and telemetry data.
- Set up alerts for failures or performance thresholds.
- Use insights to debug issues or optimize performance.
Data Labeling
Data Labeling enables you to create and manage labeling projects for supervised learning. It supports image, text, and tabular data, and allows collaboration with human labelers or integration with labeling services.
- Open Manage > Data Labeling.
- Create a new labeling project and select the data type.
- Upload or link the dataset to be labeled.
- Assign labeling tasks to users or services.
- Export the labeled dataset for training or evaluation.
Linked Services (Preview)
Linked Services allow you to connect your Azure ML workspace to external data sources like Azure Data Lake, Blob Storage, or SQL databases. This simplifies data access and centralizes configuration for use in datasets and pipelines.
- Navigate to Manage > Linked Services.
- Add a new linked service by selecting the data source type.
- Provide connection details and authentication credentials.
- Test the connection to ensure access.
- Use the linked service in datasets or pipeline steps.
Connections (Preview)
Connections manage secure access to external systems and APIs. They store credentials and authentication methods, enabling secure and reusable access in jobs and pipelines.
- Go to Manage > Connections.
- Create a new connection (e.g., to a REST API or database).
- Define the authentication method (e.g., service principal, managed identity).
- Save and test the connection.
- Reference the connection in your components or pipelines.