Как изменить версию Python в Azure Machine Learning SDK ContainerImage с помощью CondaDependencies - PullRequest
0 голосов
/ 07 января 2019

Я пытаюсь поместить мою модель Faster R-CNN в экземпляр контейнера на ACI. Для этого мне нужно, чтобы мой образ докера имел версию Python 3.5. *. Я указываю это в моем файле conda yaml, но каждый раз, когда я запускаю экземпляр и docker run -it *** /bin/bash в него, я вижу, что он имеет только Python 3.6.7.

https://user -images.githubusercontent.com / 21140767 / 50680590-82b20b80-1008-11e9-9bfe-4a0e71084ce0.png

Как я могу получить свой образ Docker для Python версии 3.5. *? Я уже пробовал conda, устанавливая Python версии 3.5.2, но это не сработало, так как в итоге у него не было 3.5.2, а только 3.6.7. (dfimage позволяет увидеть докер-файл, из которого было создано изображение, https://hub.docker.com/r/chenzj/dfimage/).

https://user -images.githubusercontent.com / 21140767/50680673-d6245980-1008-11e9-9d48-71a7c150d925.png

Мой ямл:

name: project_environment
dependencies:
- python=3.5.2

- pip:
  - matplotlib
  - opencv-python==3.4.3.18
  - azureml-core==1.0.6
  - numpy
  - cntk
  - cython
channels:
- anaconda

Блокнот для ноутбука: из azureml.core.conda_dependencies import CondaDependencies

svmandss = CondaDependencies.create(python_version="3.5.2", pip_packages=[
    "matplotlib",
    "opencv-python==3.4.3.18",
    "azureml-core",
    "numpy",
    "cntk",
    "cython"], )
svmandss.add_channel('anaconda')

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

Еще одна ячейка ноутбука со спецификациями ContainerImage.

image_config = ContainerImage.image_configuration(execution_script="score_fasterrcnn.py",runtime="python",conda_file="./fasterrcnn.yml",dependencies=listdir("utils"),docker_file="./Dockerfile")

service = Webservice.deploy_from_model(workspace=ws,
                                       name='faster-rcnn',
                                       deployment_config=aciconfig,
                                       models=[Model(workspace=ws, name='Faster-RCNN')],
                                       image_config=image_config)

service.wait_for_deployment(show_output=True)

Примечание

Для лучшей читабельности смотрите мою проблему с GitHub: (https://github.com/Azure/MachineLearningNotebooks/issues/163).

Ответы [ 2 ]

0 голосов
/ 08 января 2019

В настоящее время версия Python фиксируется на том, что находится в базовом образе Azure ML, при развертывании веб-службы. Мы расследуем устранение этого ограничения в будущем.

0 голосов
/ 08 января 2019

EDIT:

Это больше не проблема для меня. Я нашел другой способ заставить мой код работать с версией Python 3.6.7.

Это все еще проблема, если вы спросите меня. Если в будущем мне понадобится Python версии 3.5, то решения пока не будет.

Вы можете опубликовать ответ, если хотите.

...