想给模型加新语言但不想从头训?这篇论文的原地分词器扩展办法,让LFM2.5在印地语和越南语上token数砍半,解码快3倍,代码和权重都开源了。
固定分词器在预训练后对新语言无效,导致每个词被拆成更多token,增加延迟和计算。论文提出原地扩展方法,在现有BPE合并基础上继续添加新token,每个新token可精确分解为源token。将该方法应用于LFM2-8B-A1B(8B参数MoE模型),得到LFM2.5-8B-A1B,词汇量从原tokenizer扩展至128K。扩展后,印地语和越南语的token数分别减少约2.4倍和2.6倍,泰语减少高达4.0倍。结合大词汇量的每token成本,估计参考设备上这些语言的每字解码速度提升2.2-3.7倍。
In-Place Tokenizer Expansion for Pre-trained LLMs
A tokenizer fixed at the start of pre-training allocates vocabulary in proportion to the pre-training corpus, reflecting the deployment priorities at that time. When those priorities shift, languages added later are split into many more tokens per word, which can raise latency, compute, and energy consumption for users of those languages. Cloud models can afford a broad vocabulary because the embedding and LM-head matrices are a small fraction of their parameters. On a compact model those matrices are a material share of per-token decode bandwidth, so on-device models ship small vocabularies and accept fragmentation outside a fixed language set. We present tokenizer expansion, an in-place recipe for upgrading a pre-trained model's tokenizer when the model producer controls its design. We continue the existing tokenizer's BPE merges on a multilingual corpus, so most source tokens carry over unchanged as single tokens and every new token has an exact decomposition into source tokens. We copy the carried-over embedding rows unchanged and initialize new rows as the mean of their source sub-token embeddings. A two-stage adaptation, embedding-only training then full-model continued pre-training, recovers source-checkpoint quality. We apply the recipe to a continued pre-trained checkpoint of LFM2-8B-A1B, an 8B-parameter Mixture-of-Experts model, to help produce LFM2.5-8B-A1B with a 128K tokenizer. The expanded tokenizer encodes Hindi and Vietnamese in roughly $2.4\times$ and $2.6\times$ fewer tokens than the source (up to $4.0\times$ on Thai). Combining these reductions with the measured per-token cost of the larger vocabulary, we estimate a $2.2$-$3.7\times$ per-character decode speedup for these languages across our reference devices. We release the model weights and the expanded tokenizer, and report the negative findings that shaped the recipe.