7

离开OpenAI的大神卡帕西"开课了":新项目日增千星,还是熟悉的min代码风 |...

 6 months ago
source link: https://www.qbitai.com/2024/02/121853.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

离开OpenAI的大神卡帕西“开课了”:新项目日增千星,还是熟悉的min代码风

head.jpg鱼羊 2024-02-19 12:47:48 来源:量子位

教学视频在路上了

鱼羊 发自 凹非寺

量子位 | 公众号 QbitAI

大神Karpathy从OpenAI离职,原本扬言要大休一周。

离开OpenAI的大神卡帕西“开课了”:新项目日增千星,还是熟悉的min代码风

但转眼,新项目就已上线GitHub,日增上千星的那种。

离开OpenAI的大神卡帕西“开课了”:新项目日增千星,还是熟悉的min代码风

还是熟悉的卡式配方:

74行Python代码搞定大模型标记化(tokenization)中常用的BPE(Byte Pair Encoding)算法,实现该算法的最小、最干净代码版本。

离开OpenAI的大神卡帕西“开课了”:新项目日增千星,还是熟悉的min代码风

是不是有点快3万标星的nanoGPT内味儿了?

这波啊,还真是让网友们给猜着了:

Time to cook。

离开OpenAI的大神卡帕西“开课了”:新项目日增千星,还是熟悉的min代码风

毕竟,Karpathy除了前特斯拉AI总监、OpenAI创始成员的title,最为网友所熟悉的,就是“AI领域大善人”、“擅长将复杂问题简单化的卡老师”这样的身份了(手动狗头)。

BPE代码最小化版本

还是具体来看一下,Karpathy老师这次又煮出了一锅什么样的饭。

离开OpenAI的大神卡帕西“开课了”:新项目日增千星,还是熟悉的min代码风

项目名minbpe已经说明一切:BPE算法的最小、最干净代码版本。

BPE(字节对编码)是随着GPT-2而流行起来的标记化算法。现在,包括GPT系列、Llama系列和Mistral在内,一众大模型都用到了这一算法来训练分词器。

BPE的主要优势在于:

  • 高效:通过合并频繁出现的字节对来逐步构建词汇表,可以有效地减少模型需要处理的词汇量。
  • 灵活:可以将词汇表外的单词分解为已知子词来进行处理,有助于模型理解和生成未在训练中出现的单词。

而在minbpe这个项目中,Karpathy提供了两个Tokenizer(分词器),它们都可以执行分词器的3个主要功能:

  • 基于特定文本训练词汇表和合并操作
  • 把文本编码成token
  • 把token解码为文本

具体而言,在basic.py中,minbpe用74行Python代码,完成了对直接在文本上运行的BPE算法的最简单实现。

离开OpenAI的大神卡帕西“开课了”:新项目日增千星,还是熟悉的min代码风

regex.py中,minbpe实现的是一个正则表达式分词器,该分词器利用正则表达式进一步拆分输入的文本。

另外,在正则表达式分词器的基础之上,minbpe还在gpt4.py中提供了一个GPT4Tokenizer,可以准确在线tiktoken库中的GPT-4标记化。

注:tiktoken是一种快速BPE分词器。

离开OpenAI的大神卡帕西“开课了”:新项目日增千星,还是熟悉的min代码风

base.py则是一个基类,包含了训练、编码和解码的存根(stubs),提供了保存和加载的功能,并集成了一些常见的辅助工具函数。在实际应用中,开发者应该通过继承这个基类来实现具体的分词器功能。

Karpathy提到,他在霉霉的维基百科文本上尝试训练了两个主要的分词器。train.py在他的M1 MacBook上运行时间大概为25秒。

如果你还有什么不清楚的地方,别担心,卡老师已经计划要出视频了:

离开OpenAI的大神卡帕西“开课了”:新项目日增千星,还是熟悉的min代码风

Karpathy出走OpenAI,许多猜测指向他的“下一篇章”是大语言模型系统(LLM OS)。

如今正式工作还未揭示,但看样子Karpathy已经拾起了“教学育人”的副业,小伙伴们可以蹲起来了(doge)。

参考链接:
https://github.com/karpathy/minbpe/

版权所有,未经授权不得以任何形式转载及使用,违者必究。

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK