Files
laoyao_2b_moe/README.md

2.4 KiB
Raw Blame History

laoyao_2b_moe

这个 repo 用来把 Jiayi/Laoyao 的 2B MoE 小模型实验重构成更可复现的预训练项目:数据配比更合理,模型定义迁移到 NeMo/Megatron 风格配置,训练入口从手写 PyTorch 逻辑迁移到 Megatron/Nemo 体系。

当前目标不是继续沿用旧的手写 trainer而是把数据、模型、训练三个边界拆开

  • dataset/: 预训练数据和验证集的构建、manifest、数据落盘位置。
  • model/: 2B MoE 架构定义,优先用 NeMo/Megatron 配置表达。
  • training/: 训练 recipe、评估 recipe、并行和优化超参。
  • scripts/: 在 g0033 上同步数据、拉起训练的 shell 入口。

当前数据计划

预训练目标规模为 200B tokens随机种子固定为 42。核心配比

类别 目标比例 说明
English Web 40% Ultra-FineWeb/FineWeb 类英文网页文本
English Edu 20% FineWeb-Edu/高质量教育文本science 不足时也从这里补齐
Chinese Clean 10% Ultra-FineWeb zh / CCI3-HQ / SkyPile 类中文干净文本
Science 10% medmcqa、proofwriter、scienceqa、sciq、qasc、openbookqa不足则 edu 补齐
Logic 10% 从高质量 scored/education 数据中抽取逻辑类文本
Math 5% 使用 Jiayi 已清洗/评分的数学来源
Code 5% 使用 Jiayi 已去重的多语言代码数据

验证集为 2,800 条,七个能力维度各 400 条science_reasoning、logic、code、chinese_exam、math、chinese_dialogue、english_dialogue。它会用于预训练过程中的 accuracy、perplexity 和 nll 评估。

Tokenizer 设计

为了兼容 GLM-5.2 生态,本模型的 tokenizer/vocab 直接采用 GLM-5.2 同款词表,而不是旧 Laoyao 65K BPE。当前 g0033 上的引用路径是:

/mnt/tmp/yi/data/tokenizer/tokenizer.json

该 tokenizer 当前解析出的 vocab size 为 151,643。后续训练数据应按这个 tokenizer 重新统计/切分 token budget。

g0033 路径约定

repo 路径:

/mnt/beegfs/yi/laoyao_2b_moe

200B 数据当前构建源路径:

/mnt/beegfs/yi/laoyao_2b_moe_pretraining_dataset/train/pretrain_rebalanced_web40_edu20_chinese10_science10_logic10_math5_code5_200b_v1_20260701

构建完成后同步到 repo 内:

bash scripts/sync_pretrain_data_into_repo.sh

同步后的数据目录 dataset/pretrain/data/.gitignore 忽略,不提交到 GitHub。