Transformers 文件

DeepSpeed

Hugging Face's logo
加入 Hugging Face 社群

並獲得增強的文件體驗

開始使用

DeepSpeed

DeepSpeed由零冗餘最佳化器(ZeRO)提供支援,是一個最佳化庫,用於在GPU上訓練和適配非常大的模型。它提供多個ZeRO階段,每個階段透過對最佳化器狀態、梯度、引數進行分割槽,並支援解除安裝到CPU或NVMe,從而逐步節省更多的GPU記憶體。DeepSpeed已與Trainer類整合,大部分設定都會為你自動完成。

然而,如果你想在不使用Trainer的情況下使用DeepSpeed,Transformers提供了一個HfDeepSpeedConfig類。

要了解更多關於如何將DeepSpeed與Trainer一起使用的資訊,請參閱DeepSpeed指南。

HfDeepSpeedConfig

class transformers.integrations.HfDeepSpeedConfig

< >

( config_file_or_dict )

引數

  • config_file_or_dict (Union[str, Dict]) — DeepSpeed配置檔案的路徑或配置字典。

此物件包含一個DeepSpeed配置字典,可以快速查詢諸如ZeRO階段等資訊。

此物件的weakref(弱引用)儲存在模組的全域性變數中,以便在無法訪問Trainer物件等情況下(例如在from_pretrained_get_resized_embeddings中)能夠訪問該配置。因此,在程式仍在執行時保持此物件的存活非常重要。

Trainer使用的是HfTrainerDeepSpeedConfig子類。該子類透過替換特殊佔位符值"auto",實現了將配置與TrainingArguments的值同步的邏輯。如果沒有這個特殊邏輯,DeepSpeed配置將不會被以任何方式修改。

< > 在 GitHub 上更新

© . This site is unofficial and not affiliated with Hugging Face, Inc.