離開OpenAI的大神卡帕西“開課了”:新項目日增千星,還是熟悉的min代碼風
教學視頻在路上了
魚羊 發自 凹非寺
量子位 | 公眾號 QbitAI
大神Karpathy從OpenAI離職,原本揚言要大休一周。

但轉眼,新項目就已上線GitHub,日增上千星的那種。

還是熟悉的卡式配方:
74行Python代碼搞定大模型標記化(tokenization)中常用的BPE(Byte Pair Encoding)算法,實現該算法的最小、最干凈代碼版本。
甚至:

是不是有點快3萬標星的nanoGPT內味兒了?
這波啊,還真是讓網友們給猜著了:
Time to cook。

畢竟,Karpathy除了前特斯拉AI總監、OpenAI創始成員的title,最為網友所熟悉的,就是“AI領域大善人”、“擅長將復雜問題簡單化的卡老師”這樣的身份了(手動狗頭)。
BPE代碼最小化版本
還是具體來看一下,Karpathy老師這次又煮出了一鍋什么樣的飯。

項目名minbpe已經說明一切:BPE算法的最小、最干凈代碼版本。
BPE(字節對編碼)是隨著GPT-2而流行起來的標記化算法。現在,包括GPT系列、Llama系列和Mistral在內,一眾大模型都用到了這一算法來訓練分詞器。
BPE的主要優勢在于:
- 高效:通過合并頻繁出現的字節對來逐步構建詞匯表,可以有效地減少模型需要處理的詞匯量。
- 靈活:可以將詞匯表外的單詞分解為已知子詞來進行處理,有助于模型理解和生成未在訓練中出現的單詞。
而在minbpe這個項目中,Karpathy提供了兩個Tokenizer(分詞器),它們都可以執行分詞器的3個主要功能:
- 基于特定文本訓練詞匯表和合并操作
- 把文本編碼成token
- 把token解碼為文本
具體而言,在basic.py中,minbpe用74行Python代碼,完成了對直接在文本上運行的BPE算法的最簡單實現。

在regex.py中,minbpe實現的是一個正則表達式分詞器,該分詞器利用正則表達式進一步拆分輸入的文本。
另外,在正則表達式分詞器的基礎之上,minbpe還在gpt4.py中提供了一個GPT4Tokenizer,可以準確在線tiktoken庫中的GPT-4標記化。
注:tiktoken是一種快速BPE分詞器。

base.py則是一個基類,包含了訓練、編碼和解碼的存根(stubs),提供了保存和加載的功能,并集成了一些常見的輔助工具函數。在實際應用中,開發者應該通過繼承這個基類來實現具體的分詞器功能。
Karpathy提到,他在霉霉的維基百科文本上嘗試訓練了兩個主要的分詞器。train.py在他的M1 MacBook上運行時間大概為25秒。
如果你還有什么不清楚的地方,別擔心,卡老師已經計劃要出視頻了:

Karpathy出走OpenAI,許多猜測指向他的“下一篇章”是大語言模型系統(LLM OS)。
如今正式工作還未揭示,但看樣子Karpathy已經拾起了“教學育人”的副業,小伙伴們可以蹲起來了(doge)。
參考鏈接:
https://github.com/karpathy/minbpe/
— 完 —
- 蘋果芯片主管也要跑路!庫克被曝出現健康問題2025-12-07
- 世界模型和具身大腦最新突破:90%生成數據,VLA性能暴漲300%|開源2025-12-02
- 谷歌新架構突破Transformer超長上下文瓶頸!Hinton靈魂拷問:后悔Open嗎?2025-12-05
- 90后華人副教授突破30年數學猜想!結論與生成式AI直接相關2025-11-26



