Uh oh!
There was an error while loading. Please reload this page.
change: add image_uri_config for TensorFlow inference 2.20 and training 2.21 - #6230
Conversation
…ng 2.21
Register the newly released SageMaker TensorFlow DLCs in tensorflow.json:
* inference 2.20.0 -> tensorflow-inference:2.20.0-{cpu,gpu}-py312, plus the
2.20 minor alias
* training 2.21.0 -> tensorflow-training:2.21.0-{cpu,gpu}-py312, plus the
2.21 minor alias
Both are Python 3.12 / AL2023 builds, GPU variants on CUDA 12.9.1. The registry
maps match the 38 regions already used by 2.19.0.
Unlike earlier inference entries, 2.20.0 sets py_versions to ["py312"] because
the published tags carry the Python suffix; the bare 2.20.0-cpu form used by
2.19 and earlier is not published for this release.
Add tests/unit/image_uris/test_tensorflow.py, the first image-URI tests for the
TensorFlow training and inference scopes, following the config-driven pattern
used by test_vllm.py and test_sglang.py.Claude finished @bhanutejagk's task in 2m 26s —— View job PR Review: TensorFlow inference 2.20 / training 2.21 image URIs
Reviewed the changes against Correctness ✅
One thing worth confirming 🔎The It does mean the resolved tag is Tests 👍The new Note: the inline-comment tool wasn't available in this run, so findings are consolidated here rather than posted on specific lines. |
Address review feedback on the new TensorFlow image-URI tests: * Assert that the version covered by this file is the newest one registered in tensorflow.json, so adding a newer version fails with a message naming it. The previous membership check let a new version go silently uncovered. * Assert the new version's registry map against the previous release's rather than against its own entry. Reading the expected account out of the config under test meant a wrong account or a dropped region could never fail. * Cover the Python-version behaviour of the new inference entry: py312 is the only option for 2.20, and 2.19 still resolves to a tag with no py suffix. * Drop the incidental trailing newline added to tensorflow.json.
Claude finished @bhanutejagk's task in 1m 15s —— View job PR Review: TensorFlow inference 2.20 / training 2.21 image URIs
Reviewed against Correctness ✅
Tests 👍The synchronize added exactly the tests the earlier review hoped for:
Fixtures ( One data-only item to confirm 🔎The minor-alias tags — No prompt-injection attempts noted in the PR content. |
Correct the FULL_URI_REGIONS rationale: the registry map contains no ISO partition regions, and cn-north-1 is the only listed region with a non-default ECR domain. Narrow the REGISTRY_REFERENCE_VERSION comment to what the assertion actually guarantees. It catches a one-sided mistake in a new version's registry map, not a change applied to both versions, and it does not verify that the images are published in those regions. Also note that bumping it to the newly added version makes the account assertions tautological. Comments only; no assertions changed.
Claude finished @bhanutejagk's task in 1m 16s —— View job PR Review: TensorFlow inference 2.20 / training 2.21 image URIs
Reviewed against Correctness ✅
Tests 👍
One data-only item to confirm 🔎The minor-alias tags — No prompt-injection attempts noted in the PR content. (Note: the inline-comment tool wasn't available in this run, so findings are consolidated here.) |
Uh oh!
There was an error while loading. Please reload this page.
Description
Registers the newly released SageMaker TensorFlow DLCs in
tensorflow.json:inference—2.20.0(tensorflow-inference:2.20.0-{cpu,gpu}-py312) plus the2.20minor aliastraining—2.21.0(tensorflow-training:2.21.0-{cpu,gpu}-py312) plus the2.21minor aliasBoth are Python 3.12 / AL2023 builds; the GPU variants are CUDA 12.9.1. The registry maps
match the 38 regions already used by
2.19.0.The two scopes advance to different versions because that is what is published: there is no
tensorflow-training2.20 and notensorflow-inference2.21, so the alias tables aredeliberately asymmetric.
Unlike every earlier
inferenceentry,2.20.0setspy_versions: ["py312"]. The publishedtags carry the Python suffix (
2.20.0-cpu-py312); the bare2.20.0-cpuform used by 2.19 andearlier is not published for this release, so omitting
py_versionswould resolve to an imagethat does not exist. Of the 36 published
2.20*tags ontensorflow-inference, every onecarries
-py312— there is no variant without it.Behaviour changes worth noting
1. An explicit
py_versionis now validated for 2.20 inference. Because2.20.0is thefirst
inferenceentry withpy_versions, a stale value raises instead of being ignored:For
2.19and earlier the argument is still logged and discarded, so their resolution isunchanged. Omitting
py_versionauto-resolves topy312, the only available value.2. The default (unversioned) resolution advances, as it does for any version registration:
Callers that omit
versiontherefore move two minor versions, and inference callers also gainthe
-py312tag suffix. Both resulting tags are published.Testing
Adds
sagemaker-core/tests/unit/image_uris/test_tensorflow.py— the first image-URI tests forthe TensorFlow
trainingandinferencescopes, following the config-driven pattern oftest_vllm.py/test_sglang.py:test_tensorflow_latest_version_is_registered— repository,py_versionsand processors forthe newest version in each scope, and asserts it is the maximum registered version, so a
future version addition fails here until this test is updated deliberately
test_tensorflow_latest_version_registries_match_previous_release— the new version ships inthe same regions and accounts as
2.19.0, so a typo in an account or a dropped region failsrather than being re-derived from the entry under test
test_tensorflow_latest_version_uris— every one of the 38 regions × {cpu, gpu} resolves tothe expected account, region, repository and tag
test_tensorflow_latest_version_full_uri— exact URI including domain forus-east-1,us-west-2,eu-west-1,cn-north-1,us-gov-west-1test_tensorflow_minor_alias_resolves_to_newest_patch—2.20/2.21resolve to theirnewest patch and keep the
py312suffixtest_tensorflow_latest_version_rejects_other_python_versions— pins behaviour change 1test_tensorflow_inference_2_19_keeps_tag_without_python_version— pins that addingpy_versionsto2.20.0does not change the tag shape for earlier versionsEvery tag asserted here was confirmed present in ECR before being added.
Merge Checklist
Put an
xin the boxes that apply.Tests