Aioga
AI资讯 / AI资讯
返回 AI资讯

Meet Gigatoken: A Rust BPE Tokenizer that Encodes Text at 24.53 GB/s, up to 989x Faster than HuggingFace Tokenizers

MarkTechPost(RSS)Aioga 编辑团队2026-07-23T08:01:22.000Z热度

Gigatoken is a Rust BPE tokenizer encoding text at 24.53 GB/s, up to 989x faster than Hu...

AI资讯MarkTechPost(RSS)

今日 AI 情报摘要

Gigatoken is a Rust BPE tokenizer encoding text at 24.53 GB/s, up to 989x faster than HuggingFace tokenizers

中文正文 · AI 翻译

分词是语言建模堆栈中几乎没有人进行性能分析的部分。Gigatoken:https://github.com/marcelroed/gigatoken,由Marcel Rød(https://x.com/marcelroed,斯坦福大学的博士生)在MIT许可证下发布,认为这是一个错误。该库能够在单机上以每秒数GB的速度对文本进行编码,而其基准已经是多线程的Rust实现。

GPT-2分词器的基准测试结果非常惊人:在使用144核AMD EPYC 9565双插槽配置评估11.9 GB的owt_train.txt语料库时,Gigatoken的数据处理速度高达24.53 GB/s。相比之下,OpenAI的tiktoken:https://github.com/openai/tiktoken达到36.0 MB/s,而HuggingFace分词器:https://github.com/huggingface/tokenizers在相同硬件配置下为24.8 MB/s。这些数据分别显示了681倍和989倍的性能优势。

在配备16核心的Apple M4 Max上,相同的GPT-2工作负载运行速度为8.79 GB/s,比HuggingFace分词器快1,268倍,比tiktoken快140倍。在消费级AMD Ryzen 7 9800X3D上,速度为6.27 GB/s,分别为106倍和68倍。这种加速并不是某个CPU或某个词汇表的偶然现象。

Gigatoken是一个用Rust编写、带有Python绑定的字节对编码(BPE)分词器。它通过PyPI以gigatoken(版本0.9.0,发布于2026年7月21日)形式发布,可用pip install gigatoken安装。该仓库由66.2%的Rust和33.3%的Python构成。已发布基准测试中支持23个不同的分词器家族,涵盖GPT-2、GPT-OSS、Llama 3至4、Qwen 2至3.6、DeepSeek V3/R1/V4、GLM 4和5、Kimi K2、Nemotron 3、Phi-4、OLMo 2/3、ModernBERT、Gemma和Mistral。

