Прошлой ночью я столкнулся с ошибками импорта в GDAL при попытке отправить эксперимент с использованием Azure Python SDK. Ниже приведен конструктор, который я использовал для Оценщика.
Я пытался изменить версии модулей, включая gdal и poppler, но безрезультатно.
Ниже приведен код, который я использую для построения Оценщика:
script_params = {
'--data-folder': ds.as_mount()
}
est = Estimator(source_directory=script_folder,
script_params=script_params,
compute_target=cpu_cluster,
entry_script='georeference_rasters2.py',
conda_packages=['numpy','pandas','gdal'],
pip_packages=['learn2map','rasterio','argparse'])
И это ошибка импорта, которую я получаю:
Traceback (most recent call last):
File "georeference_rasters2.py", line 5, in <module>
from osgeo import gdal
File "/azureml-envs/azureml_e9a775e324129d22aa5680cb26b4a846/lib/python3.6/site-packages/osgeo/__init__.py", line 21, in <module>
_gdal = swig_import_helper()
File "/azureml-envs/azureml_e9a775e324129d22aa5680cb26b4a846/lib/python3.6/site-packages/osgeo/__init__.py", line 17, in swig_import_helper
_mod = imp.load_module('_gdal', fp, pathname, description)
File "/azureml-envs/azureml_e9a775e324129d22aa5680cb26b4a846/lib/python3.6/imp.py", line 242, in load_module
return load_dynamic(name, filename, file)
File "/azureml-envs/azureml_e9a775e324129d22aa5680cb26b4a846/lib/python3.6/imp.py", line 342, in load_dynamic
return _load(spec)
ImportError: libpoppler.so.76: cannot open shared object file: No such file or directory
Я также пытался использовать другой образ докера для построения Оценщика:
script_params = {
'--data-folder': ds.as_mount()
}
est = Estimator(source_directory=script_folder,
script_params=script_params,
compute_target=cpu_cluster,
use_docker=True,
custom_docker_image='mcr.microsoft.com/azureml/o16n-sample-user-base/ubuntu-miniconda',
entry_script='georeference_rasters2.py',
conda_packages=['numpy','pandas','gdal'],
pip_packages=['learn2map','rasterio','argparse'])