Mã nguồn mởNghiên cứu 🇺🇸 24.07.2026 01:03

Gigatoken: BPE Tokenizer in Rust Encodes Text at 24.53 GB/s, Up to 989x Faster Than HuggingFace Tokenizers

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
Stanford PhD student Marcel Roed released Gigatoken, a BPE tokenizer in Rust with Python bindings, achieving speeds of up to 24.53 GB/s on a 144-core AMD EPYC, 989x faster than HuggingFace Tokenizers and 681x faster than tiktoken. The speedup comes from a handwritten SWAR pre-tokenizer and pre-token caching.
Gigatoken là một thư viện token hóa bằng phương pháp BPE (mã hóa cặp byte), viết bằng Rust với giao diện Python, được phát hành dưới giấy phép MIT bởi nghiên cứu sinh Stanford Marcel Rød. Phiên bản 0.9.0 có sẵn trên PyPI (pip install gigatoken). Trong benchmark với GPT-2 trên hệ thống hai vi xử lý 144 lõi AMD EPYC 9565, Gigatoken xử lý dữ liệu với tốc độ 24,53 GB/giây. Để so sánh: OpenAI tiktoken đạt 36,0 MB/giây, HuggingFace tokenizers đạt 24,8 MB/giây, tức Gigatoken nhanh hơn lần lượt 681 và 989 lần. Trên Apple M4 Max (16 lõi), tốc độ đạt 8,79 GB/giây (nhanh hơn HuggingFace 1268 lần, nhanh hơn tiktoken 140 lần); trên AMD Ryzen 7 9800X3D, tốc độ đạt 6,27 GB/giây (nhanh hơn lần lượt 106 và 68 lần). Tăng tốc đạt được không nhờ vòng lặp hợp nhất BPE nhanh hơn, mà nhờ bộ tiền token hóa viết tay sử dụng kỹ thuật SWAR (SIMD trong một thanh ghi) và lưu đệm các pre-token. Ban đầu, bộ tiền token hóa dựa trên regex hoạt động ở tốc độ ~47 MB/giây; sau các tối ưu hóa (automat hữu hạn trạng thái thủ công, SWAR, con trỏ kép với ILP), tốc độ tăng lên 1049 MB/giây — tăng tốc 22,3 lần. Hỗ trợ 23 họ tokenizer: 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 và Mistral. Có hai chế độ: chế độ tương thích (giữ nguyên tính tương đương đầu ra với HuggingFace/tiktoken, nhưng chỉ tăng tốc 200–300 lần) và chế độ native (tốc độ tối đa). Các tokenizer SentencePiece được tăng tốc từ 7 đến 22 lần, WordPiece không được hỗ trợ. Kết quả tái lập độc lập trên KrabArena (4 vCPU Intel Xeon) cho thấy tăng tốc 26,2 lần so với tiktoken và 83,4 lần so với tokenizers.
Nguồn: MarkTechPost — bản gốc
Bài viết liên quan trước đây ↓
Tin mới