【項(xiang)目(mu)復(fu)現上(shang)新】Karpathy大神開源GitHub高分項(xiang)目(mu)NanoChat!僅用100美元+8000行代碼(ma)手搓(cuo)ChatGPT
The best ChatGPT that $100 can buy.
10 月 13 日,AI 領域大神 AndrejKarpathy 發布了自己的最新開源項目。截至當前,?GitHub 項目上已經達到 29.1KStar?。

nanochat 是什么
nanochat 是 AI 領域專家 AndrejKarpathy 發布的開源項目,該項目包含從數據準備、預訓練、中期訓練、監督微調(SFT)、強化學習(RL)到推理部署的完整流程,約?8000 行代碼?,其以極低成本和高效流程訓練小型語言模型,?實現類似ChatGPT 的對話功能?。
AndrejKarpathy 表示,像 nanochat 這樣的模型訓練成本大概在 100 到 1000 美元之間,而 100 美元級別的模型的參數量只有GPT-3 的千分之一,只需使用 8??張H100GPU 訓練不到 4 小時?,就可以訓練出一個能夠寫故(gu)事/詩(shi)歌、回答簡單問題(ti)的模型。
如果將預算增加到?1000 美元?,只需要訓練約41.6 小時就能使模型性顯著提升,能解決簡單數學/代碼問題并參與多項選擇題測試。

?GitHub 鏈接?:
?Lab4AI 鏈接?:
| nanochat 的主要功能
雖然(ran)代(dai)碼量只有8000 行,但是它也(ye)實現了以下功能(neng):
?全新Rust 分詞器(Tokenizer)訓練?:使(shi)用Rust 語言實(shi)現(xian)訓練分詞(ci)器;
?在FineWeb 數據集上預訓練?:在(zai)FineWeb 數(shu)據集上對 Transformer 架(jia)構的大(da)語言模(mo)型進行預訓(xun)練,并在(zai)多(duo)個(ge)指標上評(ping)估(gu) CORE 分數(shu);
?中期訓練?:在SmolTalk 用戶-助手對話數據(ju)集(ji)、多項選(xuan)擇題數據(ju)集(ji)、工(gong)具使用數據(ju)集(ji)上進行(xing)中期訓練;
?監督微調(SFT)?:在(zai)世界知識(shi)多項選擇(ze)題數據(ju)集(ji)(ARC-E/C、MMLU)、數學數據(ju)集(ji)(GSM8K)、代碼數據(ju)集(ji)(HumanEval)上進行監(jian)督(du)微調;
?強化學習(RL)優化?:使用“GRPO”算法在 GSM8K 數據集上對模型進行強化學(xue)習(xi)微調(diao);
?高效推理引擎?:實現高效模型推理,支持KV 緩存、簡易預填充/解碼流程、工具使用(輕量級沙箱環境中的 Python 解釋器),并通過 CLI 或類 ChatGPT 的 WebUI 與模型交互;
?自動訓練總結?:生成單一的(de)Markdown 格式報告卡,總結整個訓練推理流程,并(bing)以“游戲化”形式展(zhan)示(shi)結果。
一鍵復現
過去提到LLM 訓練,人們腦(nao)海(hai)(hai)里浮現的是(shi)動(dong)輒上百萬美元的算力成本、龐大的研發團隊(dui)和海(hai)(hai)量(liang)的數(shu)據儲備,這讓個人開發者和中小(xiao)型(xing)團隊(dui)望而卻步;
而nanochat 不僅將?成本壓縮至100 美元?,大模型實驗室Lab4AI 更通過?“一鍵體驗”模式?,讓這個幾乎人人可承擔的價格真正轉化為“人人可操作”的嘗試,不再需要糾結環境配置、流程調試,普通人跟著指引就能親手搭建屬于自己的簡易版 ChatGPT,這種“?低門檻?+ 易操作”的(de)組合,也恰好(hao)解決了學習者“紙上談(tan)兵”的(de)痛點——以(yi)往看過無數教程(cheng)卻(que)仍不知(zhi)全流程(cheng)如何落地,
如今(jin)大模型實(shi)驗室Lab4AI 推出(chu)的 nanochat 體驗項目“100 美元實(shi)現(xian)自己的 ChatGPT”。
提供從數據準備到推理服務的“?一鍵式”全流程工具鏈?,學習者?不用再為環境搭建、代碼調試耗費精力?,只需跟著引導逐步操作,就能直觀感受模型訓練的每一個環節,讓“無從下手”變成“步步有跡可循”。

