OLMo3-190M-zh-v2 Tokenizer

这是 OLMo3-190M 中文 v2 预训练链路使用的自训练 tokenizer。

它的作用是统一后续几个阶段的 token 语义:

原始中文语料 -> tokenizer -> tokenized.bin -> OLMo3-190M base pretrain
                                      -> continue pretrain
                                      -> SFT / reasoning 数据准备

注意:token id 本身只是数字,数字的语义由 tokenizer 决定。使用本项目的 tokenized.bin、模型 config 和 checkpoint 时,必须使用这个 tokenizer,不能和其他 tokenizer 混用。

基本信息

项目
算法 ByteLevel BPE
词表大小 48,000
normalizer NFC
pre_tokenizer Qwen regex split + ByteLevel
decoder ByteLevel
min_frequency 2
initial_alphabet ByteLevel alphabet
主要语言 中文
主要用途 OLMo3-190M 中文 v2 base/continue/SFT 链路

训练语料

Tokenizer 训练语料来自 base pretrain 原始语料的代表性抽样,不混入 SFT 对话数据。

数据源 作用
Ultra-FineWeb-zh 通用中文网页文本,提供覆盖面
Fineweb-Edu-Chinese-V2.2 教育类中文文本,提高知识密度

训练 tokenizer 的抽样规模:

指标 数值
raw shard 数 10
文档数 445,359
字符数 660,001,818
训练耗时 约 2,388 秒

这样做的目的不是“用满所有预训练语料”,而是从最终 base 语料中抽一个足够大、分布尽量代表性的子集,让 BPE merge 规则覆盖中文网页、说明文、教育文本和少量中英混排场景。

Special Tokens

<|endoftext|> -> 0
<|pad|>       -> 1
<|bos|>       -> 2
<|unk|>       -> 3
<|im_start|>  -> 4
<|im_end|>    -> 5
<think>       -> 6
</think>      -> 7
token 用途
`< endoftext
`< pad
`< bos
`< unk
`< im_start
<think> / </think> 为后续 reasoning 数据格式预留

验证样例

输入 token 数
人工智能是机器学习和深度学习的重要方向。 8
北京大学位于北京市海淀区。 5
Python 是一种常用的编程语言。 5
今天天气不错,我准备去图书馆学习。 9
`< im_start
<think>先分析问题</think> 4

所有 special token 均为单 token,AutoTokenizer 可正常加载,固定中文测试句 encode/decode 可还原。

使用方法

from transformers import AutoTokenizer

tok = AutoTokenizer.from_pretrained("Nwna/olmo3-190m-zh-v2-tokenizer")
ids = tok.encode("人工智能是机器学习的重要方向。", add_special_tokens=False)
text = tok.decode(ids, skip_special_tokens=False)

与模型配置的关系

后续 OLMo3-190M 模型 config 必须从 tokenizer 单向同步这些字段:

vocab_size = 48000
eos_token_id = 0
pad_token_id = 1
bos_token_id = 2
unk_token_id = 3

如果模型 config 的 vocab_size 仍保留其他模型的值,例如 100278,会造成 embedding/lm_head 大小和 tokenized 数据不一致。

相关数据

匹配的正式 base tokenized 数据:

Nwna/olmo3-190m-zh-v2-base-data

该数据使用本 tokenizer 编码,保存为 uint16 tokenized.bin。由于 vocab size 小于 65,535,uint16 可以覆盖所有 token id,同时比 uint32 节省一半磁盘和 IO。

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support