

SageMaker Python SDK - это библиотека с открытым исходным кодом для обучения и развертывания моделей машинного обучения на Amazon SageMaker.
С помощью SDK вы можете обучать и развернуть модели, используя популярные рамки глубокого обучения Apache Mxnet и Tensorflow . Вы также можете обучить и развернуть модели с алгоритмами Amazon , которые представляют собой масштабируемые реализации алгоритмов основного машинного обучения, которые оптимизированы для обучения SAGEMAKER и GPU. Если у вас есть свои собственные алгоритмы, встроенные в контейнеры Docker, совместимые с SageMaker, вы также можете обучать и размещать модели, используя их.
Для получения подробной документации, включая ссылку на API, см. Прочитайте документы.
SageMaker Python SDK построен в PYPI, и последняя версия SageMaker Python SDK может быть установлена с PIP следующим образом
PIP установить SageMaker == <Последняя версия от PYPI от https://pypi.org/project/sagemaker/>
Вы можете установить из источника, клонируя этот репозиторий и запустив команду установки PIP в корневом каталоге репозитория:
git clone https://github.com/aws/sagemaker-python-sdk.git CD SageMaker-Python-SDK PIP установка.
SageMaker Python SDK поддерживает Unix/Linux и Mac.
SageMaker Python SDK тестируется на:
Библиотека sagemaker имеет включенную телеметрию, чтобы помочь нам лучше понять потребности пользователей, диагностировать проблемы и предоставить новые функции. Эта телеметрия отслеживает использование различных функций SageMaker.
Если вы предпочитаете отказаться от телеметрии, вы можете легко сделать это, установив параметр TelemetryOptOut true в конфигурации по умолчанию SDK. Для получения подробных инструкций, пожалуйста, посетите настройку и использование по умолчанию с помощью SageMaker Python SDK.
Как управляемый сервис, Amazon SageMaker выполняет операции от вашего имени на оборудовании AWS, которым управляет Amazon SageMaker. Amazon SageMaker может выполнять только операции, которые позволяет пользователь. Вы можете прочитать больше о том, какие разрешения необходимы в документации AWS.
SageMaker Python SDK не должен требовать каких -либо дополнительных разрешений, помимо того, что требуется для использования SageMaker. Однако, если вы используете роль IAM с путем в нем, вы должны предоставить разрешение на iam:GetRole .
SageMaker Python SDK лицензирован по лицензии Apache 2.0. Это Copyright Amazon.com, Inc. или ее филиалы. Все права защищены. Лицензия доступна по адресу: http://aws.amazon.com/apache2.0/
SageMaker Python SDK имеет модульные тесты и интеграционные тесты.
Вы можете установить библиотеки, необходимые для запуска тестов, запустив pip install --upgrade .[test] pip install --upgrade .[test]
Модульные тесты
Мы запускаем модульные тесты с Tox, которая является программой, которая позволяет запускать модульные тесты для нескольких версий Python, а также убедитесь, что код подходит для нашего руководства по стилю. Мы запускаем Tox со всеми нашими поддерживаемыми версиями Python, поэтому для запуска модульных тестов с той же конфигурацией, которую мы делаем, вам нужно иметь переводчиков для установленных версий Python.
Чтобы запустить модульные тесты с Tox, запустите:
Tox Tests/Unit
Интеграционные тесты
Чтобы запустить интеграционные тесты, должны быть выполнены следующие предпосылки
SageMakerRole . Он должен иметь прикрепленную политику AmazonAgeMakerFulLaccess, а также политику с необходимыми разрешениями для использования упругого вывода.aws ecr create-repository --repository-name remote-function-dummy-containerМы рекомендуем избирательно запустить только те интеграционные тесты, которые вы хотите запустить. Вы можете отфильтровать с помощью отдельных имен функций тестирования с помощью:
tox --k 'test_i_care_about'
Вы также можете запустить все интеграционные тесты, выполнив следующую команду, которая запускает их последовательно, что может занять некоторое время:
Tox - тесты/Integ
Вы также можете запустить их параллельно:
Tox --n Авто -тесты/Integ
Чтобы включить все крючки Git в каталоге .githooks, запустите эти команды в каталоге репозитория:
Найти .git/Hooks -type l -exec rm {} ;
Найти .githooks -Type f -exec ln -Sf ../../ {} .git/kroick/;
Чтобы включить отдельный крюк с GIT, просто переместите его из .Gitchooks/ Directory в каталог .git/ Hooks/.
Установите среду Python и установите зависимости, перечисленные в doc/requirements.txt :
# conda Conda Create -n SageMaker Python = 3,7 Conda активируйте SageMaker Conda Install Sphinx = 3.1.1 SPHINX_RTD_THEME = 0.5.0 # Pip PIP установка -R DOC/TEDIP.TXT
Клонировать/разветвляется репо и установите локальную версию:
Установка PIP -обновление.
Затем cd в каталог sagemaker-python-sdk/doc и запустите:
сделать HTML
Вы можете редактировать шаблоны для любой из страниц в документах, редактируя файлы .rst в каталоге doc , а затем запустив make html снова.
Предварительно просмотрите сайт с помощью веб -сервера Python:
CD _Build/HTML Python -m http.server 8000
Посмотреть веб -сайт, посетив http: // localhost: 8000
С помощью SageMaker Sparkml служащей теперь вы можете выполнить прогнозы против модели SparkML в SageMaker. Чтобы разместить модель SparkML в SageMaker, она должна быть сериализована с библиотекой MLeap .
Для получения дополнительной информации о MLEAP см. Https://github.com/combust/mleap.
Поддерживаемая основная версия Spark: 3.3 (версия MLEAP - 0,20,0)
Вот пример того, как создать экземпляр класса SparkMLModel и использовать метод deploy() для создания конечной точки, которую можно использовать для выполнения прогнозирования против вашей обученной модели SparkML.
sparkml_model = SparkMLModel ( model_data = 's3://path/to/model.tar.gz' , env = { 'SAGEMAKER_SPARKML_SCHEMA' : schema })
model_name = 'sparkml-model'
endpoint_name = 'sparkml-endpoint'
predictor = sparkml_model . deploy ( initial_instance_count = 1 , instance_type = 'ml.c4.xlarge' , endpoint_name = endpoint_name ) Как только модель развернута, мы можем вызвать конечную точку с помощью полезной нагрузки CSV , как это:
payload = 'field_1,field_2,field_3,field_4,field_5'
predictor . predict ( payload ) Для получения дополнительной информации о различных форматах content-type и Accept , а также о структуре schema , которую распознает SageMaker Sparkml Serving, см. Справочный контейнер SageMaker Sparkml.