Open SourceRecherche 🇺🇸 24.07.2026 01:03

Gigatoken : tokeniseur BPE en Rust encode du texte à 24,53 Go/s, jusqu'à 989 fois plus rapide que les tokeniseurs HuggingFace

OpenAIOpenAI Hugging FaceHugging Face Google/DeepMindGoogle/DeepMind MetaMeta Alibaba/QwenAlibaba/Qwen DeepSeekDeepSeek Moonshot AIMoonshot AI NVIDIANVIDIA MicrosoftMicrosoft Allen Institute for AIAllen Institute for AI Answer.AIAnswer.AI MistralMistral
Marcel Roed, doctorant à Stanford, a publié Gigatoken, un tokeniseur BPE écrit en Rust avec des liaisons Python, atteignant des vitesses allant jusqu'à 24,53 Go/s sur un AMD EPYC à 144 cœurs, soit 989 fois plus rapide que les tokeniseurs HuggingFace et 681 fois plus rapide que tiktoken. L'accélération provient d'un pré-tokeniseur SWAR écrit à la main et de la mise en cache des pré-tokens.
Gigatoken — это библиотека для токенизации методом BPE (byte-pair encoding), написанная на Rust с Python-привязками. Она выпущена под лицензией MIT аспирантом Стэнфорда Марселем Рёдом (Marcel Rød). Версия 0.9.0 доступна на PyPI (pip install gigatoken). В бенчмарках на GPT-2 на системе с двумя 144‑ядерными AMD EPYC 9565 Gigatoken обрабатывает данные со скоростью 24,53 ГБ/с. Для сравнения: OpenAI tiktoken достигает 36,0 МБ/с, HuggingFace tokenizers — 24,8 МБ/с, то есть Gigatoken быстрее в 681 и 989 раз соответственно. На Apple M4 Max (16 ядер) скорость составляет 8,79 ГБ/с (в 1268 раз быстрее HuggingFace, в 140 раз быстрее tiktoken), на AMD Ryzen 7 9800X3D — 6,27 ГБ/с (в 106 и 68 раз). Ускорение достигается не за счёт более быстрого цикла слияния BPE, а благодаря рукописному претокенизатору с использованием техники SWAR (SIMD Within A Register) и кэшированию претокенов. Изначально претокенизатор на базе regex работал со скоростью ~47 МБ/с; после оптимизаций (ручной конечный автомат, SWAR, двойной курсор с ILP) скорость выросла до 1049 МБ/с — ускорение в 22,3 раза. Поддерживается 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, но даёт лишь 200–300-кратное ускорение) и нативный (максимальная скорость). SentencePiece-токенизаторы ускоряются в 7–22 раза, WordPiece не поддерживается. Независимое воспроизведение на KrabArena (4 vCPU Intel Xeon) показало ускорение в 26,2 раза по сравнению с tiktoken и в 83,4 раза по сравнению с tokenizers.
Source: MarkTechPost — original
Nos articles précédents sur ce sujet ↓
Infos fraîches