如何防止'conda env export'更新特定依赖项



节选自我的environment.yml:

name: my-project
channels:
- pytorch-nightly
- defaults
dependencies:
- pytorch=1.13.0.*
- pip:
- https://github.com/explosion/spacy-models/releases/download/nb_core_news_md-3.3.0/nb_core_news_md-3.3.0-py3-none-any.whl
prefix: ~/opt/miniconda3/envs/my-project

当我创建环境(conda env create -f environment.yml)并将其重新导出到environment.yml(conda env export > environment.yml)时,文件发生了更改:

name: my-project
channels:
- pytorch-nightly
- defaults
dependencies:
- pytorch=1.13.0.dev20220614=py3.9_0
- pip:
- nb-core-news-md==3.3.0
prefix: ~/opt/miniconda3/envs/my-project

然后,当我第二天重新创建我的环境时,Conda抱怨pytorch=1.13.0.dev20220614=py3.9_0不存在,因为它被新的PyTorch预览(Nightly)构建所取代。dev20220614=py3.9_0不再可用

Conda还抱怨nb-core-news-md==3.3.0不存在。它是通过一个URL直接安装到whl的。该URL已从environment.yml.

如何防止conda env export更改这两个依赖项?我仍然希望Conda锁定所有其他依赖项的细节,只是不包括这两个。

我明白PyTorch删除每日构建的原因,但这对你的工作流程来说有点破坏性。您所要求的内容无法用Conda CLI命令表示。相反,可以考虑导出常规的YAML,然后在重新创建环境之前运行一些sed命令来替换特定的需求。

相关内容

  • 没有找到相关文章

最新更新