将专用 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) 放置在虚拟网络后

重要

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

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

后续步骤