AzureML: ResolvePackageNotFound azureml-dataprep - PullRequest
1 голос
/ 17 апреля 2020

У меня есть базовый c ScriptStep в моем конвейере AML, и он просто пытается прочитать прикрепленный набор данных. Когда я выполняю этот простой пример, конвейер завершается ошибкой со следующим в журнале драйверов:

ImportError: azureml-dataprep не установлен. Набор данных нельзя использовать без azureml-dataprep. Пожалуйста, убедитесь, что azureml-dataprep [fuse, pandas] установлен, указав его в зависимостях conda. pandas является необязательным и должен быть установлен только в том случае, если вы собираетесь создать pandas DataFrame из набора данных.

Затем я изменил свой шаг, включив пакет conda, но затем драйвер завершился неудачно с помощью " ResolvePackageNotFound: azureml-dataprep ". Весь файл журнала доступен здесь здесь .

# create a new runconfig object
run_config = RunConfiguration()
run_config.environment.docker.enabled = True
run_config.environment.docker.base_image = DEFAULT_CPU_IMAGE
run_config.environment.python.user_managed_dependencies = False
run_config.environment.python.conda_dependencies = CondaDependencies.create(conda_packages=['azureml-dataprep[pandas,fuse]'])

source_directory = './read-step'
print('Source directory for the step is {}.'.format(os.path.realpath(source_directory)))
step2 = PythonScriptStep(name="read_step",
                         script_name="Read.py", 
                         arguments=["--dataFilePath", dataset.as_named_input('local_ds').as_mount() ],
                         compute_target=aml_compute, 
                         source_directory=source_directory,
                         runconfig=run_config,
                         allow_reuse=False)

У меня нет идей, я был бы очень признателен за любую помощь здесь!

1 Ответ

1 голос
/ 18 апреля 2020

azureml-sdk недоступно на conda, вам нужно установить его с pip.

myenv = Environment(name="myenv")
conda_dep = CondaDependencies().add_pip_package("azureml-dataprep[pandas,fuse]")
myenv.python.conda_dependencies=conda_dep
run_config.environment = myenv

Для получения дополнительной информации об этой ошибке на вкладке журналов есть журнал с именем * 1006. * которые Docker строят логи. Он содержит ошибку, из-за которой conda не удалось найти azureml-dataprep

РЕДАКТИРОВАТЬ:

Вскоре вам больше не придется указывать эту зависимость. Azure команда Data4ML говорит, что azureml-dataprep[pandas,fuse] добавляется как зависимость для azureml-defaults, которая автоматически устанавливается на все образы.

...