Skip to content

Commit e4f4816

Browse files
author
Eli Davidson
committed
fix: bug in get latest version was getting the max sorted alphabetically
instead of sem-ver
1 parent f6da8e5 commit e4f4816

File tree

3 files changed

+13
-3
lines changed

3 files changed

+13
-3
lines changed

src/sagemaker/jumpstart/cache.py

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -540,9 +540,7 @@ def _select_version(
540540
"""
541541

542542
if version_str == "*":
543-
if len(available_versions) == 0:
544-
return None
545-
return str(max(available_versions))
543+
return utils.get_latest_version(available_versions)
546544

547545
if model_type == JumpStartModelType.PROPRIETARY:
548546
if "*" in version_str:

src/sagemaker/jumpstart/utils.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1630,3 +1630,7 @@ def get_draft_model_content_bucket(provider: Dict, region: str) -> str:
16301630
return get_jumpstart_gated_content_bucket(region=region)
16311631
return get_jumpstart_content_bucket(region=region)
16321632
return neo_bucket
1633+
1634+
def get_latest_version(versions: List[str]) -> Optional[str]:
1635+
return None if not versions else max(versions, key=Version)
1636+

tests/unit/sagemaker/jumpstart/test_utils.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2143,6 +2143,14 @@ def test_add_instance_rate_stats_to_benchmark_metrics_client_ex(
21432143
def test_has_instance_rate_stat(stats, expected):
21442144
assert utils.has_instance_rate_stat(stats) is expected
21452145

2146+
def test_get_latest_version():
2147+
assert utils.get_latest_version(["2.9.1", "2.16.0", "1.0.0"]) == "2.16.0"
2148+
2149+
def test_get_latest_version_empty_list_is_none():
2150+
assert utils.get_latest_version([]) == None
2151+
2152+
def test_get_latest_version_none_is_none():
2153+
assert utils.get_latest_version(None) == None
21462154

21472155
@pytest.mark.parametrize(
21482156
"data, expected",

0 commit comments

Comments
 (0)