{"id":15710280,"url":"https://github.com/aws/sagemaker-distribution","last_synced_at":"2026-05-01T21:05:36.385Z","repository":{"id":169128465,"uuid":"635968047","full_name":"aws/sagemaker-distribution","owner":"aws","description":"A set of Docker images that include popular frameworks for machine learning, data science and visualization.","archived":false,"fork":false,"pushed_at":"2026-04-28T21:32:59.000Z","size":6997,"stargazers_count":147,"open_issues_count":48,"forks_count":110,"subscribers_count":8,"default_branch":"main","last_synced_at":"2026-04-28T22:02:47.841Z","etag":null,"topics":["aws","docker","jupyter","python","pytorch","sagemaker","tensorflow"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/aws.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":"support_policy.md","governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":"NOTICE","maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-05-03T21:04:42.000Z","updated_at":"2026-04-27T15:48:21.000Z","dependencies_parsed_at":null,"dependency_job_id":"6e48a9d7-a9e1-4cd4-8211-d16221766959","html_url":"https://github.com/aws/sagemaker-distribution","commit_stats":{"total_commits":236,"total_committers":43,"mean_commits":5.488372093023256,"dds":0.8177966101694916,"last_synced_commit":"57e64c0d0af71a2ee2844f37bec05302556961be"},"previous_names":["aws/sagemaker-distribution"],"tags_count":283,"template":false,"template_full_name":"amazon-archives/__template_Apache-2.0","purl":"pkg:github/aws/sagemaker-distribution","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aws%2Fsagemaker-distribution","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aws%2Fsagemaker-distribution/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aws%2Fsagemaker-distribution/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aws%2Fsagemaker-distribution/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aws","download_url":"https://codeload.github.com/aws/sagemaker-distribution/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aws%2Fsagemaker-distribution/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32512707,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-30T13:12:12.517Z","status":"online","status_checked_at":"2026-05-01T02:00:05.856Z","response_time":64,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aws","docker","jupyter","python","pytorch","sagemaker","tensorflow"],"created_at":"2024-10-03T21:05:33.312Z","updated_at":"2026-05-01T21:05:36.361Z","avatar_url":"https://github.com/aws.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Amazon SageMaker Distribution\n\nAmazon SageMaker Distribution is a set of Docker images that include popular frameworks for machine learning, data\nscience and visualization. For the list of supported SageMaker Distributions images, see [SageMaker Distributions Images](support_policy.md#supported-image-versions).\n\nThese images come in two variants, CPU and GPU, and include deep learning frameworks like PyTorch, TensorFlow and\nKeras; popular Python packages like numpy, scikit-learn and pandas; and IDEs like Jupyter Lab. The distribution contains\nthe _latest_ versions of all these packages _such that_ they are _mutually compatible_.\n\nStarting with v2.9.5+ and new v3.5+, the images include Amazon Q Agentic Chat integration for enhanced AI-powered development assistance in JupyterLab.\n\n### Amazon Q Agentic Chat Integration\n\nThe images include pre-configured Amazon Q artifacts and shared web client libraries:\n- `/etc/web-client/libs/` - Shared JavaScript libraries (JSZip) for all web applications\n- `/etc/amazon-q-agentic-chat/artifacts/jupyterlab/` - Amazon Q server and client artifacts for JupyterLab\n\nThis project follows semver (more on that below) and comes with a helper tool to automate new releases of the\ndistribution.\n\n## Getting started\n\nIf you just want to use the images, you do _not_ need to use this GitHub repository. Instead, you can pull pre-built\nand ready-to-use images from our [AWS ECR Gallery repository](https://gallery.ecr.aws/sagemaker/sagemaker-distribution).\n\n### Dependency versions included in a particular Amazon SageMaker Distribution version\n\nIf you want to check what packages are installed in a given version of Amazon SageMaker Distribution, you can find that\nin the relevant _RELEASE.md_ file in the [build_artifacts](build_artifacts) directory.\n\n### Versioning strategy\n\nAmazon SageMaker Distribution supports semantic versioning as described on [semver.org](https://semver.org/). A major\nversion upgrade of Amazon SageMaker Distribution allows major version upgrades of all its dependencies, and similarly\nfor minor and patch version upgrades. However, it is important to note that Amazon SageMaker Distribution’s ability to\nfollow semver guidelines is currently dependent on how its dependencies adhere to them.\n\nSome dependencies, such as Python, will be treated differently. Amazon SageMaker Distribution will allow a minor\nupgrade of Python (say, 3.10 to 3.11) only during a major upgrade (say, 4.8 to 5.0).\n\n### Image tags\n\nOur current image tagging scheme is: `\u003cAMAZON_SAGEMAKER_DISTRIBUTION_VERSION_NUMBER\u003e-\u003cCPU_OR_GPU\u003e`. For example, the CPU\nversion of Amazon SageMaker Distribution's _v0.1.2_ will carry the following tags:\n\n1. `0.1.2-cpu`: Once an image is tagged with such a patch version, that tag will _not_ be assigned to any other image\nin future.\n1. `0.1-cpu`: this, and the two below, _can_ change when new versions of Amazon SageMaker Distribution are released.\n1. `0-cpu`\n1. `latest-cpu`\n\nSo, if you want to stay on the latest software as and when release by Amazon SageMaker Distribution, you can use\n`latest-cpu` and do a `docker pull latest-cpu` when needed. If you use, say, `0.1.2-cpu`, the underlying distribution\nwill remain the same over time.\n\n### Package Staleness Report\n\nIf you want to generate/view the staleness report for each of the individual packages in a given\nSageMaker distribution image version, then run the following command:\n\n```\nVERSION=\u003cInsert SageMaker Distribution version in semver format here. example: 0.4.2\u003e\npython ./src/main.py generate-staleness-report --target-patch-version $VERSION\n```\n\n### Package Size Delta Report\n\nIf you want to generate/view the package size delta report for a given\nSageMaker distribution image version comparing to a base image version, then run the following command:\n\n```\nBASE_PATCH_VERSION=\u003cInsert SageMaker Distribution version of the base image in semver format here. example: 1.6.1\u003e\nVERSION=\u003cInsert SageMaker Distribution version of the target image in semver format here. example: 1.6.2\u003e\npython ./src/main.py generate-size-report --base-patch-version $BASE_PATCH_VERSION --target-patch-version $VERSION\n```\n\n\n## Example use cases\n\nHere are some examples on how you can try out one of our images.\n\n### _Local_ environment, such as your laptop\n\nThe easiest way to get it running on your laptop is through the Docker CLI:\n\n```shell\nexport ECR_IMAGE_ID='INSERT_IMAGE_YOU_WANT_TO_USE'\ndocker run -it \\\n    -p 8888:8888 \\\n    -v `pwd`/sample-notebooks:/home/sagemaker-user/sample-notebooks \\\n    $ECR_IMAGE_ID jupyter-lab --no-browser --ip=0.0.0.0\n```\n\n(If you have access to Nvidia GPUs, you can pass `--gpus=all` to the Docker command.)\n\nIn the image, we also have entrypoints built in, that automatically starts IDE server and automatically restarts\nIDE server in case of minor IDE server interruptions or crashes. For example, to start JupyterLab server using the\nentrypoint built in:\n```shell\nexport ECR_IMAGE_ID='INSERT_IMAGE_YOU_WANT_TO_USE'\ndocker run -it \\\n    -p 8888:8888 \\\n    --entrypoint entrypoint-jupyter-server \\\n    -v `pwd`/sample-notebooks:/home/sagemaker-user/sample-notebooks \\\n    $ECR_IMAGE_ID\n```\n\nIn the console output, you'll then see a URL similar to `http://127.0.0.1:8888/lab?token=foo`. Just open that URL in\nyour browser, create a Jupyter Lab notebook or open a terminal, and start hacking.\n\nNote that the sample command above bind mounts a directory in `pwd` inside the container. That way, if you were to\nre-create the container (say, to use a different version or CPU/GPU variant), any files you created within that\ndirectory (such as Jupyter Lab notebooks) will persist.\n\n### Amazon SageMaker Studio\n\n\u003e [Amazon SageMaker Studio](https://docs.aws.amazon.com/sagemaker/latest/dg/studio.html) is a web-based, integrated\n\u003e development environment (IDE) for machine learning that lets you build, train, debug, deploy, and monitor your\n\u003e machine learning models.\n\nTo use the sagemaker-distribution image in SageMaker Studio, select `SageMaker Distribution v{Major_version} {CPU/GPU}` using the [SageMaker Studio Launcher](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-launcher.html).\n\n### \"I want to directly use the Conda environment, not via a Docker image\"\n\nAmazon SageMaker Distribution supports full reproducibility of Conda environments, so you don't necessarily need to use\nDocker. Just find the version number you want to use in the [build_artifacts](build_artifacts) directory, open one of\n_cpu.env.out_ or _gpu.env.out_ and follow the instructions in the first 2 lines.\n\n### Customizing image\n\nIf you'd like to create a new Docker image on top of what we offer, we recommend you use `micromamba install ...` instead of `pip install ...`.\n\nFor example:\n```\nFROM public.ecr.aws/sagemaker/sagemaker-distribution:latest-cpu\nUSER $ROOT\nRUN apt-get install -y vim\nUSER $MAMBA_USER\nRUN micromamba install sagemaker-inference --freeze-installed --yes --channel conda-forge --name base\n```\n\n## FIPS\n\nAs of sagemaker-distribution: v0.12+, v1.6+, and v2+, the images come with FIPS 140-2 validated openssl provider\navailable for use. You can enable the FIPS provider by running:\n\n`export OPENSSL_CONF=/opt/conda/ssl/openssl-fips.cnf`\n\nFor more info on the FIPS provider see: https://github.com/openssl/openssl/blob/master/README-FIPS.md\n\n## Security\n\nSee [CONTRIBUTING](CONTRIBUTING.md#security-issue-notifications) for more information.\n\n## License\n\nThis project is licensed under the Apache-2.0 License.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faws%2Fsagemaker-distribution","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faws%2Fsagemaker-distribution","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faws%2Fsagemaker-distribution/lists"}