You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Azure Machine Learning allows you to integration with [Azure DevOps pipeline](/azure/devops/pipelines/) to automate the machine learning lifecycle. Some of the operations you can automate are:
20
+
Azure Machine Learning allows you to integrate with [Azure DevOps pipeline](/azure/devops/pipelines/) to automate the machine learning lifecycle. Some of the operations you can automate are:
21
21
22
22
* Deployment of AzureML infrastructure
23
23
* Data preparation (extract, transform, load operations)
24
24
* Training machine learning models with on-demand scale-out and scale-up
25
25
* Deployment of machine learning models as public or private web services
26
26
* Monitoring deployed machine learning models (such as for performance analysis)
27
27
28
-
In this article, you learn about using Azure Machine Learning to set up an end-to-end MLOps pipeline that runs a linear regression to predict taxi fares in NYC. The pipeline is made up of components, each serving different functions, which can be registered with the workspace, versioned, and reused with various inputs and outputs. you are going to be using the [recommended Azure architecture for MLOps](/azure/architecture/data-guide/technology-choices/machine-learning-operations-v2) and [Azure MLOps (v2) solution accelerator](https://github.com/Azure/mlops-v2) to quickly set up an MLOps project in AzureML.
28
+
In this article, you learn about using Azure Machine Learning to set up an end-to-end MLOps pipeline that runs a linear regression to predict taxi fares in NYC. The pipeline is made up of components, each serving different functions, which can be registered with the workspace, versioned, and reused with various inputs and outputs. you're going to be using the [recommended Azure architecture for MLOps](/azure/architecture/data-guide/technology-choices/machine-learning-operations-v2) and [Azure MLOps (v2) solution accelerator](https://github.com/Azure/mlops-v2) to quickly setup an MLOps project in AzureML.
29
29
30
30
> [!TIP]
31
31
> We recommend you understand some of the [recommended Azure architectures](/azure/architecture/data-guide/technology-choices/machine-learning-operations-v2) for MLOps before implementing any solution. You'll need to pick the best architecture for your given Machine learning project.
@@ -34,12 +34,10 @@ In this article, you learn about using Azure Machine Learning to set up an end-t
34
34
35
35
- An Azure subscription. If you don't have an Azure subscription, create a free account before you begin. Try the [free or paid version of Azure Machine Learning](https://azure.microsoft.com/free/).
36
36
- An Azure Machine Learning workspace.
37
-
- The Azure Machine Learning [SDK v2 for Python](https://aka.ms/sdk-v2-install).
38
-
- The Azure Machine Learning [CLI v2](how-to-configure-cli.md).
39
37
- Git running on your local machine.
40
38
- An [organization](/azure/devops/organizations/accounts/create-organization) in Azure DevOps.
41
39
-[Azure DevOps project](how-to-devops-machine-learning.md) that will host the source repositories and pipelines.
42
-
- The [Terraform extension for Azure DevOps](https://marketplace.visualstudio.com/items?itemName=ms-devlabs.custom-terraform-tasks) if you are using Azure DevOps + Terraform to spin up infrastructure
40
+
- The [Terraform extension for Azure DevOps](https://marketplace.visualstudio.com/items?itemName=ms-devlabs.custom-terraform-tasks) if you're using Azure DevOps + Terraform to spin up infrastructure
43
41
44
42
> [!NOTE]
45
43
>
@@ -66,7 +64,7 @@ Before you can set up an MLOps project with AzureML, you need to set up authenti
66
64
67
65

68
66
69
-
1. Copy the bash commands below to your computer and update the **projectName**, **subscriptionId**, and **environment** variables with the values for your project. If you are creating both a Dev and Prod environment, you'll need to run this script once for each environment, creating a service principal for each. This command will also grant the **Contributor** role to the service principal in the subscription provided. This is required for Azure DevOps to properly use resources in that subscription.
67
+
1. Copy the following bash commands to your computer and update the **projectName**, **subscriptionId**, and **environment** variables with the values for your project. If you're creating both a Dev and Prod environment, you'll need to run this script once for each environment, creating a service principal for each. This command will also grant the **Contributor** role to the service principal in the subscription provided. This is required for Azure DevOps to properly use resources in that subscription.
70
68
71
69
```bash
72
70
projectName="<your project name>"
@@ -94,7 +92,7 @@ Before you can set up an MLOps project with AzureML, you need to set up authenti
94
92
}
95
93
```
96
94
97
-
1. Repeat **Step 3.** if you're creating service principals for Dev and Prod environments.
95
+
1. Repeat **Step 3.** if you're creating service principals for Dev and Prod environments. For this demo, we'll be creating only one environment, which is Prod.
98
96
99
97
1. Close the Cloud Shell once the service principals are created.
100
98
@@ -146,9 +144,9 @@ Before you can set up an MLOps project with AzureML, you need to set up authenti
146
144
- **Tenant ID** - Use the `tenant` from **Step 1.** output as the Tenant ID
147
145
148
146
149
-
6. Name the service connection **Azure-ARM-Dev**.
147
+
6. Name the service connection **Azure-ARM-Prod**.
150
148
151
-
7. Select **Grant access permission to all pipelines**, thenselect**Verify and Save**. Repeat this step to create another service connection **Azure-ARM-Prod** using the details of the Prod service principal created in**Step 1.**
149
+
7. Select **Grant access permission to all pipelines**, then select **Verify and Save**.
152
150
153
151
The Azure DevOps setup is successfully finished.
154
152
@@ -158,32 +156,20 @@ The Azure DevOps setup is successfully finished.
158
156
159
157
1. Open the Repos section and select **Import Repository**
160
158
161
-

159
+

162
160
163
-
1. Enter https://github.com/Azure/mlops-v2-ado-demo into the Clone URL field. Click import at the bottom of the page
161
+
1. Enter https://github.com/Azure/mlops-v2-ado-demo into the Clone URL field. Select import at the bottom of the page
164
162
165
-

166
-
167
-
168
-
1. Open the Repos section. Click on the default repo name at the top of the screen and selectImport Repository
169
-
170
-

171
-
172
-
1. Enter https://github.com/Azure/mlops-templates into the Clone URL field. Click import at the bottom of the page
173
-
174
-

175
-
176
-
> [!TIP]
177
-
> Learn more about the MLOps v2 accelerator structure and the MLOps [template](https://github.com/Azure/mlops-v2/)
163
+

178
164
179
165
1. Open the **Project settings** at the bottom of the left hand navigation pane
180
166
181
-
1. Under the Repos section, click**Repositories**. Select the repository you created in**Step 6.** Select the **Security** tab
167
+
1. Under the Repos section, select **Repositories**. Select the repository you created in **Step 6.** Select the **Security** tab
182
168
183
169
1. Under the User permissions section, select the **mlopsv2 Build Service** user. Change the permission **Contribute** permission to **Allow** and the **Create branch** permission to **Allow**.
184
-

170
+

185
171
186
-
1. Open the **Pipelines** section in the left hand navigation pane and click on the 3 vertical dots next to the **Create Pipelines** button. Select **Manage Security**
172
+
1. Open the **Pipelines** section in the left hand navigation pane and select on the 3 vertical dots next to the **Create Pipelines** button. Select **Manage Security**
187
173
188
174

189
175
@@ -202,7 +188,10 @@ This step deploys the training pipeline to the Azure Machine Learning workspace
202
188
> Make sure you understand the [Architectural Patterns](/azure/architecture/data-guide/technology-choices/machine-learning-operations-v2) of the solution accelerator before you checkout the MLOps v2 repo and deploy the infrastructure. In examples you'll use the [classical ML project type](/azure/architecture/data-guide/technology-choices/machine-learning-operations-v2#classical-machine-learning-architecture).
203
189
204
190
### Run Azure infrastructure pipeline
205
-
1. Go to the first repo you imported in the previous section, `mlops-v2-ado-demo`. Make sure you have the `main` branch selected and then select the **config-infra-dev.yml** file.
191
+
1. Go to your repository, `mlops-v2-ado-demo`, and selectthe**config-infra-prod.yml** file.
192
+
193
+
> [!IMPORTANT]
194
+
> Make sure you've selected the **main** branch of the repo.
206
195
207
196

208
197
@@ -216,9 +205,7 @@ This step deploys the training pipeline to the Azure Machine Learning workspace
216
205
> [!NOTE]
217
206
> If you are running a Deep Learning workload such as CV or NLP, ensure your GPU compute is available in your deployment zone.
218
207
219
-
1. Click Commit and push code to get these values into the pipeline.
220
-
221
-
1. Repeat this step for **config-infra-prod.yml** file.
208
+
1. Select Commit and push code to get these values into the pipeline.
222
209
223
210
1. Go to Pipelines section
224
211
@@ -236,15 +223,10 @@ This step deploys the training pipeline to the Azure Machine Learning workspace
236
223
237
224
1. Select **Existing Azure Pipeline YAML File**
238
225
239
-

226
+

240
227
241
228
242
-
1. Select `main` as a branch and choose based on your deployment method your preferred yml path.
243
-
- For a terraform scenario, choose `infrastructure/pipelines/tf-ado-deploy-infra.yml`, thenselect**Continue**.
244
-
- For a bicep scenario, choose `infrastructure/pipelines/bicep-ado-deploy-infra.yml`, thenselect**Continue**.
245
-
246
-
> [!CAUTION]
247
-
> For this example, make sure the [Terraform extension for Azure DevOps](https://marketplace.visualstudio.com/items?itemName=ms-devlabs.custom-terraform-tasks) is installed.
229
+
1. Select the `main` branch and choose `mlops/devops-pipelines/cli-ado-deploy-infra.yml`, thenselect**Continue**.
248
230
249
231
1. Run the pipeline; it will take a few minutes to finish. The pipeline should create the following artifacts:
250
232
* Resource Group for your Workspace including Storage Account, Container Registry, Application Insights, Keyvault and the Azure Machine Learning Workspace itself.
@@ -323,19 +305,13 @@ This step deploys the training pipeline to the Azure Machine Learning workspace
323
305
324
306
1. Select **Existing Azure Pipeline YAML File**
325
307
326
-

308
+

327
309
328
-
1. Select `main` as a branch and choose:
329
-
330
-
- For Managed Batch Endpoint `/mlops/devops-pipelines/deploy-batch-endpoint-pipeline.yml`
331
-
332
-
- For Managed Online Endpoint `/mlops/devops-pipelines/deploy-online-endpoint-pipeline.yml`
333
-
334
-
Then select**Continue**.
310
+
1. Select `main` as a branch and choose Managed Online Endpoint `/mlops/devops-pipelines/deploy-online-endpoint-pipeline.yml`thenselect**Continue**.
335
311
336
-
1. Batch/Online endpoint names need to be unique, so change **[your endpoint-name]** to another unique name and thenselect**Run**.
312
+
1. Online endpoint names need to be unique, so change `taxi-online-$(namespace)$(postfix)$(environment)` to another unique name and thenselect**Run**. No need to change the default if it doesn't fail.
337
313
338
-

314
+

339
315
340
316
> [!IMPORTANT]
341
317
> If the run fails due to an existing online endpoint name, recreate the pipeline as described previously and change **[your endpoint-name]** to **[your endpoint-name (random number)]**
0 commit comments