|
1 | 1 | ---
|
2 | 2 | title: Machine Learning registries
|
3 | 3 | titleSuffix: Azure Machine Learning
|
4 |
| -description: Learn what are Azure Machine Learning registries and how to use to for MLOps |
| 4 | +description: Learn about Azure Machine Learning registries and their role in scaling MLOps across different environments. |
5 | 5 | services: machine-learning
|
6 | 6 | ms.service: machine-learning
|
7 | 7 | ms.subservice: mlops
|
8 |
| -ms.author: mabables |
9 |
| -author: ManojBableshwar |
| 8 | +ms.author: kritifaujdar |
| 9 | +author: fkriti |
10 | 10 | ms.reviewer: larryfr
|
11 |
| -ms.date: 06/14/2023 |
| 11 | +ms.date: 06/06/2024 |
12 | 12 | ms.topic: conceptual
|
13 | 13 | ms.custom: build-2023
|
14 | 14 | ---
|
15 | 15 |
|
16 | 16 | # Machine Learning registries for MLOps
|
17 | 17 |
|
18 |
| -In this article, you'll learn how to scale MLOps across development, testing and production environments. Your environments can vary from few to many based on the complexity of your IT environment and is influenced by factors such as: |
| 18 | +This article describes how Azure Machine Learning registries decouple machine learning assets from workspaces, letting you use MLOps across development, testing, and production environments. Your environments can vary based on the complexity of your IT systems. The following factors influence the number and type of environments you need: |
19 | 19 |
|
20 |
| -* Security and compliance policies - Do production environments need to be isolated from development environments in terms of access controls, network architecture, data exposure, etc.? |
21 |
| -* Subscriptions - Are your development environments in one subscription and production environments in a different subscription? Often separate subscriptions are used to account for billing, budgeting, and cost management purposes. |
22 |
| -* Regions - Do you need to deploy to different Azure regions to support latency and redundancy requirements? |
| 20 | +- Security and compliance policies. Production environments might need to be isolated from development environments in terms of access controls, network architecture, and data exposure. |
| 21 | +- Subscriptions. Development environments and production environments often use separate subscriptions for billing, budgeting, and cost management purposes. |
| 22 | +- Regions. You might need to deploy to different Azure regions to support latency and redundancy requirements. |
23 | 23 |
|
24 |
| -In such scenarios, you may be using different Azure Machine Learning workspaces for development, testing and production. This configuration presents the following challenges for model training and deployment: |
25 |
| -* You need to train a model in a development workspace but deploy it an endpoint in a production workspace, possibly in a different Azure subscription or region. In this case, you must be able to trace back the training job. For example, to analyze the metrics, logs, code, environment, and data used to train the model if you encounter accuracy or performance issues with the production deployment. |
26 |
| -* You need to develop a training pipeline with test data or anonymized data in the development workspace but retrain the model with production data in the production workspace. In this case, you may need to compare training metrics on sample vs production data to ensure the training optimizations are performing well with actual data. |
| 24 | +In the preceding scenarios, you might use different Azure Machine Learning workspaces for development, testing, and production. This configuration presents the following potential challenges for model training and deployment: |
| 25 | + |
| 26 | +- You might need to train a model in a development workspace, but deploy it to an endpoint in a production workspace, possibly in a different Azure subscription or region. In this case, you must be able to trace back the training job. For example, if you encounter accuracy or performance issues with the production deployment, you need to analyze the metrics, logs, code, environment, and data you used to train the model. |
| 27 | + |
| 28 | +- You might need to develop a training pipeline with test data or anonymized data in the development workspace, but retrain the model with production data in the production workspace. In this case, you might need to compare training metrics on sample vs. production data to ensure the training optimizations perform well with actual data. |
27 | 29 |
|
28 | 30 | ## Cross-workspace MLOps with registries
|
29 | 31 |
|
30 |
| -Registries, much like a Git repository, decouples ML assets from workspaces and hosts them in a central location, making them available to all workspaces in your organization. |
| 32 | +A registry, much like a Git repository, decouples machine learning assets from workspaces and hosts the assets in a central location, making them available to all workspaces in your organization. |
31 | 33 |
|
32 |
| -If you want to promote models across environments (dev, test, prod), start by iteratively developing a model in dev. When you have a good candidate model, you can publish it to a registry. You can then deploy the model from the registry to endpoints in different workspaces. |
| 34 | +To promote models across development, test, and production environments, you can start by iteratively developing a model in the development environment. When you have a good candidate model, you can publish it to a registry. You can then deploy the model from the registry to endpoints in different workspaces. |
33 | 35 |
|
34 | 36 | > [!TIP]
|
35 |
| -> If you already have models registered in a workspace, you can promote them to a registry. You can also register a model directly in a registry from the output of a training job. |
| 37 | +> If you already have models registered in a workspace, you can promote the models to a registry. You can also register a model directly in a registry from the output of a training job. |
36 | 38 |
|
37 |
| -If you want to develop a pipeline in one workspace and then run it in others, start by registering the components and environments that form the building blocks of the pipeline. When you submit the pipeline job, the workspace it runs in is selected by the compute and training data, which are unique to each workspace. |
| 39 | +To develop a pipeline in one workspace and then run it in other workspaces, start by registering the components and environments that form the building blocks of the pipeline. When you submit the pipeline job, the compute and the training data, which are unique to each workspace, determine the workspace to run in. |
38 | 40 |
|
39 |
| -The following diagram illustrates promotion of pipelines between exploratory and dev workspaces, then model promotion between dev, test, and production. |
| 41 | +The following diagram shows training pipeline promotion between exploratory and development workspaces, then trained model promotion to test and production. |
40 | 42 |
|
41 |
| -:::image type="content" source="./media/concept-machine-learning-registries-mlops/cross-workspace-mlops-with-registries.png" alt-text="Diagram of pipeline and model use across environments."::: |
| 43 | +:::image type="content" source="./media/concept-machine-learning-registries-mlops/cross-workspace-mlops-with-registries.png" alt-text="Diagram of pipeline and model use across environments." border="false"::: |
42 | 44 |
|
43 | 45 | ## Next steps
|
44 | 46 |
|
45 |
| -* [Create a registry](./how-to-manage-registries.md) |
46 |
| -* [Network isolation with registries](./how-to-registry-network-isolation.md) |
47 |
| -* [Share models, components, and environments using registries](./how-to-share-models-pipelines-across-workspaces-with-registries.md) |
| 47 | +- [Create and manage Azure Machine Learning registries](./how-to-manage-registries.md) |
| 48 | +- [Network isolation with registries](./how-to-registry-network-isolation.md) |
| 49 | +- [Share models, components, and environments across workspaces with registries](./how-to-share-models-pipelines-across-workspaces-with-registries.md) |
0 commit comments