Azure 机器学习服务在工作区之间复制模型



我正在为我们的模型设置部署管道,我想支持这个场景:

  1. 用户在测试订阅testAML 工作区中注册模型,签入引用模型版本的部署代码/配置(有一个类似requirements.txt的文件指定模型 ID - 名称和版本(
  2. Azure DevOps CI 在代码签入后触发,以运行az ml model deploy到测试环境。
  3. 用户决定在该端点运行良好后,想要部署到生产。在 Azure DevOps 中,手动调用将使用相同的签入代码/配置(具有相同的引用模型(的生产管道:
    • 将模型从"testAML "工作区复制到不同订阅中prodAML 工作区中具有相同版本的新注册模型
    • 使用与prod环境对应的不同变量运行az ml model deploy,但使用相同的签入 AML 代码/配置

我已经查看了 MLOps 参考,但似乎无法弄清楚如何在上述情况下支持步骤 3。

我想我可以做一个az ml model download,从test环境中下载模型并将其注册到prod环境中。注册过程会自动设置版本号,例如,引用myModel:12的配置不再有效,因为prodID 是myModel:1

如何将模型从一个订阅中的一个工作区复制到另一个工作区并保留 ID?

可以使用模型标记来设置自己的标识符,这些标识符在工作区之间共享,并使用特定标记查询模型:

az ml model update --add-tag
az ml model list --tag

最新更新