使用它有两种方式。兼容模式包装现有的HuggingFace或tiktoken分词器,并保持完全相同的输出,但会牺牲吞吐量。作者Marcel(https://x.com/marcelroed)在Hacker News(https://news.ycombinator.com/item?id=49010167)上表示,兼容模式根据使用情况大约提供200–300倍的速度提升,因为它仍然需要承担Python在列表创建及字符串到字节转换上的开销。原生Gigatoken API允许Rust直接读取文件,而发布的性能数据就是基于此模式得出的。

下面的每个数字都来自于存储库的基准部分:https://github.com/marcelroed/gigatoken/#benchmarks 以及预分词器优化日志:https://github.com/marcelroed/gigatoken/blob/main/pretokenizer_optimization_log.md。可以切换 CPU,查看优化历史,或估算您自己的语料库需要多长时间。

性能提升并不是来自更好的 BPE 合并循环,而是来自大多数分词器认为已经解决的两个方面。

(1) 预分词:大多数实现将其委托给正则表达式引擎。Gigatoken 是手写实现的。优化日志跟踪了在 100 MB OpenWebText 上单线程 GPT-2 预分词器的吞吐量,其进展具有启发性:

仅在预分词器上的净效果:相比 winnow + NEON 基线提升 2.27 倍,相比正则实现提升 22.3 倍。

(2) 预分词缓存:如果某个单词之前见过,其编码的 token 将被查找而不是重新计算。作者(Marcel:https://x.com/marcelroed)指出,这在实践中很困难,因为缓存会快速增长且预分词分布是长尾的。此外,与 Python 的交互被最小化,并且线程设计为彼此最少交互。

优化日志对失败的尝试异常诚实。使用 #[cold] 和 #[inline(never)] 热/冷分离导致性能下降到 580 MiB/s,因此被回退,因为 inline 屏障阻止了 LLVM 对 ASCII 与 Unicode 组合循环的优化。带 SWAR 过渡计数的两遍分类缓冲算法上是正确的,但运行速度为 354 MiB/s,因为额外的内存访问抵消了分支节省。基于 Profile 的优化没有可测量效果,因为内层循环已经没有分支,而单词边界分支是数据依赖的。

比较并非严格的同类比拼。Gigatoken 会对整个未拆分的文件进行编码,自己寻找文档边界并自动并行化。相比之下,HuggingFace(encode_batch_fast)是在前 100 MB 评估的,tiktoken(encode_ordinary_batch)是在前 1 GB 评估的,都是预先以 进行拆分。由于基线忽略了缓存,其吞吐量保持均匀。测量报告使用启用并行的新进程进行三轮交错的最佳结果。

词汇类型也引入了限制;SentencePiece 分词器仅部分优化。在 EPYC 上,Gemma 1 的处理速度为 2.51 GB/s(加速 7.3 倍),Gemma 3 为 3.43 GB/s(加速 9.6 倍),CodeLlama 为 3.47 GB/s(加速 10.0 倍)。尽管提升显著,但这些增益比起头条 BPE 性能低一个数量级。

在 KrabArena 上的独立复现:https://krabarena.com/claims/gigatoken-ran-26-2x-faster-than-tiktoken-on-a-174-mb-gpt-2-owt-tokenizer-slice 验证了这些结果。在一台配置 4 核 vCPU(2.20 GHz)的 Intel Xeon 虚拟机上,使用 174 MB 的 OpenWebText 切片,Gigatoken 0.9.0 达到了 277.8 MB/s 的中位速度,超过 tiktoken 0.13.0(10.62 MB/s)26.2 倍,超过 tokenizers 0.23.1(3.33 MB/s)83.4 倍。所有试验都成功验证了 35,356 份文档,确认性能趋势随着核心数量增加而提升。

查看 GitHub 仓库:https://github.com/marcelroed/gigatoken 以及发布帖:https://x.com/marcelroed/status/2079642154960564352。所有这项研究的功劳归属于该项目的作者。

Meet Gigatoken: A Rust BPE Tokenizer that Encodes Text at 24.53 GB/s, up to 989x Faster than HuggingFace Tokenizers

Asif Razzaq 是 Marktechpost Media Inc. 的首席执行官。作为一位富有远见的企业家和工程师,Asif 致力于利用人工智能的潜力推动社会公益。他最近的努力是推出人工智能媒体平台 Marktechpost,该平台以对机器学习和深度学习新闻的深入报道而著称,既技术严谨又易于广大受众理解。该平台每月浏览量超过 200 万次,显示了其在受众中的受欢迎程度。

Designing High-Performance GPU Kernels with TileLang: Tensor-Core GEMM, Fused Softmax, FlashAttention, and Autotuning

情报判断

Aioga 编辑摘要

Aioga 编辑摘要:Meet Gigatoken: A Rust BPE Tokenizer that Encodes Text at 24.53 GB/s, up to 989x Faster than Aioga 将其归入「AI资讯」方向,重点关注它对真实使用和行业竞争的影响。

背景分析

背景分析:AI 行业动态需要结合来源、时间、实际可用性和后续反馈判断,标题或单次发布本身不能替代完整证据。

Aioga 观点

Aioga 判断:这条动态更适合作为行业观察信号,当前信息足以建立线索,但不足以推导长期结论。

影响与后续

影响分析:对相关团队而言,短期应先核对来源、可用范围和实际成本,再判断是否值得接入或跟进。 后续观察:继续观察原文更新、官方说明、用户反馈和同类产品的后续动作。

来源与版权说明

本页正文由公开来源页面提取并按原有信息整理,同时保留来源、发布时间和原文入口。版权归原作者及来源网站所有,请通过原文链接核验和阅读来源版本。

抓取通道: RSS · 原始域名: marktechpost.com

来源: MarkTechPost(RSS)

原文链接: 打开原始来源

Aioga 归档: 查看情报页

Content record: source-page · Updated: 2026-07-23T08:01:22.000Z

API 中转站
API RELAY · DEVELOPER INFRASTRUCTURE

API 中转站

统一接入主流 AI 模型 API,为开发、测试与生产环境提供稳定调用入口。

立即访问 api.w173.com
AIOGA SHARE POSTER

分享这篇 AI 情报

Gigatoken is a Rust BPE tokenizer encoding text at 24.53 GB/s, up to 989x faster than Hu...

MarkTechPost(RSS)2026-07-23T08:01:22.000Z
扫码打开文章详情扫码直达文章详情

Aioga 自动聚合全球 AI 动态,并保留来源信息用于核验与引用。