簡介 || 什麼是 DDP || 單節點多 GPU 訓練 || 容錯 || 多節點訓練 || minGPT 訓練
使用 DDP 訓練“真實世界”模型¶
建立日期:2022 年 9 月 27 日 | 最後更新:2025 年 1 月 23 日 | 最後驗證:2024 年 11 月 5 日
觀看下方影片或在 youtube 上跟隨學習。
在本影片中,我們將回顧多節點 DDP 中訓練 GPT 模型的過程。我們首先克隆 minGPT 倉庫,並重構 Trainer 使其類似於本系列中使用的結構。觀看影片瞭解這些更改的詳細資訊。
我們使用 hydra 集中管理訓練執行的所有配置。程式碼重構完成後,我們首先在帶有 4 個 GPU 的單節點上執行它,然後在 slurm 叢集上執行。
用於訓練的檔案¶
trainer.py 包含 Trainer 類,該類使用提供的資料集在模型上執行分散式訓練迭代。
model.py 定義了模型架構。
char_dataset.py 包含用於字元級別資料集的
Dataset類。gpt2_train_cfg.yaml 包含資料、模型、最佳化器和訓練執行的配置。
main.py 是訓練任務的入口點。它設定 DDP 程序組,讀取所有配置並執行訓練任務。
從雲端儲存和載入¶
在上面的影片中,我們將訓練快照直接儲存到雲端。這使得我們可以靈活地從任何可以訪問雲端儲存桶的節點繼續訓練。