From 0c6af32dcd896ccafda9970741d94d4b32449043 Mon Sep 17 00:00:00 2001 From: pintaoz Date: Tue, 5 Aug 2025 00:38:33 -0700 Subject: [PATCH 1/2] Add labels to the top level metadata --- src/sagemaker/hyperpod/cli/commands/training.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/sagemaker/hyperpod/cli/commands/training.py b/src/sagemaker/hyperpod/cli/commands/training.py index 25688902..1c7968f0 100644 --- a/src/sagemaker/hyperpod/cli/commands/training.py +++ b/src/sagemaker/hyperpod/cli/commands/training.py @@ -33,12 +33,22 @@ def pytorch_create(version, debug, config): job_name = config.get("name") namespace = config.get("namespace") spec = config.get("spec") + queue_name = config.get("queue_name") + priority = config.get("priority") # Prepare metadata metadata_kwargs = {"name": job_name} if namespace: metadata_kwargs["namespace"] = namespace + metadata_labels = {} + if queue_name is not None: + metadata_labels["kueue.x-k8s.io/queue-name"] = self.queue_name + if priority is not None: + metadata_labels["kueue.x-k8s.io/priority-class"] = self.priority + if metadata_labels: + metadata_kwargs["labels"] = metadata_labels + # Prepare job kwargs job_kwargs = { "metadata": Metadata(**metadata_kwargs), From 392ab0ce0b32abbe0dd16b13c3ee875ce06274d9 Mon Sep 17 00:00:00 2001 From: pintaoz Date: Tue, 5 Aug 2025 09:56:36 -0700 Subject: [PATCH 2/2] Update template --- .../hyperpod_pytorch_job_template/v1_0/model.py | 1 + src/sagemaker/hyperpod/cli/commands/training.py | 9 +-------- 2 files changed, 2 insertions(+), 8 deletions(-) diff --git a/hyperpod-pytorch-job-template/hyperpod_pytorch_job_template/v1_0/model.py b/hyperpod-pytorch-job-template/hyperpod_pytorch_job_template/v1_0/model.py index 3da9dc95..1bafa76f 100644 --- a/hyperpod-pytorch-job-template/hyperpod_pytorch_job_template/v1_0/model.py +++ b/hyperpod-pytorch-job-template/hyperpod_pytorch_job_template/v1_0/model.py @@ -353,6 +353,7 @@ def to_domain(self) -> Dict: result = { "name": self.job_name, "namespace": self.namespace, + "labels": metadata_labels, "spec": job_kwargs, } return result diff --git a/src/sagemaker/hyperpod/cli/commands/training.py b/src/sagemaker/hyperpod/cli/commands/training.py index 1c7968f0..15978f9b 100644 --- a/src/sagemaker/hyperpod/cli/commands/training.py +++ b/src/sagemaker/hyperpod/cli/commands/training.py @@ -33,19 +33,12 @@ def pytorch_create(version, debug, config): job_name = config.get("name") namespace = config.get("namespace") spec = config.get("spec") - queue_name = config.get("queue_name") - priority = config.get("priority") + metadata_labels = config.get("labels") # Prepare metadata metadata_kwargs = {"name": job_name} if namespace: metadata_kwargs["namespace"] = namespace - - metadata_labels = {} - if queue_name is not None: - metadata_labels["kueue.x-k8s.io/queue-name"] = self.queue_name - if priority is not None: - metadata_labels["kueue.x-k8s.io/priority-class"] = self.priority if metadata_labels: metadata_kwargs["labels"] = metadata_labels