Skip to content

Commit ed4fbe8

Browse files
cj-zhangJoseph Zhang
andauthored
Directly use customer-provided endpoint name for ModelBuilder deployment. (#5246)
* Directly use customer-provided endpoint name for deployment in ModelBuilder. * Fix ModelBuilder UTs after removing unique_name_from_base import. --------- Co-authored-by: Joseph Zhang <[email protected]>
1 parent 23c3840 commit ed4fbe8

File tree

4 files changed

+6
-9
lines changed

4 files changed

+6
-9
lines changed

src/sagemaker/serve/builder/model_builder.py

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@
116116
validate_image_uri_and_hardware,
117117
)
118118
from sagemaker.serverless import ServerlessInferenceConfig
119-
from sagemaker.utils import Tags, unique_name_from_base
119+
from sagemaker.utils import Tags
120120
from sagemaker.workflow.entities import PipelineVariable
121121
from sagemaker.huggingface.llm_utils import (
122122
get_huggingface_model_metadata,
@@ -1983,8 +1983,6 @@ def deploy(
19831983
"""
19841984
if not hasattr(self, "built_model") and not hasattr(self, "_deployables"):
19851985
raise ValueError("Model needs to be built before deploying")
1986-
if not update_endpoint:
1987-
endpoint_name = unique_name_from_base(endpoint_name)
19881986

19891987
if not hasattr(self, "_deployables"):
19901988
if not inference_config: # Real-time Deployment

tests/integ/sagemaker/serve/test_base_model_builder_deploy.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -185,7 +185,7 @@ def invoke(self, input_object: object, model: object):
185185

186186
def test_real_time_deployment(xgboost_model_builder):
187187
real_time_predictor = xgboost_model_builder.deploy(
188-
endpoint_name="test", initial_instance_count=1
188+
endpoint_name=f"test-{uuid.uuid1().hex}", initial_instance_count=1
189189
)
190190

191191
assert real_time_predictor is not None
@@ -198,7 +198,7 @@ def test_real_time_deployment(xgboost_model_builder):
198198

199199
def test_serverless_deployment(xgboost_model_builder):
200200
serverless_predictor = xgboost_model_builder.deploy(
201-
endpoint_name="test1", inference_config=ServerlessInferenceConfig()
201+
endpoint_name=f"test1-{uuid.uuid1().hex}", inference_config=ServerlessInferenceConfig()
202202
)
203203

204204
assert serverless_predictor is not None

tests/integ/sagemaker/serve/test_serve_model_builder_inference_component_happy.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414

1515
import pytest
1616
import tests.integ
17+
import uuid
1718

1819
from botocore.exceptions import ClientError
1920
from sagemaker.predictor import Predictor
@@ -88,7 +89,7 @@ def test_model_builder_ic_sagemaker_endpoint(
8889
with timeout(minutes=SERVE_SAGEMAKER_ENDPOINT_TIMEOUT):
8990
try:
9091
logger.info("Deploying and predicting in SAGEMAKER_ENDPOINT mode...")
91-
endpoint_name = "llama-ic-endpoint-name"
92+
endpoint_name = f"llama-ic-endpoint-name-{uuid.uuid1().hex}"
9293
predictors = chain.deploy(
9394
instance_type=INSTANCE_TYPE,
9495
initial_instance_count=1,

tests/unit/sagemaker/serve/builder/test_model_builder.py

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4241,9 +4241,7 @@ def test_neuron_configurations_rule_set(self):
42414241
"Batch",
42424242
],
42434243
)
4244-
@patch("sagemaker.serve.builder.model_builder.unique_name_from_base")
4245-
def test_deploy(mock_unique_name_from_base, test_case):
4246-
mock_unique_name_from_base.return_value = "test"
4244+
def test_deploy(test_case):
42474245
model: Model = MagicMock()
42484246
model_builder = ModelBuilder(
42494247
model="meta-llama/Meta-Llama-3-8B-Instruct",

0 commit comments

Comments
 (0)