补齐蒸馏 teacher 字段填充并支持 fsdp2 策略
值得精读,但只需读源码不必读讨论——PR 本身讨论为零。重点关注三个设计决策:一是 padding 模板选择 "按模板序列长度重建" 而非 "裁剪/丢弃教师字段",意味着合成样本仍需保持可被蒸馏 loss 消费的完整张量结构;二是用 .new_full/.new_zeros 保留 topk 维与 dtype/device,写法克制,便于后续扩展更多 teacher 字段;三是把 fsdp2 直接并入 fsdp/veomni 分支而不是新建实现。建议阅读者在本地补一条 CPU 单测覆盖 teacher_ids/teacher_logprobs 存在与不存在两种情况,并确认跨 tokenizer 场景下 eos_token_id 作为 teacher topk id 的合法性。