离开OpenAI待业的Karpathy做了个大模型新项目,Star量一日破千

没工作也要「卷」。

闲不下来的 Andrej Karpathy 又有了新项目!

过去几天,OpenAI 非常热闹,先有 AI 大牛 Andrej Karpathy 官宣离职,后有视频生成模型 Sora 撼动 AI 圈。

在宣布离开 OpenAI 之后,Karpathy 发推表示「这周可以歇一歇了。」

图源:twitter.com/karpathy/st...

这种无事要做的状态让马斯克都羡慕(I am envious)了。

但是,如果你真的认为 Karpathy 会闲下来,那就有点「too young, too navie」了。

这不,有眼尖的网友发现了 Karpathy 的新项目 ------minbpe,致力于为 LLM 分词中常用的 BPE(Byte Pair Encoding, 字节对编码)算法创建最少、干净以及教育性的代码

仅仅一天的时间,该项目的 GitHub 标星已经达到了 1.2 k。

图源:twitter.com/ZainHasan6/...

有人 P 了一张图,表示 Karpathy 为大家「烹制了一顿大餐」。

图源:twitter.com/andrewcyu/s...

更有人欢呼,Karpathy is back。

图源:twitter.com/fouriergalo...

我们来看一看「minbpe」项目具体讲了些什么。

项目介绍

GitHub 地址:github.com/karpathy/mi...

我们知道,BPE 算法是「字节级」的,在 UTF-8 编码的字符串上运行。该算法通过 GPT-2 论文和 GPT-2 相关的代码在大语言模型(LLM)中得到推广。

现如今,所有现代的 LLM(比如 GPT、Llama、Mistral)都使用 BPE 算法来训练它们的分词器(tokenizer)。

Karpathy 的 minbpe 项目存储库中提供了两个 Tokenizer,它们都可以执行分词器的 3 个主要功能:1)训练 tokenizer 词汇并合并给指定文本,2)从文本编码到 token,3)从 token 解码到文本。

详细的存储库文件分别如下:

  • minbpe/base.py:实现 Tokenizer 类,是基类。它包含了训练、编码和解码存根、保存 / 加载功能,还有一些常见的实用功能。不过,该类不应直接使用,而是要继承。

  • minbpe/basic.py:实现 BasicTokenizer,这是直接在文本上运行的 BPE 算法的最简单实现。

  • minbpe/regex.py:实现 RegexTokenizer,它通过正则表达式模式进一步拆分输入文本。作为一个预处理阶段,它在分词之前按类别(例如字母、数字、标点符号)拆分输入文本。这确保不会发生跨类别边界的合并。它是在 GPT-2 论文中引入的,并继续在 GPT-4 中使用。

  • minbpe/gpt4.py:实现 GPT4Tokenizer。此类是 RegexTokenizer 的轻量级封装,它精确地复现了 tiktoken(OpenAI 开源分词神器)库中 GPT-4 的分词。封装处理有关恢复 tokenizer 中精确合并的一些细节,并处理一些 1 字节的 token 排列。需要注意,奇偶校验尚未完全完成,没有处理特殊的 token。

脚本 train.py 在输入文本 tests/taylorswift.txt 上训练两个主要的 tokenizer,并将词汇保存到磁盘以进行可视化。Karpathy 称,该脚本在他的 MacBook (M1) 上运行大约需要 25 秒。

Karpathy 还表示,所有文件都非常短且注释详尽,并包含使用示例。如下为 BPE 维基百科文章的复现例子。

css 复制代码
<span><span>from</span> minbpe <span>import</span> BasicTokenizer</span>

此外还提供了如何实现 GPT4Tokenizer,以及它与 tiktoken 的比较。

css 复制代码
<span>text = <span>"hello123!!!? (안녕하세요!) 😉"</span></span>

当然,Karpathy 不满足只推出 GitHub 项目,他表示视频很快就会发布。

扩展阅读:

相关推荐
战场小包1 个月前
OpenAI动荡,将走向何方、GPT5或许将近、毒舌AI轻松破防网友、最新版 GPT-4o AI 模型得满分 | AGI掘金视界周刊第 4 期
人工智能·资讯
字节跳动开源2 个月前
字节跳动开源多云多集群管理引擎 KubeAdmiral v1.0.0 发布!
开源·github·资讯
战场小包2 个月前
AI视界周刊第 2 期:里程碑 Llama 3.1 开源、AI训AI,越训越傻、AI 搜索重燃战火
人工智能·资讯
栩栩云生2 个月前
[240726] Mistral AI 发布新一代旗舰模型 | Node.js 合并 TypeScript 文件执行提案
typescript·node.js·资讯
赵侠客2 个月前
使用Hutool要注意了!升级到6.0后你调用的所有方法都将报错
java·后端·资讯
栩栩云生3 个月前
[240706] 史蒂夫·乔布斯近40年前就预言了苹果智能 | Globalping 用于网络诊断和性能测试的命令行工具
命令行·apple·资讯
栩栩云生3 个月前
[240622] X-CMD 发布 v0.3.12: 引入 codeberg,增强传统命令,改善对 Elvish 和 Fish 支持
开源·命令行·资讯
机器之心3 个月前
英伟达开源最强通用模型Nemotron-4 340B
llm·资讯
小小谢在掘金3 个月前
【2024W24】肖恩技术周刊(第 2 期)
资讯
机器之心3 个月前
原作者带队,LSTM卷土重来之Vision-LSTM出世
人工智能·资讯