r/MachineLearningが追う Dante-2B、Italian 中心の bilingual LLM を 2×H200 で scratch から訓練

r/MachineLearning の投稿は、Dante-2B という Italian/English model を前に押し出した。投稿者の angeletti89 によれば、これは Llama や Mistral の fine-tune ではなく、2× H200 GPU で scratch から学習している 2.1B parameter の dense decoder-only transformer である。構成は 28 layers、d_model=2560、GQA、SwiGLU、RMSNorm、RoPE で、Italian・English・code を狙った custom 64K BPE tokenizer を使うという。

投稿の中心は tokenizer にある。英語中心の tokenizer は l'intelligenza のような Italian contraction を不利に分割し、context window を無駄に消費しながら morphology の扱いも弱くする、と投稿者は述べる。Dante-2B の tokenizer はおよそ 42% Italian、36% English、22% code の character-balanced mixture で学習され、apostrophe contraction を保つ pre-tokenization と accented character を atomic unit として扱う設計を入れたとしている。

小規模でも language efficiency を正面から取りに行く

学習条件の詳細もかなり具体的だ。投稿では FineWeb-2 Italian、FineWeb-Edu、171K 冊の Italian public-domain books、legal・parliamentary text、bilingual Wikipedia、StarCoderData を組み合わせた約 300B token corpus が説明される。すでに終わった Phase 1 では sequence length 2048 で 100B tokens を学習し、DeepSpeed ZeRO-2、torch.compile、FP8 via torchao を利用した。投稿によれば、この run は約 16 日で完了し、NaN や OOM を避けながら約 28% MFU を維持した。現在は 20B tokens を追加し、context を 4096 に延ばす Phase 2 が進行中だ。

この thread の面白さは benchmark の派手さよりも方向性にある。多くの open multilingual model は今でも Italian のような言語を English の副次物として扱うが、Dante-2B は tokenizer efficiency と corpus composition を最初に整え、その上で小さめの model を素直に育てる戦略を取る。投稿者は Phase 2 後に weights、tokenizer、config、pretraining pipeline をまとめて公開し、その後に SFT phase も行う予定だとしている。frontier model と競う規模ではなくても、language-specific な品質が raw parameter count だけでなく data と tokenization choice に大きく左右されることを示す具体例になっている。