huggingface/tokenizers

💥 Fast State-of-the-Art Tokenizers optimized for Research and Production

What it solves

Tokenization 是机器学习模型关键的预处理步骤。该库提供了最广泛使用的分词算法的高性能实现,允许开发者将原始文本转换为模型可以理解的分词(tokens)。

How it works

该项目是使用 Rust 实现的,以追求极致速度,并提供 Python、Node.js 和 Ruby 的绑定(bindings)。它允许用户使用 BPE、WordPiece 或 Unigram 等算法来训练新的词汇表(vocabularies)。它 handles 整个预处理流水线,包括带有对齐跟踪的归一化(normalization),预分词(例如通过空格拆分),以及后处理任务,如截断(truncation)、填充(padding)和添加特殊分词(special tokens)。

Who it’s for

它是为需要快速、多功能且可扩展的方式来为 AI 模型进行文本分词的研究人员和生产工程师设计的。

Highlights

  • 自有的高速度 Rust 实现,可以在服务器 CPU 上在 20 秒内分词一个 GB 的文本。
  • 支持多种分词模型,包括 BPE、WordPiece 和 Unigram。
  • 完整的预处理套件,包括填充、截断以及用于归一化的对齐跟踪。
  • 通过 Python、Node.js 和 Ruby 的绑定提供多语言支持。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目