Package: sagemaker-tensorflow-training
The SageMaker TensorFlow Training Toolkit is an open source library for making the
TensorFlow framework run onAmazon SageMaker.This repository also contains Dockerfiles which install this library, TensorFlow, and dependencies
for building SageMaker TensorFlow images.For information on running TensorFlow jobs on SageMaker:SageMaker Python SDK documentationSageMaker Notebook ExamplesTable of ContentsGetting StartedBuilding your ImageRunning the testsGetting StartedPrerequisitesMake sure you have installed all of the following prerequisites on your
development machine:DockerFor Testing on GPUNvidia-DockerRecommendedA Python environment management tool. (e.g.PyEnv,VirtualEnv)Building your ImageAmazon SageMakerutilizes Docker containers to run all training jobs & inference endpoints.The Docker images are built from the Dockerfiles specified indocker/.The Dockerfiles are grouped based on TensorFlow version and separated
based on Python version and processor type.The Dockerfiles for TensorFlow 2.0+ are available in thetf-2branch.To build the images, first copy the files underdocker/build_artifacts/to the folder container the Dockerfile you wish to build.# Example for building a TF 2.1 image with Python 3
cp docker/build_artifacts/* docker/2.1.0/py3/.After that, go to the directory containing the Dockerfile you wish to build,
and rundocker buildto build the image.# Example for building a TF 2.1 image for CPU with Python 3
cd docker/2.1.0/py3
docker build -t tensorflow-training:2.1.0-cpu-py3 -f Dockerfile.cpu .Don’t forget the period at the end of thedocker buildcommand!Running the testsRunning the tests requires installation of the SageMaker TensorFlow Training Toolkit code and its test
dependencies.git clone https://github.com/aws/sagemaker-tensorflow-container.git
cd sagemaker-tensorflow-container
pip install -e .[test]Tests are defined intest/and include unit, integration and functional tests.Unit TestsIf you want to run unit tests, then use:# All test instructions should be run from the top level directory
pytest test/unitIntegration TestsRunning integration tests requireDockerandAWS
credentials,
as the integration tests make calls to a couple AWS services. The integration and functional
tests require configurations specified within their respectiveconftest.py.Make sure to update the account-id and region at a minimum.Integration tests on GPU requireNvidia-Docker.Before running integration tests:Build your Docker image.Pass in the correct pytest arguments to run tests against your Docker image.If you want to run local integration tests, then use:# Required arguments for integration tests are found in test/integ/conftest.py
pytest test/integration --docker-base-name <your_docker_image> \
                        --tag <your_docker_image_tag> \
                        --framework-version <tensorflow_version> \
                        --processor <cpu_or_gpu># Example
pytest test/integration --docker-base-name preprod-tensorflow \
                        --tag 1.0 \
                        --framework-version 1.4.1 \
                        --processor cpuFunctional TestsFunctional tests are removed from the current branch, please see them in older branchr1.0.ContributingPlease readCONTRIBUTING.mdfor details on our code of conduct, and the process for submitting pull
requests to us.LicenseSageMaker TensorFlow Containers is licensed under the Apache 2.0 License. It is copyright 2018
Amazon.com, Inc. or its affiliates. All Rights Reserved. The license is available at:http://aws.amazon.com/apache2.0/