将专用 Python 包与 Azure 机器学习一起使用

适用于:Python SDK azureml v1

本文介绍如何在 Azure 机器学习内安全地使用专用 Python 包。 专用 Python 包的用例包括:

  • 已开发不想公开分享的专用包。
  • 希望使用企业防火墙中存储的包的特选存储库。

建议的方法取决于单个 Azure 机器学习工作区有少量包,还是组织中所有工作区有整个包存储库。

通过 Environment 类使用专用包。 在环境内可声明要使用的 Python 包,包括专用包。 若要大体了解 Azure 机器学习中的环境,请参阅如何使用环境

先决条件

使用少量包进行开发和测试

对于单个工作区的少量专用包,请使用静态 Environment.add_private_pip_wheel() 方法。 此方法可让你快速地将专用包添加到工作区,并且非常适用于开发和测试目的。

将文件路径参数指向本地 wheel 文件,然后运行 add_private_pip_wheel 命令。 该命令返回用于跟踪工作区中包位置的 URL。 捕获存储 URL,并将其传递给 add_pip_package() 方法。

whl_url = Environment.add_private_pip_wheel(workspace=ws,file_path = "my-custom.whl")
myenv = Environment(name="myenv")
conda_dep = CondaDependencies()
conda_dep.add_pip_package(whl_url)
myenv.python.conda_dependencies=conda_dep

Azure 机器学习服务在内部将 URL 替换为安全的 SAS URL,使 wheel 文件保持专用和安全。

从专用存储使用包的存储库

可以在组织的防火墙内使用 Azure 存储帐户的包。 该存储帐户可以包含一组特选包,或者可公开使用的包的内部镜像。

若要设置此类专用存储,请参阅保护 Azure 机器学习工作区和关联资源。 还必须将 Azure 容器注册表 (ACR) 放置在 VNet 后

重要

必须完成此步骤才能使用专用包存储库训练或部署模型。

完成这些部署后,便可以通过 Azure Blob 存储中的完整 URL 引用 Azure 机器学习环境定义中的包。

后续步骤