Step1:登錄 Lab4AI.cn。
在“項目復現”中找到“?AI 大神 Karpathy 開源 GitHub 高分項目 NanoChat-100 美元手搓 ChatGPT?”。
項目內已經提供完整的復現NanoChat 的全流程代碼和環境,您只需配置 8 卡,即可手搓 ChatGPT。

Step2:環境激活。
系統內已經預置可用的conda 虛擬環境,此環境可滿足后續步驟的需要。您只需執行下列腳本安裝 Rust/Cargo。

?Step3:模型訓練?。
本次(ci)復現中,我(wo)們將訓練分(fen)(fen)為pretrain、midtrain 和 SFT 三個階(jie)段(duan)。pretrain 階(jie)段(duan)約(yue)需要 2.5-3 小時(shi),midtrain 階(jie)段(duan)約(yue)耗(hao)時(shi) 30 分(fen)(fen)鐘內。
下方為(wei)訓(xun)練(lian)時(shi)各卡的工作狀態。從圖(tu)中看,8 塊 NVIDIAH10080GB 顯(xian)卡已經全(quan)部運行中,幾(ji)乎吃滿了所有(you)的 GPU 算力。
您可以通過監控這些指標,親眼看到模型是如何被“訓練”出來的。

Step4:模型評估。
每個訓練階段有相(xiang)應的評(ping)估(gu)(gu)程序輸出結構化評(ping)估(gu)(gu)結果。
以下是本次實踐的pretrain 后的評估結果,從結果得知:?模型初步掌握了世界運作的基本邏輯?。PIQA(物(wu)理互動問答):61.26%,表(biao)明模(mo)型已經初步掌握(wo)了世界運作(zuo)的(de)(de)基本邏輯(ji)。COPA(因(yin)果推(tui)理):54.00%,表(biao)明模(mo)型開始具備初步的(de)(de)因(yin)果判斷(duan)能力。Winograd(指代消解(jie)):56.04%,表(biao)明模(mo)型能處(chu)理一些簡單的(de)(de)句法歧義。
當?面對復雜推理的閱讀理解任務能力很弱?。ARCEasy(基礎(chu)科學問答):45.50%,表明模型(xing)掌握了(le)一(yi)些(xie)基礎(chu)的科學知識,但還不夠牢(lao)固。ARCChallenge(挑(tiao)戰科學問答):26.79%,表明模型(xing)缺乏(fa)深度的、學科性的知識。
?面對知識密集型與復雜邏輯任務時,模型表現出了短板?。
Jeopardy!(知(zhi)識問答(da)):0.90%,
SQuAD(閱讀理解):1.59%,
CoQA(對話式問答):4.31%,
OpenBookQA(開卷問答):26.40%。

Step5:部署推理。
訓練完成的模型支持如下兩種推理方式:通過命令行的方式進行推理;通過WebUI 的方式進行推理。
(1)通過命令(ling)行對話,執行后即(ji)可在下方看(kan)到(dao)推理內容。

(2)通過WebUI 執行對話。執行代碼后,鼠標滑過右上角的【對外服務】,將鏈接復制到瀏覽器,打開后即可對話。

Lab4AI 支撐從研究到落地
Lab4AI 提供(gong)除了一鍵復現之外,還提供(gong)更多的價值(zhi):
1. 如果你是科研黨
每日更新Arxiv 上的論文,支持翻譯、導讀、分析,幫你快速跟進前沿研究;還能一鍵復現其他大模型;若你有自己的數據集,能直接在平臺上進行代碼微調,平臺還支持使用 LLaMA-Factory 進行 WebUI 微調大模型,甚至對接投資孵化資源,把科研創意變成落地成果。



2.如果你是學習者
如果你想掌握大模型相關技能,Lab4AI 的優勢更明顯:?Lab4AI 提供多種在線課程?,更有LLaMA Factory 官方合作課程,讓您理論學習和代碼實戰同時進行。LLaMA Factory 官方合作課程課程聚焦于當下最受歡迎的LLaMA Factory 框架,帶您從理論到實踐,一站式掌握大模型定制化的核心技能,課程還送 300 元算力、完課證書。


10月13日,AI領域大神AndrejKarpathy發布了自己的最新開源項目。截至當前,GitHub項目上已經達到29.1KStar。