熱門話題
#
Bonk 生態迷因幣展現強韌勢頭
#
有消息稱 Pump.fun 計劃 40 億估值發幣,引發市場猜測
#
Solana 新代幣發射平臺 Boop.Fun 風頭正勁
很高興推出新的代碼庫:nanochat!
(這是我寫過的最瘋狂的之一)。
與我之前的類似代碼庫nanoGPT僅涵蓋預訓練不同,nanochat是一個從零開始的簡單ChatGPT克隆的全棧訓練/推理管道,代碼庫依賴最小。你啟動一個雲GPU盒子,運行一個腳本,最少4小時後,你就可以在類似ChatGPT的網頁UI中與自己的LLM對話。
它大約有8000行我認為相當乾淨的代碼來:
- 使用新的Rust實現訓練分詞器
- 在FineWeb上預訓練一個Transformer LLM,評估多個指標的CORE分數
- 在SmolTalk的用戶-助手對話中進行中期訓練,進行多選題,工具使用。
- SFT,評估聊天模型在世界知識多選題(ARC-E/C,MMLU)、數學(GSM8K)、代碼(HumanEval)上的表現
- 可選地在GSM8K上對模型進行RL,使用"GRPO"
- 在引擎中高效推理模型,使用KV緩存,簡單的預填充/解碼,工具使用(輕量級沙箱中的Python解釋器),通過CLI或類似ChatGPT的WebUI與其對話。
- 撰寫一份單一的Markdown報告卡,總結並遊戲化整個過程。
即使成本低至約100美元(約4小時在8XH100節點上),你也可以訓練一個小型的ChatGPT克隆,能夠進行對話,並且可以寫故事/詩,回答簡單問題。約12小時超過GPT-2的CORE指標。當你進一步擴展到約1000美元(約41.6小時的訓練)時,它迅速變得更加連貫,能夠解決簡單的數學/代碼問題並參加多選測試。例如,一個深度30的模型訓練24小時(這大約等於GPT-3 Small 125M的FLOPs和GPT-3的1/1000)在MMLU上達到40分,在ARC-Easy上達到70分,在GSM8K上達到20分,等等。
我的目標是將完整的"強基線"堆棧整合成一個連貫、簡約、可讀、可駭客、最大限度可分叉的代碼庫。nanochat將是LLM101n的壓軸項目(該項目仍在開發中)。我認為它也有潛力發展成為一個研究工具或基準,類似於之前的nanoGPT。它絕不是完成的、調整過的或優化的(實際上我認為可能還有很多低垂的果實),但我認為它已經達到了一個整體框架足夠好的地方,可以上傳到GitHub,讓所有部分都可以改進。
代碼庫的鏈接和nanochat快速運行的詳細步驟在回覆中。

GitHub 倉庫:
更詳細和技術性的步驟:
在 WebUI 中與 $100、4 小時 nanochat 的示例對話。這是... 有趣的 :) 更大的模型(例如 12 小時深度 26 或 24 小時深度 30)會迅速變得更具連貫性。

這是報告卡中 $100 速通所產生的一些摘要指標的範例。當前的代碼基礎稍微超過 8000 行,但我試著保持它們的整潔和良好的註解。
現在進入有趣的部分 - 調整和爬坡。

2.4M
熱門
排行
收藏