桃子桃子快讯
返回首页
工具

GigaToken:号称比 HuggingFace 快千倍的分词器

一款 Rust 实现的分词库,称在多款 CPU 和主流模型分词器上比 HF tokenizers 快近千倍,并提供 dr…

2026.07.23 · 周四4 分钟阅读

近日,一款名为 GigaToken 的开源分词器在 Hacker News 发布,号称在多款 CPU 与主流模型分词器上比 HuggingFace Tokenizers 快近千倍,并可作为 tiktoken 的直接替代品。项目用 Rust 编写,可通过 pip 安装,亦提供无需安装即可试用的 CLI 基准工具。

核心特性与兼容性

GigaToken 定位为「当前最快的语言模型分词器」,支持现代 x86 与 ARM 架构 CPU,覆盖几乎所有常见分词器类型。它提供两种使用方式:

  • 兼容模式:与 HuggingFace Tokenizers 或 Tiktoken 的接口一致,可直接替换现有调用,迁移成本极低。为保证输出与原版逐字节一致,这一模式需额外校验开销,速度略低于纯 API 模式。
  • GigaToken API(最快):由 Rust 层直接读取文件,跳过 Python 数据结构开销,最大化并行度。用户可传入 HuggingFace 模型名(如 Qwen/Qwen3-8B),用 encode_files 一键完成大文件分词。

作者将性能提升归因于三点:把传统上外包给正则引擎的预分词(pretokenization)改为 SIMD 等底层指令实现;对已见过词汇的预分词映射做高效缓存;尽量减少与 Python 的交互,并降低线程间争用。

基准测试

作者在两块硬件上对 11.9 GB 的 OpenWebText 训练样本(owt_train.txt)做端到端分词吞吐测试,部分结果如下:

  • AMD EPYC 9565(72 核 × 2 路,共 144 核):GPT-2 分词达 24.53 GB/s,对比 HF tokenizers 的 24.8 MB/s 快约 989 倍,对比 tiktoken 的 36.0 MB/s 快约 681 倍;同硬件上,处理 GPT-OSS 快约 482 倍,Llama 3/3.1/3.2 快约 457 倍,DeepSeek V3/R1/V4 快约 750 倍。
  • Apple M4 Max(16 核):GPT-2 分词达 8.79 GB/s,对 HF tokenizers 快约 1,268 倍,对 tiktoken 快约 140 倍

其他主流模型在 EPYC 上的提速情况:Phi-4 快 801 倍、OLMo 2/3 快 833 倍、Qwen 3 快 648 倍、GLM 4/5 约 280 倍、Qwen 2/2.5 约 691 倍、Llama 3.3 约 431 倍、Llama 4 约 286 倍。少数基于 SentencePiece 的模型(如 Gemma、Mistral、CodeLlama、TinyLlama、TinyBERT)提速幅度较小,落在 7–155 倍区间。

按 EPYC 的实测速率推算,整套 Common Crawl(约 130 万亿 token)可在不到 6.5 小时内分词完成。

安装与验证

  • 安装:pip install gigatoken
  • 无需安装试用:uvx --with tokenizers gigatoken bench <hf_model_repo> owt_train.txt --validate --doc-separator " ",会自动校验输出与原 HF 分词器是否完全一致,并给出速度对比。

作者表示已对多种分词器做较充分测试,但覆盖面仍可能不全。如遇输出不一致或特定用例性能未达预期,可在 GitHub Issue 中反馈以便尽快修复。

信源