

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 什麼是 中的服務環境 AWS Batch
<a name="what-are-service-environments"></a>

服務環境是一種 AWS Batch 資源，其中包含 AWS Batch 與 SageMaker AI 整合所需的組態參數。服務環境 AWS Batch 可讓 AWS Batch提交和管理 SageMaker Training 任務，同時提供佇列、排程和優先順序管理功能。

服務環境可解決資料科學團隊在管理機器學習工作負載時面臨的常見挑戰。組織通常會限制訓練模型可用的執行個體數量，以防止意外超支、符合預算限制、節省預留執行個體的成本，或針對工作負載使用特定的執行個體類型。不過，資料科學家可能想要同時執行比其配置執行個體更多工作負載，需要手動協調來決定何時執行哪些工作負載。

此協調挑戰會影響各種規模的組織，從只有少數資料科學家的團隊到大規模操作。隨著組織的成長，複雜性會增加，需要更多時間來管理工作負載協調，並且通常需要基礎設施管理員的參與。這些手動工作會浪費時間並降低執行個體效率，為客戶帶來實際成本。

透過服務環境，資料科學家和 ML 工程師可以將優先順序為可設定佇列的 SageMaker 訓練任務提交，確保工作負載在有資源可用時自動執行，無需介入。此整合利用 AWS Batch廣泛的佇列和排程功能，讓客戶自訂其佇列和排程政策，以符合其組織的目標。

## 服務環境如何與其他 AWS Batch 元件搭配使用
<a name="service-environment-integration"></a>

服務環境與其他 AWS Batch 元件整合，以啟用 SageMaker Training 任務佇列：
+ **任務佇列** - 服務環境與任務佇列相關聯，讓佇列能夠處理 SageMaker Training 任務的服務任務
+ **服務任務** - 當您將服務任務提交至與服務環境相關聯的佇列時， AWS Batch 會使用環境的組態來提交對應的 SageMaker Training 任務
+ **排程政策** - 服務環境使用 AWS Batch 排程政策來排定優先順序和管理 SageMaker Training 任務的執行順序

此整合可讓您利用 AWS Batch成熟的佇列和排程功能，同時維護 SageMaker Training 任務的完整功能和靈活性。

## 服務環境的最佳實務
<a name="service-environment-best-practices"></a>

服務環境提供大規模管理 SageMaker Training 任務的功能。遵循這些最佳實務可協助您最佳化成本、效能和營運效率，同時避免可能影響機器學習工作流程的常見組態問題。

規劃服務環境容量時，請考慮適用於 SageMaker Training 任務佇列的特定配額和限制。每個服務環境都有以執行個體數量表示的最大容量限制，可直接控制可同時執行的 SageMaker 訓練任務數量。了解這些限制有助於防止資源爭用，並確保可預測的任務執行時間。

最佳服務環境效能取決於了解 SageMaker Training 任務排程的獨特特性。與傳統容器化任務不同，服務任務會轉換到 `SCHEDULED` 狀態，而 SageMaker AI 會取得並佈建必要的訓練執行個體。這表示任務開始時間可能會因執行個體可用性和區域容量而有很大差異。

**重要**  
服務環境具有特定的配額，可能會影響您擴展 SageMaker Training 工作負載的能力。每個帳戶最多可以建立 50 個服務環境，每個任務佇列僅支援一個相關聯的服務環境。此外，個別任務的服務請求承載限制為 10 KiB，而 `SubmitServiceJob` API 限制為每個帳戶每秒 5 次交易。在容量規劃期間了解這些限制可防止非預期的擴展限制。

有效監控服務環境需要同時注意 AWS Batch 和 SageMaker AI 服務指標。[任務狀態轉換](service-job-status.md)可提供有關系統效能的寶貴洞見，特別是在`SCHEDULED`狀態中花費的時間，這表示容量可用性模式。服務環境會維護自己的生命週期狀態，類似於運算環境，並透過 `CREATING`、`INVALID`、 `VALID`和 狀態進行轉換，這些`DELETING`狀態應受到營運運作狀態的監控。具有成熟監控實務的組織通常會追蹤佇列深度、任務完成率和執行個體使用率模式，以隨著時間最佳化其服務環境組態。