ОШИБКА conda.core.link:_execute(502): Произошла ошибка при установке пакета 'conda-forge :: astor-0.7.1-py_0' - PullRequest
1 голос
/ 11 марта 2020

Я пытаюсь следовать учебнику Python, и я смог выполнить практически все, вплоть до точки Развертывания конечной точки на Azure с python.

, чтобы дать некоторые контекст Я загрузил сценарии в мою учетную запись git: https://github.com/levalencia/MLTutorial

Файл 1 и 2 Отлично работают

Однако следующий раздел в файле 3 не работает:

%%time
from azureml.core.webservice import Webservice
from azureml.core.model import InferenceConfig

inference_config = InferenceConfig(runtime= "python", 
                                   entry_script="score.py",
                                   conda_file="myenv.yml")

service = Model.deploy(workspace=ws, 
                       name='keras-mnist-svc2', 
                       models=[amlModel], 
                       inference_config=inference_config, 
                       deployment_config=aciconfig)

service.wait_for_deployment(show_output=True)

с ошибкой ниже:

ERROR - Service deployment polling reached non-successful terminal state, current service state: Transitioning
Operation ID: 8353cad2-4218-450a-a03b-df418725acb1
More information can be found here: https://machinelearnin1143382465.blob.core.windows.net/azureml/ImageLogs/8353cad2-4218-450a-a03b-df418725acb1/build.log?sv=2018-03-28&sr=b&sig=UKzefxIrm3l7OsXxj%2FT4RsvUfAuhuaBwaz2P4mJu7vY%3D&st=2020-03-11T12%3A23%3A33Z&se=2020-03-11T20%3A28%3A33Z&sp=r
Error:
{
  "code": "EnvironmentBuildFailed",
  "statusCode": 400,
  "message": "Failed Building the Environment."
}

ERROR - Service deployment polling reached non-successful terminal state, current service state: Transitioning
Operation ID: 8353cad2-4218-450a-a03b-df418725acb1
More information can be found here: https://machinelearnin1143382465.blob.core.windows.net/azureml/ImageLogs/8353cad2-4218-450a-a03b-df418725acb1/build.log?sv=2018-03-28&sr=b&sig=UKzefxIrm3l7OsXxj%2FT4RsvUfAuhuaBwaz2P4mJu7vY%3D&st=2020-03-11T12%3A23%3A33Z&se=2020-03-11T20%3A28%3A33Z&sp=r
Error:
{
  "code": "EnvironmentBuildFailed",
  "statusCode": 400,
  "message": "Failed Building the Environment."
}

Когда я загружаю логи, я получаю это:

wheel-0.34.2         | 24 KB     |            |   0% [0m[91m
wheel-0.34.2         | 24 KB     | ########## | 100% [0m
Downloading and Extracting Packages
Preparing transaction: ...working... done
Verifying transaction: ...working... done
Executing transaction: ...working... failed
[91m
ERROR conda.core.link:_execute(502): An error occurred while installing package 'conda-forge::astor-0.7.1-py_0'.
FileNotFoundError(2, "No such file or directory: '/azureml-envs/azureml_6abde325a12ccdba9b5ba76900b99b56/bin/python3.6'")
Attempting to roll back.

[0mRolling back transaction: ...working... done
[91m
FileNotFoundError(2, "No such file or directory: '/azureml-envs/azureml_6abde325a12ccdba9b5ba76900b99b56/bin/python3.6'")


[0mThe command '/bin/sh -c ldconfig /usr/local/cuda/lib64/stubs && conda env create -p /azureml-envs/azureml_6abde325a12ccdba9b5ba76900b99b56 -f azureml-environment-setup/mutated_conda_dependencies.yml && rm -rf "$HOME/.cache/pip" && conda clean -aqy && CONDA_ROOT_DIR=$(conda info --root) && rm -rf "$CONDA_ROOT_DIR/pkgs" && find "$CONDA_ROOT_DIR" -type d -name __pycache__ -exec rm -rf {} + && ldconfig' returned a non-zero code: 1
2020/03/11 12:28:11 Container failed during run: acb_step_0. No retries remaining.
failed to run step ID: acb_step_0: exit status 1

Run ID: cb3 failed after 2m21s. Error: failed during run, err: exit status 1

Обновление 1:

Я попытался запустить: список conda - имя базы conda

внутри ноутбука, и я получил это:

 # packages in environment at /anaconda:
    #
    # Name                    Version                   Build  Channel
    _anaconda_depends         2019.03                  py37_0  
    anaconda                  custom                   py37_1  
    anaconda-client           1.7.2                    py37_0  
    anaconda-navigator        1.9.6                    py37_0  
    anaconda-project          0.8.4                      py_0  
    conda                     4.8.2                    py37_0  
    conda-build               3.17.6                   py37_0  
    conda-env                 2.6.0                         1  
    conda-package-handling    1.6.0            py37h7b6447c_0  
    conda-verify              3.1.1                    py37_0  

    Note: you may need to restart the kernel to use updated packages.

Однако в журнале развертывания я получил это:

Solving environment: ...working... 
done
[91m

==> WARNING: A newer version of conda exists. <==
  current version: 4.5.11
  latest version: 4.8.2

Please update conda by running

    $ conda update -n base -c defaults conda

1 Ответ

2 голосов
/ 12 марта 2020

К сожалению, существует проблема с этой версией Conda (4.5.11). Чтобы выполнить эту задачу в руководстве, вы можете просто обновить зависимость для Tensorflow и Keras с pip, а не conda. Есть причины, почему это не идеально для производственной среды. Документация Azure ML гласит: :

"Если ваша зависимость доступна через Conda и pip (из PyPi), используйте версию Conda, поскольку пакеты Conda обычно поставляются с готовые двоичные файлы, которые делают установку более надежной. "

В этом случае, однако, при обновлении следующего блока кода:

from azureml.core.conda_dependencies import CondaDependencies 

myenv = CondaDependencies()
myenv.add_conda_package("tensorflow")
myenv.add_conda_package("keras")

with open("myenv.yml","w") as f:
    f.write(myenv.serialize_to_string())

# Review environment file
with open("myenv.yml","r") as f:
    print(f.read())

Будет следующим:

from azureml.core.conda_dependencies import CondaDependencies 

myenv = CondaDependencies()
myenv.add_pip_package("tensorflow==2.0.0")
myenv.add_pip_package("azureml-defaults")
myenv.add_pip_package("keras")

with open("myenv.yml", "w") as f:
    f.write(myenv.serialize_to_string())

with open("myenv.yml", "r") as f:
    print(f.read())

Учебное пособие должно быть в состоянии завершить. Дайте мне знать, если что-то из этого не будет работать после того, как это обновление будет сделано.

Я также сообщил об этой проблеме в Microsoft (в отношении версии Conda).

...