如何从 conda .yaml 规范文件执行 python 命令?

How to execute python commands from a conda .yaml specification file?

我正在尝试使用 AzureML environment 的 .yaml 文件列出 conda 依赖项。我不想仅仅为了一些变化而使用自定义 docker 图像。我想知道是否有一种方法可以使用 .yaml 文件指示构建 运行 python 命令。以下是我目前尝试过的内容的摘录:

name: classifer_environment
dependencies:
- python=3.6.2

- pip:
  - azureml-defaults>=1.0.45
  - nltk==3.4.5
  - spacy

- command: 
  - bash -c "python -m nltk.downloader stopwords"
  - bash -c "python -m spacy download en_core_web_sm"

我也试过这个:

name: classifer_environment
dependencies:
- python=3.6.2

- pip:
  - azureml-defaults>=1.0.45
  - nltk==3.4.5
  - spacy

- python: 
  - nltk.downloader stopwords
  - spacy download en_core_web_sm

我不太清楚 yaml 规范。两种规范均失败,并在构建日志中分别显示以下消息:
“无法为命令安装包。”
“无法为 python 安装包。”

这可能是一个不错的功能,但现在还不是问题 - 至少不是像这样直接在 YAML 中。

相反,Conda 中的计算单位是。也就是说,如果您需要在环境创建时 运行 额外的脚本或命令,可以通过构建自定义包并将该包作为依赖项包含在 YAML 中来实现。包本身可能几乎是空的,但是 运行 需要的任何代码都将通过 some installation scripts.

包含