qlabs-eng/slowrun
100M tokens. Infinite compute. Lowest val loss wins.
NanoGPT Slowrun – 一個針對 無限計算、固定數據 語言模型訓練的基準測試
它是什麼 – Slowrun 是一個社群驅動的基準測試,旨在衡量當數據預算固定(來自 FineWeb 資料集的 100 M tokens)但計算預算近乎無限時,語言模型能將驗證損失降低到什麼程度。這個概念與流行的「速通」(speed-run) 比賽相反,後者是在固定的硬體預算下優化牆上時間。透過移除時間限制,研究人員可以嘗試重度正則化、大型模型、昂貴的優化器以及只有在同一數據上花費數小時或數天才能見效的演算法技巧。
為什麼它很重要 – 大多數現代 LLM 研究專注於同時擴展數據和計算。Slowrun 隔離了問題的 演算法 面:在給定一個適度、真實的數據集時,當你有能力進行長時間訓練時,哪些訓練技巧真正能改善泛化能力?排行榜記錄了一系列漸進式的改進(新的激活函數、U-Net 風格架構、隨機權重平均、meta-gradients 等),並為每一項提供可重現的腳本。
運作方式
- 數據: 來自公開 FineWeb 語料庫的 100 M tokens。
- 賽道: 定義了四個計算時間上限,以便參與者可以在不同的資源水平上競爭:
- Limited – 在單個 8×H100 節點上運行 1 小時(約為原始 NanoChat 1-epoch 基線計算量的 100 倍)。
- Tiny – 在相同硬體上運行 15 分鐘。
- Two-hour – 在相同硬體上運行 2 小時。
- Unlimited – 沒有硬性的牆上時間限制;僅有最低限度的硬體限制。
- 基線: 一個 2.7 B 參數的 transformer,使用 Muon 優化器、dropout 0.1 和非常高的權重衰減 (1.6) 進行訓練。在 Limited 賽道上,該基線在約 47 分鐘內達到 3.402 的驗證損失。
- 排行榜: 貢獻者提交 pull-requests 來改善特定賽道的驗證損失。README 記錄了每一項世界紀錄條目、所使用的腳本以及對更改的簡短描述(例如「添加獨佔自注意力 (XSA)」、「使用隨機權重平均」、「在 MLP 矩陣上使用一階 meta-gradient」)。
入門指南
# 1. Clone 儲存庫
git clone https://github.com/qlabs-eng/slowrun.git && cd slowrun
# 2. 安裝依賴項 (Python 3, PyTorch, HuggingFace, wandb 等)
pip install -r requirements.txt
# 3. 下載並準備 100 M token 的 FineWeb 子集
python prepare_data.py
# 4. 啟動訓練 (範例: limited-compute 賽道)
# 需要一個 8-GPU 節點;torchrun 將為每個 GPU 產生一個進程。
HF_TOKEN=… WANDB_API_KEY=… torchrun --standalone --nproc_per_node=8 train.py
- 將
train.py替換為您想要的賽道腳本(tiny/train.py、two_hour/train.py或unlimited/train.py)。 - 設定您的 Hugging Face token (
HF_TOKEN) 以存取數據集,並設定 Weights & Biases API key (WANDB_API_KEY)(如果您想要實驗日誌記錄)。
排行榜的主要收穫
| 賽道 | 最佳驗證損失 (截至 README) | 達成此目標的顯著技巧 |
|---|---|---|
| Limited (1 h) | 3.183 | MLP 矩陣上的 meta-gradient, 獨佔自注意力, MuonEq-R, 加權檢查點平均 |
| Tiny (15 min) | 3.295 | fp8 混合精度, 2× 遞迴, XSA, SWA, EMA |
| Two-hour | 3.139 | 交錯頭注意力 (Interleaved Head Attention), 文件級洗牌, 上下文視窗排程 |
| Unlimited | 2.987 | 大型集成, 快照集成, 基於梯度的模型選擇, 廣泛的超參數調整 |
誰在使用它 – 該項目由 Q-Labs 工程團隊成員支持,並引起了 Andrej Karpathy 的關注(他轉發了公告)。貢獻者列出了他們的 X 帳號;許多人是活躍的 AI 研究人員,正在嘗試新穎的優化器或架構想法。
如何貢獻 – Fork 儲存庫,修改適當的 train.py(或添加新腳本),在賽道時間限制內實現更低的驗證損失,並開啟 pull-request。維護者將驗證運行(使用提供的 HF token 和 wandb 日誌),如果成功,將您的條目添加到世界紀錄表中。
TL;DR – Slowrun 是一個活的基準測試,讓任何擁有 8-GPU H100 節點(或雲端同等設備)的人都能在數據受限的情況下嘗試重量級訓練技巧。透過提交一個擊敗當前賽道最佳驗證損失的 PR,您可以贏得排行榜上的一席之地,並幫助社群了解當計算是唯一限制因素時,哪些演算法想法真正具有擴展性。
相關
- 專案
- 專案
- 專案
- 專案