gigatoken

用 Rust 把分词速度拉到 GB/s,告别数据预处理瓶颈

开源 🏷️完全免费 🔧 仅开源项目,无在线服务,需自行部署 开源模型 🍴 复刻 224 🐛 待处理 20 👀 关注 29
GitHub ↗
GitHub 星标 ★ 4153
维护状态 较活跃
是否开源 开源
定价模式 🏷️完全免费 开源项目,MIT许可证,完全免费,可自行部署使用。

项目预览

gigatoken 项目界面预览图
图片来源:GitHub 官方仓库名片

项目数据

分类开源模型
开发团队marcelroed
定价模式🏷️完全免费
价格说明开源项目,MIT许可证,完全免费,可自行部署使用。
访问状态🔧 仅开源项目,无在线服务,需自行部署
是否开源是
开源协议MIT
主要语言Rust
技术栈/模型llm,nlp,tokenization,tokenizer
GitHub 星标★ 4153
上线时间2025-11-10 00:00:00
代码更新2026-11-02
仓库体积2.9 MB
本站数据更新2026-11-09
维护状态较活跃
收录时间2026-08-09
浏览次数5

项目介绍

gigatoken 是一个用 Rust 编写的高性能语言模型分词器,专注于将分词速度提升到 GB/s 级别。它解决了现有分词器(如 Hugging Face Tokenizers)在处理大规模文本时速度不足的瓶颈,尤其适合大模型训练和推理场景中的海量数据预处理。其核心能力包括:支持 BPE、WordPiece 等主流分词算法,提供与 Hugging Face Tokenizers 兼容的 API,并利用 Rust 的内存安全和并发特性实现极致性能。项目通过优化数据结构、使用 SIMD 指令和并行处理,显著降低了分词延迟,使开发者能够快速处理 TB 级语料,加速模型训练前的数据管道。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 4153

技术标签

使用教程

难度:入门 约 5 分钟 部署方式:库/依赖 4 步

环境要求

  • 已安装 Python 与 pip(README 未指定最低 Python 版本)
  • 一个已存在的分词器实例:HuggingFace Tokenizers 或 tiktoken(仅兼容模式需要)
  • 无需本地 Rust 工具链,README 仅提供 pip 安装方式

安装与启动步骤

  1. 1安装 gigatoken

    README 只给出 pip 这一种安装方式,直接在目标 Python 环境中执行即可;建议使用虚拟环境避免污染全局依赖。

    pip install gigatoken
  2. 2包装 HuggingFace 分词器

    导入 gigatoken,并用 gt.Tokenizer(hf_tokenizer).as_hf() 包装你已有的 HuggingFace 分词器,hf_tokenizer 需替换为真实实例。

    import gigatoken as gt
    
    # Minimum change from existing HuggingFace tokenizers usage (compatibility mode)
    hf_tokenizer = ...
    tokenizer = gt.Tokenizer(hf_tokenizer).as_hf()
  3. 3批量编码文本

    包装后的 tokenizer 可放在和原 hf_tokenizer 相同的调用场景中,用 encode_batch 一次传入多条文本进行批量分词。

    tokens = tokenizer.encode_batch(["This is a test string", "And here is another"])
  4. 4切换到 tiktoken 模式

    如果已有 tiktoken 分词器,用 as_tiktoken() 包装,之后即可按 tiktoken 的用法调用 encode_batch。

    tokenizer = gt.Tokenizer(tiktokenizer).as_tiktoken()
    tokens = tokenizer.encode_batch(["This is a test string", "And here is another"])

如何确认成功

执行 python -c "import gigatoken as gt" 无报错,且调用 tokenizer.encode_batch([...]) 能正常返回分词结果,即安装成功。

常见问题

Q:兼容模式的输出和 HuggingFace Tokenizers 完全一致吗?

A:README 说明已投入大量精力确保兼容模式下输出与 HuggingFace Tokenizers 完全一致,但这一致性会带来不可忽略的性能损耗。

Q:需要自己编译 Rust 吗?

A:README 只提供 pip install gigatoken 一种安装方式,未要求本地安装 Rust 工具链或从源码编译。

Q:gigatoken 比 HuggingFace 快多少?

A:README 标题称约 1000x faster,并说明 HuggingFace tokenizers 与 tiktoken 本身已是多线程 Rust 实现。

Q:支持哪些分词算法和分词器?

A:README 称支持 BPE、WordPiece 等主流分词算法,并可通过兼容模式对接 HuggingFace Tokenizers 与 tiktoken。

注意事项

  • 兼容模式为保证输出与 HuggingFace 完全一致会牺牲性能,追求极致速度时可考虑使用 gigatoken 自己的 API。
  • 对比基准中的 HuggingFace tokenizers 和 tiktoken 本身已经是多线程 Rust 实现,理解加速倍数时需注意这一点。
  • README 中 hf_tokenizer = ... 与 tiktokenizer = ... 是占位写法,实际使用时必须替换成你自己已加载的分词器对象。

核心亮点

  • 分词速度达到 GB/s 级别,比主流分词器快数倍,实测可大幅缩短大规模语料处理时间
  • 提供与 Hugging Face Tokenizers 兼容的 API,迁移成本低,可无缝替换现有工作流
  • 基于 Rust 实现,内存安全且支持并行处理,在多核 CPU 上能线性扩展吞吐量

不足之处

  • 项目仍处于早期阶段,API 和功能可能不够稳定,需要关注版本迭代
  • 文档和示例相对较少,新用户上手可能需要参考源码或社区讨论

适用场景

  • 大模型预训练前的大规模语料清洗和分词,提升数据管道效率
  • 实时推理服务中需要低延迟分词,减少请求响应时间
  • 研究或生产环境中处理多语言、超长文本的分词任务

替代项目

Hugging Face Tokenizers、tokenizers-rs、sentencepiece

上一篇:kimi-k3-in-c

下一篇:FastDeploy

同类项目推荐

HuggingFaceModelDownloader 开源

不装 Python,一条命令拉取 HuggingFace 模型和数据集

Simple go utility to download HuggingFace Models and Datasets

★ 1211 2026-10-04
awesome-llmops 开源

一站式收藏 LLMOps 工具,快速上手大模型运维

Awesome series for LLMOps

★ 56 2026-08-09
noronha 开源

用声明式管道搞定 ML 数据流程,快速上线模型

DataOps framework for Machine Learning projects.

★ 61 2026-08-09
inferencedb 开源

把实时模型推理结果一键流入数据湖,方便后续分析

Stream inferences of real-time ML models in production to any data lake (Experimenta···

★ 82 2026-08-09
inferoxy 开源

一键部署 Docker 化 CV 模型,快速上线推理服务

Service for quick deploying and using dockerized Computer Vision models

★ 95 2026-08-09
ComfyUI-Nvidia-Docker 开源

一条命令拉起带 GPU 的 ComfyUI,权限不打架

ComfyUI for NVIDIA GPU in a Docker container with user configurable uid/gid

★ 441 2026-10-30
Docker-Warp-Socks 开源

一键启动 WARP SOCKS5 代理,让容器内应用秒连 CloudFlare 网络。

Connet to CloudFlare WARP, exposing `socks5` proxy all together.

★ 639 2026-08-09
llama_deploy 开源

把 LlamaIndex 智能体工作流一键部署成生产级微服务

Deploy your agentic worfklows to production

★ 2066 2026-08-09
rivet 开源

给 AI 智能体和协作应用装上持久记忆与实时状态

The orchestrator for agentic workloads. A fast, high-density and scalable orchestrat···

★ 6815 2026-10-01