Ray Train DLC 免除在 EKS 上進行分散式訓練時建立映像檔的需要
AWS 於 10 月 28 日發布一個使用 Ray Train DLC、毋須建立自訂容器映像檔的八 GPU 訓練範例。其 Deep Learning Container 是一個已打包的軟件環境,提供訓練框架及網絡程式庫;餘下工作則在於叢集設定及工作負載驗證。
該範例在 Amazon EKS(AWS 的受管 Kubernetes 服務)上,橫跨兩個 g6.12xlarge 執行個體執行語言模型 Qwen2.5-1.5B。Kubernetes 會協調跨多部機器的容器化應用程式。AWS 採用 PyTorch FSDP(一種把模型狀態分散至多個 GPU 的訓練方式),以測試執行個體之間的通訊。
這令比較變得具體:一邊是 AWS 維護的訓練環境,另一邊則是團隊自行維護相同軟件堆疊。不過,範例使用隨機 token 批次,即隨機產生的模型輸入;它驗證的是基建,而非有實際用途的模型微調。團隊可藉此作為分散式執行的起點,但資料集準備、評估及生產環境復原仍是另外的決策。
Ray Train DLC 為 EKS 團隊帶來甚麼改變
最直接的改變,是提供一條由已發布映像檔通往分散式訓練工作的文件化路徑。AWS 的分散式訓練範例把其容器封裝與特定叢集佈局連結起來。這個範例比起泛稱訓練變得更容易的承諾,更具體,也更可付諸實行。
真正有用的轉變,在於由誰負責維護共用訓練環境。
自訂映像檔意味應用程式團隊須負責整合各項依賴項。這項責任不只包括安裝 Python 框架,還涵蓋必須共同運作的 GPU 執行與通訊元件,包括訓練腳本以外的程式庫。
已發布映像檔則為這些整合工作換上另一個負責者。應用程式團隊仍須決定所得環境是否符合其要求;不過,他們可先評估現有產物,再決定是否自行維護等效方案。
當團隊已清楚知道要訓練甚麼時,這個區別尤其重要。花時間處理環境相容性,並不會直接改善資料集或評估流程。從首個實驗中移除這些工作,可騰出空間更早研究工作負載。
公告亦需要精確的時間線。AWS 的 Ray Train 容器更新日誌顯示,初始映像檔於 2026 年 8 月 26 日發布,1.1 版本則於 9 月 1 日推出。10 月的發布內容,是使用該容器系列的部署導覽,而非其首次推出。
這個時間順序改變了新聞價值。AWS 正在記錄先前發布的封裝方式如何融入可重現的分散式設定。重點應放在軟件交付與叢集運作之間的連繫,而不應暗示出現了新發明的訓練演算法。
對工程經理而言,決策更容易界定。他們可問:維護獨立訓練映像檔,是否能提供已發布環境所欠缺的能力?這比假設每個分散式訓練專案都需要自行建立容器更具體。
對平台工程師而言,這個範例提供了一項可與本地需求比較的參考設定。差異會成為明確的審核項目。團隊可以辨識哪些改動屬於其工作負載,哪些則反映既有基建慣例。
已發布的路徑亦令例外情況更容易說明。如機構需要不同的框架建置版本或專門擴充功能,這些要求可合理化額外維護。自訂映像檔遂基於明確需要,而非成為預設起點。
這一切並不表示它普遍適用,而是建立了一個可供團隊檢視的實際替代方案。最恰當的解讀是,AWS 已降低開始評估此特定分散式訓練設定所需的環境整合作業。
壓力落在自訂映像檔維護上
AWS 的訓練容器堆疊包括分散式執行框架 Ray,以及機器學習框架 PyTorch。它亦整合了 NVIDIA 的 GPU 運算平台 CUDA,以及 NVIDIA 用於 GPU 間通訊的程式庫 NCCL。
網絡元件包括 Elastic Fabric Adapter(AWS 為緊密耦合工作負載提供的網絡介面)及 AWS OFI NCCL plugin。該 plugin 把 NCCL 與網絡供應者連接起來。AWS 表示,會在發布前測試整合後的環境。
現時選擇自訂映像檔的團隊,需要有理由自行承擔同一套整合工作。
這不代表自訂環境已過時。機構可能對已批准的依賴項、專門建置版本或內部分發有要求,這些需要仍然合理。壓力在於日常重複進行現有產物已處理的封裝工作。
設想一個假設性的工程團隊,正研究其訓練工作能否跨機器運行。它最初的問題關乎分散式行為;建立另一個映像檔,會在團隊能夠探究該問題前引入另一項研究工作。
受維護的基準環境可縮短這個流程。團隊先評估參考環境,再記錄任何實際的不相容情況;是否自訂的決策,遂建基於工作負載所得的證據,而非執行前作出的假設。
這是運作層面的比較,並非宣稱某個容器總是表現較佳。精心維護的內部映像檔可以符合相同技術要求;差異在於所有權、更新程序,以及保持環境可用所需的工作量。
已發布映像檔亦改變團隊描述自身平台工作的方式。封裝較少軟件不代表貢獻較少。平台工程師可把注意力放在存取控制、資源配置、可觀測性,以及機構訓練工作負載的要求上。
當基準環境為共用時,這些責任更容易分開處理。若多個實驗使用相同環境,審核者可聚焦於程式碼及設定差異;每個實驗各有獨立映像檔,則令比較更難組織。
效益仍取決於採用紀律。團隊需要記錄所使用的產物,以及額外引入的依賴項;否則,名義上的共用基準環境可能掩蓋不同工作之間的執行環境差異。
因此,Ray Train DLC 提供的是維護選擇,而非免除維護。AWS 負責已發布的整合工作;採用機構則負責其驗收標準、部署政策,以及何時更新的決定。
合理的內部審核會問:自訂環境帶來甚麼能力、由誰維護,以及如何檢查相容性。這些問題並不預設已發布容器必然勝出,而是令取捨清晰得足以評估。
更廣泛的含意很直接:應用程式專屬工作應足以證明應用程式專屬封裝的合理性。當工作負載適合受維護環境時,擁有另一個建置版本便成為一項附帶持續責任的選擇。
FSDP 令網絡成為訓練設計的一部分
網絡堆疊之所以重要,是因為分片會改變 GPU 的協作方式。在完全分片訓練中,FSDP 會把參數、梯度及最佳化器狀態分散至各個 worker。參數儲存學得的數值,梯度引導更新,而最佳化器狀態則追蹤更新過程。
在分片單元開始運算前,worker 會收集其所需參數;反向計算後,它們會同步並分割梯度。這可減少重複狀態,但同時引入訓練設計必須容納的通訊需求。
記憶體節省與通訊要求,屬於同一項工程決策。
這項取捨說明提供相容網絡程式庫為何具有實際價值。訓練環境需要的不只是能正常匯入的模型;它亦必須支援所選分散式策略所需的資料交換。
相關比較不僅是更多 GPU 還是更少 GPU,而是工作負載在計入通訊成本後,是否受惠於分散其狀態。成功啟動證明執行可行;效能量測則證明這種安排是否有用。
PyTorch 記錄了不同的分片策略,因為這種平衡會有所不同。完全分片會分散更多狀態,而混合方法則把機器內分片與跨機器複製結合。這些選項的存在,正說明不應把參考設定視為普遍最佳方案。
另一個分散式訓練系統 DeepSpeed 提供重要的業界參考。其 ZeRO 方法同樣會分割訓練狀態。PyTorch 明確指出,DeepSpeed 的 ZeRO Stage 3 是 FSDP 的靈感來源,將 AWS 範例置於既有的技術方向之中。
這個背景令新穎性保持適當比例。AWS 在此的貢獻關乎已打包的執行環境及其部署路徑;減少重複訓練狀態的基本概念,早於這篇導覽便已存在。
對正在比較不同方案的團隊而言,有用的問題是:哪一種策略符合其模型及營運限制?容器可用性可以降低研究某種方法所需的成本,但不能決定分散式訓練系統之間的比較結果。
硬件描述亦需要謹慎看待。AWS 列出 g6.12xlarge 配備四張 NVIDIA L4 GPU、192 GiB 主機記憶體及 40 Gbps 網絡;這些規格描述的是執行個體,而不是此工作負載經量度的訓練吞吐量。
單一網絡頻寬數字無法獨立回答一個實驗多久可以完成。訓練包含運算及通訊,工作負載決定兩者的關係。讀者不應把硬件規格直接轉化為應用程式效能主張。
同樣的謹慎亦適用於記憶體估算。持久模型狀態並不代表訓練期間的每一項配置;中間運算、暫存緩衝區及工作負載設定,在評估工作是否能容納時同樣重要。
實際的解讀是,分片產生一項工程上的交換:它透過增加協調來減少某些記憶體需求。已打包的網絡堆疊處理了這項交換中必要的一環,但不會決定它是否對每種工作負載都有利。
這正是通訊路徑值得明確驗證的原因。容器提供元件,而實驗必須確認這些元件在實際叢集上的行為。
容器保持固定,叢集設定則改變
AWS 的KubeRay 部署指南展示映像檔如何融入 Kubernetes。KubeRay 是一個 operator,即管理 Ray 資源的控制器。其 RayCluster 設定描述協調用的 head 及 worker pods;pod 是執行容器的 Kubernetes 單位。
該指南將 GPU workers 與 head 分開。它亦要求映像檔的 Ray 版本、Ray 所宣告的 GPU 數量,以及 Kubernetes 資源分配三者保持一致。這些都是圍繞映像檔的配置責任。
略過建立映像檔,便意味著叢集配置會成為部署中明確的一環。
這個界線很有用,因為它能把原本容易糾纏在一起的問題分開。映像檔決定所提供的軟件環境;叢集配置則決定該環境在哪裏執行,以及其程序可使用哪些裝置。
裝置可用性尤其重要。容器內的函式庫無法取代它預期使用的裝置存取權。因此,部署審查必須同時檢視已封裝的相依套件,以及分配給 workers 的資源。
Ray Train 的啟動器增加了另一層協調。其 TorchTrainer 會在各個 worker 程序中執行訓練函式。ScalingConfig 描述 worker 數量及加速器需求,讓這些決策不必放進每個 worker 的訓練迴圈中。
這種分離讓團隊可以更清晰地組織變更。模型實驗不應自動意味著要採用不同的叢集拓撲;叢集容量的變更也不應自動要求重寫模型的訓練邏輯。
若要進行可重現的評估,有用的產物是圍繞執行的完整決策組合,包括映像檔身分、叢集配置、工作程式碼及工作負載設定。只記錄模型名稱,會留下太多未能解釋的地方。
「可重現」一詞亦應有明確界限。重複部署輸入,與保證訓練結果完全一致,是兩回事。團隊應說明自己要重現的是基礎設施、執行行為,還是模型品質結果。
已發布的配置有助建立當中的第一種可重現性。它提供一個參考基準,讓本地修改可據此審查。不過,這不會免除團隊解釋修改後設定為何表現不同的需要。
工作負載的變更亦應得到與基礎設施變更同等的重視。在提交時加入相依套件,可以保留基礎映像檔,同時改變工作環境。這些新增項目同樣應記錄在實驗紀錄中。
這正是團隊文件在營運上發揮作用的地方。工程師需要取得產生某項觀察結果的配置,以及該觀察結果本身。已完成工作的截圖無法解釋其背後的每一項決策。
一個可搜尋知識庫可協助團隊保留部署決策及調查筆記。這有助審查及交接,但不會取代配置檔案或日誌。
因此,固定映像檔的方法改變了複雜性的組織方式。它將軟件封裝變成共同基準,並讓部署差異清楚呈現在配置中。團隊仍需檢視這些差異,才可將參考設定視為自身的標準。
合成測試執行並不能證明微調具實際價值
樣本中的隨機輸入是一種刻意的簡化。它們讓執行路徑可在毋須於初始設定中加入資料集的情況下進行測試。只要讀者明白結果所能證明的是甚麼,這種做法適合作為基礎設施檢查。
已完成的分散式工作與具實際價值的已訓練模型,需要不同證據支持。
前者關乎執行:workers 啟動、參與並完成所要求的運算。後者關乎學習:所得模型在指定任務上表現可接受。兩種結果均不會自動證明另一種結果。
這一點尤其重要,因為簡報所描述的是微調,即對既有模型進行額外訓練。該範例在模型上執行訓練操作;隨機輸入無法證明模型在真實任務上有所改善。
因此,採用樣本的團隊必須界定其資料擬回答的問題,包括決定訓練後何謂可接受的行為。沒有這個定義,基礎設施的成功可能會成為產品進展的誤導性代替指標。
評估亦會改變對 loss(訓練期間使用的數值目標)的理解。所報告的 loss 值描述的是已配置的運算,卻不足以證明經調整的模型符合部署要求。
下一個界線涉及已儲存的進度。Ray 的持久儲存指引要求多節點訓練的 checkpoints 使用共享目的地。Checkpoints 會保存訓練狀態,以便工作可恢復執行,或日後使用其結果。
Ray 區分會建立 checkpoint 的工作負載,以及只回報指標的執行。若沒有儲存 checkpoints,指標可以在本地彙總。因此,合成執行檢查可以完成,卻未能證明較長訓練工作負載所需的儲存行為。
這個區別有實際後果。團隊在依賴此設定進行有價值的訓練前,應驗證自己能夠儲存及重新載入所需狀態。重新啟動容器並不等同恢復實驗進度。
所有權問題在這裏再次出現。已發布的映像檔可以提供相容的函式庫,但採用它的團隊仍須界定產物的儲存位置及存取者。這些要求源自工作負載及組織本身。
效能主張同樣需要獨立證據。原始教學展示了一項配置,並說明其驗證路徑;不應把它解讀為獨立比較,證明此安排是 Qwen 的最快選項。
公平比較應在工作負載及測量條件一致的情況下檢視不同方案。否則,輸入處理或訓練設定的差異可能掩蓋基礎設施比較實際測量的內容。
亦無須虛構批評反應,令故事看似存在爭議。文件列出的技術限制已提供足夠審視。適當的問題是:現有證據是否支持預期的營運決策。
就基礎設施概念驗證而言,樣本涵蓋了既定的執行路徑。若要投入生產採用,團隊仍需取得更多有關其資料、產物、恢復能力及任務結果的證據。將這些決策分開,能令樣本及其限制都更容易使用。
觀察真實工作負載、傳輸證據及映像檔更新
下一步值得關注的是具體的工程觀察。未來數月,讀者應留意把已發布環境與真實訓練工作需求連結起來的證據。按特定次序而言,三項訊號最為重要。
最有力的後續證據,將展示以真實資料取代合成輸入後,哪些部分仍可重複實現。
首先,留意同時涵蓋訓練行為及任務評估的真實工作負載報告。報告應清楚列明模型、資料處理方式及設定,以便解讀其結果。單憑完成執行,無法證明經調整模型的品質。
Checkpoint 恢復應與該等證據一併提供。能從已儲存狀態成功恢復的工作負載,回答了合成測試未能解答的營運問題。這將加強環境不僅適用於初始連接測試的採用理據。
令人失望的任務結果不會自動否定容器。資料及訓練選擇亦會影響結果。有價值的報告會將執行失敗與建模失敗分開,清楚指出系統哪一部分需要關注。
其次,留意與受控效能測量配對的傳輸證據。傳輸證據是顯示 workers 實際使用哪條通訊路徑的觀察結果。這些觀察應伴隨吞吐量結果,而非因為實例具備 EFA 能力便作出推斷。
比較亦應區分連通性與效率。確認預期路徑可運作,是解讀結果的必要條件;但這並不能證明工作負載有效運用了可用硬件。
披露這些條件的報告將強化封裝方案的論點。它們會顯示團隊可在自身環境中檢視所提供 stack 的行為。反之,未能解釋的差異將指出需進一步診斷或更清晰指引的範疇。
第三,留意映像檔更新如何融入可重複實驗。AWS 的變更日誌已將各版本及其捆綁元件分開列出。採用該容器的團隊應評估自己的更新流程如何保留過往執行環境的身分。
Digest,即容器映像檔的內容識別碼,有助記錄特定執行所使用的產物。該紀錄應與配置及工作負載變更一併保存,否則團隊可能難以判斷是哪項變更造成不同結果。
此訊號關乎 Ray Train DLCs 的持續維護價值。當組織可以審慎採用更新,並清晰調查回歸問題時,已發布環境才能提供持久價值。初次免除建立步驟,只是這段關係的一部分。
對於現正評估樣本的讀者,應先界定決策所需的證據。以已發布配置作為參考,記錄確切環境,並將連通性檢查與工作負載結果分開。然後加入實際資料,驗證已儲存狀態的恢復能力,並在一致條件下比較測量結果。將部署紀錄與訓練發現並列保存,讓另一位工程師能理解哪些地方有所改變。Ray Train DLCs 為團隊提供受維護的起始環境;採用團隊則需提供證據,證明它適合自身工作。你目前的訓練流程中,哪些部分確實需要自訂映像檔?哪些部分又適合先評估這個共享基準?



