GitHub Repo
Transformers 社群回報 FSDP 排除設定遭忽略,可能影響融合損失核心整合
10 月 29 日的 Transformers 社群回報指出,TrainingArguments 未轉送模組排除設定,可能使指定模組仍被分片。社群已提出修補,但截至查核時尚未合併,多 GPU 實際影響仍待驗證。

Transformers 社群於 10 月 29 日提出議題 #50141,指出透過 TrainingArguments 的 fsdp_config 傳入 ignored_modules 時,設定未進入交給 Accelerate 的參數。回報使用 Transformers 5.22.0.dev0,並附上不需 GPU 的最小重現:指定排除 lm_head 後,讀取 fsdp_plugin_args 對應欄位仍得到 None。議題與重現程式
這個欄位涉及模型如何分片。FSDP2 將模型參數、梯度與最佳化器狀態分散至多張 GPU,運算前再聚合所需參數,以通訊成本換取記憶體容量。若工程師刻意讓部分模組維持未分片狀態,設定是否生效便會影響後續程式對張量的假設。Transformers FSDP2 文件
回報者的用途是讓凍結的輸出層 lm_head 保持未分片,供融合線性運算與交叉熵的核心接收一般張量,避免遇到 DTensor。作者將原因指向 _process_fsdp_args:它只轉送固定欄位,未包含 ignored_modules,且未對未知鍵提出警告。這是具體的整合風險,但公開重現僅檢查設定傳遞,尚未展示完整分散式訓練失敗或效能損失。回報說明
Accelerate 官方 API 文件確認,其 FSDP 外掛支援此參數;字串以正規表示式完整比對模組名稱,FSDP2 再將匹配模組轉為待排除的參數。因此,排查時除了確認欄位有被轉送,也須核對實際模組名稱是否匹配。Accelerate API 文件
同日提出的 PR #50144 擬補上參數轉送、欄位文件及單元測試。截至查核時,PR 仍開啟、沒有審查結果,頁面顯示 CI 等待維護者核准。工程師可先檢查外掛實際收到的設定,並驗證模型準備完成後的參數型別;後續應追蹤修補合併、發行版本,以及多 GPU 配合融合核心的回歸測試。修補提案