tokenizers 库发布了版本 1 的候选版本,显著提升了文本编码的性能,解决了训练和服务工作流中的瓶颈。该更新在保持与 v0.23 API 兼容的同时,为十个模型系列带来了大幅度的加速。
- 通过 bitcannon 库使用位流操作替换正则表达式拆分,单线程下的编码速度比 v0.23 快 3 到 30 倍。
- 线程局部词缓存存储重复预标记的结果,使后续出现能够完全跳过合并过程。
- BPE 合并循环重用临时缓冲区,并在单次调用中处理一批预标记,消除了每次调用的内存分配。
- 在八个工作进程上扩展可实现线性性能的 76%,解码吞吐量也通过直接写入缓冲区得到提升。
这些优化确保分词不再因等待 CPU 处理而导致 GPU 空闲,从而避免模型因数据饥饿而受限。