首页 > 解决方案 > 如何为 PyTorch Estimator 指定 python==3.6.8(conda_packages 不够)

问题描述

我需要使用python=3.6.8 (not the default 3.6.2)在 Azure Machine Learning 下运行我的 python 脚本。我正在使用 AML“ PyTorch() ”估算器,将“ conda_packages ”arg 设置为["python==3.6.8"]

我依赖 PyTorch Estimator 的这个文档页面:

https://docs.microsoft.com/en-us/python/api/azureml-train-core/azureml.train.dnn.pytorch?view=azure-ml-py

当我的脚本运行时,我打印出“ sys.version ”并看到它仍然设置为python 3.6.2

python: 3.6.2 | packaged by conda-forge | (default, Jul 23 2017, 22:59:30) 
[GCC 4.8.2 20140120 (Red Hat 4.8.2-15)]

我希望看到python 3.6.8,因为我在 PyTorch Estimator 的 conda_packages arg 中指定了它。

我还尝试将“ python==3.6.8 ”从 conda_packages 移动到 pip_packages,但收到一条错误消息,指出 pip 找不到该包。

仅供参考,我在 pip_packages 中指定了另一个包,并且在此过程中确实安装了正确。似乎没有使用“ conda_packages ” arg 的值(我在我的工作的 AML 日志中找不到 conda 或 python 安装错误的提及)。

标签: pythonpytorchcondaazure-machine-learning-service

解决方案


另一种选择是使用正确的 python 版本指定 conda 依赖文件 conda_dependencies_file_path。以下文档概述了有关如何执行此操作的详细文档。一旦你指定了 conda_depencies_file_path,它会覆盖 pip_packages 和 conda_packages,所以我建议将所有包放在 conda 依赖文件中

https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.conda_dependencies.condadependencies?view=azure-ml-py


推荐阅读