29.1.3 数据预处理、预训练循环与检查点#

Megatron-LM 的端到端预训练是一条三段式流水线,tools/preprocess_data.py 把 JSONL 语料分词后写成 mmap.bin/.idx 二进制索引数据集;pretrain_gpt.py 通过 pretrain() → train() → train_step() 三层调用,把取批、前向反向、梯度归约、优化器步进、日志组织成一个按迭代滚动的循环,其中真正跨流水级驱动前向反向的是 get_forward_backward_func() 返回的调度函数;训练产物则以 dist_checkpointing分片检查点(sharded checkpoint)落盘,可在任意并行切分下恢复,并经 tools/checkpoint/convert.py 在 HuggingFace 与 mcore 两种格式间转换。

登录后才可看