Обучающий образ, созданный Sagemaker, не проходит проверку работоспособности при развертывании через Cloudformation? - PullRequest
0 голосов
/ 09 мая 2020

У меня есть простая модель scikit-learn, которую я успешно построил, обучил и развернул с помощью Amazon Sagemaker.

Теперь я хочу взять эту модель и создать для нее автоматическое развертывание с помощью Cloudformation - я ' Я использовал блог Жюльена Саймона в качестве руководства. Я добавил обучающее изображение, URL-адрес данных модели и роль выполнения в шаблон CFN, как показано, и развертывание работает.

Однако я вижу, что конечная точка не отвечает на проверку работоспособности, поэтому CFN запускает ее назад. Информация об ошибке ниже:

[ERROR] Error handling request /ping

AttributeError: 'NoneType' object has no attribute 'startswith'

Полная трассировка стека:

Traceback (most recent call last):
  File "/miniconda3/lib/python3.7/site-packages/gunicorn/workers/base_async.py", line 56, in handle
    self.handle_request(listener_name, req, client, addr)
  File "/miniconda3/lib/python3.7/site-packages/gunicorn/workers/ggevent.py", line 160, in handle_request
    addr)
  File "/miniconda3/lib/python3.7/site-packages/gunicorn/workers/base_async.py", line 107, in handle_request
    respiter = self.wsgi(environ, resp.start_response)
  File "/miniconda3/lib/python3.7/site-packages/sagemaker_sklearn_container/serving.py", line 119, in main
    user_module_transformer = import_module(serving_env.module_name, serving_env.module_dir)
  File "/miniconda3/lib/python3.7/site-packages/sagemaker_sklearn_container/serving.py", line 97, in import_module
    user_module = importlib.import_module(module_name)
  File "/miniconda3/lib/python3.7/importlib/__init__.py", line 118, in import_module
    if name.startswith('.'):

Я вижу, что у других была эта проблема, и решение, похоже, связано с отсутствующими переменными среды -

https://forums.aws.amazon.com/thread.jspa?threadID=313943

https://forums.aws.amazon.com/thread.jspa?threadID=313838

Однако, если я проверю задание по обучению SM (которое, как мне кажется, я имитирую в CF, копируя артефакты изображения и модели), я вижу, что установлены "sagemaker_program" и "sagemaker_submit_directory", но отсутствует "SAGEMAKER_DEFAULT_INVOCATIONS_ACCEPT".

Я также могу посмотрите, есть ли способ создать файл докеров и установить переменные env вручную: https://github.com/aws/sagemaker-containers

Мой вопрос: можно ли заставить эти обучающие образы Sagemaker работать в Cloudformation, не переходя продолжительность создания нового файла / контейнера докеров? Если проблема заключается в переменных ENV, есть ли способ установить их в учебном задании, чтобы они использовались при развертывании образа с помощью шаблона CFN и должным образом реагировали на проверку работоспособности?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...