在conda env创建期间MLFlow项目运行失败

时间:2019-07-28 01:54:17

标签: conda mlflow

我正在尝试使mlflow mlproject工作。

当我运行以repo名称运行的mlflow

mlflow run  git@gitlabe2.xx.yy.zz:name/mlflow-example.git

执行失败并显示以下错误

File "/home/example/miniconda/envs/mlflow/lib/python3.7/site-packages/mlflow/projects/__init__.py", line 265, in run
use_conda=use_conda, storage_dir=storage_dir, synchronous=synchronous, run_id=run_id)
File "/home/example/miniconda/envs/mlflow/lib/python3.7/site-packages/mlflow/projects/__init__.py", line 144, in _run
conda_env_name = _get_or_create_conda_env(project.conda_env_path)
File "/home/example/miniconda/envs/mlflow/lib/python3.7/site-packages/mlflow/projects/__init__.py", line 144, in _run
conda_env_name = _get_or_create_conda_env(project.conda_env_path)
File "/home/example/miniconda/envs/mlflow/lib/python3.7/site-packages/mlflow/projects/__init__.py", line 498, in _get_or_create_conda_env
conda_env_path], stream_output=True)
File "/home/example/miniconda/envs/mlflow/lib/python3.7/site-packages/mlflow/utils/process.py", line 38, in exec_cmd
raise ShellCommandException("Non-zero exitcode: %s" % (exit_code))

关于我应该看哪里的任何指示?

怀疑conda.yaml文件存在一些问题,尤其是conda env名称。 对于创建项目和运行项目的环境,我有不同的名称。有关系吗?

谢谢

2 个答案:

答案 0 :(得分:0)

怀疑的问题是conda yaml文件。使用--no-builds选项创建项目的yaml文件解决了该问题

conda env export --no-builds > conda.yaml 

谢谢

答案 1 :(得分:0)

我遇到了这个问题,这是由于我在环境中创建 conda.yaml 时的编码。以下内容基于我在 vscode 中对 windows 10 的观察。

这不起作用:

conda env export > conda.yaml 这会导致 UTF-16 LE 的编码,这将导致 conda 在创建环境时失败。

改用这个:

conda env export -f conda.yaml 这会产生 UTF-8 的编码,conda 可以使用它来创建环境。