MinT开源新进展:首批支持GLM5/GLM5.1的LoRA训练,DSA+MTP全栈打通|代码已合并
国产开源大模型GLM5系列,终于可以高效做LoRA微调了。
刚刚,Macaron AI背后的研究团队Mind Lab宣布,旗下训练框架MinT已经完成对智谱GLM5和GLM5.1的全栈支持——训练、推理、Checkpoint转换三条链路全部打通。
听起来像例行公事?并不是。
GLM5不是"又一个大MoE模型"那么简单。它同时集成了Multi-Head Latent Attention(MLA)、DeepSeek Sparse Attention(DSA)、Multi-Token Prediction(MTP)三套先进架构。
这意味着:训练栈、推理栈、Checkpoint桥接,三方各自能跑通,但凑到一起就可能"翻脸"。任何一个环节对模型的理解出现偏差,整个流程就垮了。
Mind Lab啃下了这块硬骨头,相关代码已合并到VeRL、Megatron-LM、Megatron-Bridge、vLLM等多个开源项目。
为什么GLM5的支持这么难?
先说背景。
最近半年,国产开源大模型在架构上越走越激进。GLM5系列把三个高难度组件叠在了一起:
-
MLA:Multi-Head Latent Attention,DeepSeek V3带火的注意力压缩方案
-
DSA:DeepSeek Sparse Attention,稀疏注意力机制,对训练精度极度敏感
-
MTP:Multi-Token Prediction,多token预测,涉及模型结构、Checkpoint转换、训练损失三条路径
每一个单独拿出来都不算简单,三个叠在一起就是"地狱模式"。
更麻烦的是,整个训练流程涉及多个上游项目:transformers、Megatron-LM、Megatron-Bridge、vLLM、VeRL……任何一个版本对不上号,工程时间就会被无情吞噬。
Mind Lab最终把问题拆成了三块来解决:
-
训练侧:让DSA和MTP在真实训练配置下稳定收敛
-
推理侧:让vLLM正确加载DSA架构的LoRA适配器
-
桥接侧:让Checkpoint在不同框架间无损转换
训练侧:DSA对训练-推理误差零容忍
第一个真正的拦路虎,是训练结果和Rollout结果对不上。
普通的稠密注意力对rollout和training之间的微小数值差异比较宽容——大不了就是一点噪声。但DSA不一样。
DSA的稀疏选择机制对数值精度极度敏感。一点点差异,就可能导致选中的token完全不同。一旦发生这种情况,你训练用的轨迹就和Rollout生成的轨迹不是一回事了。
GLM5的技术报告里专门提到这一点:他们用IcePop来缓解RL中的训练-推理误差,并且在DSA的indexer token选择中需要确定性的torch.topk,默认还要冻结indexer。
Mind Lab在VeRL PR #5722里扩展了Rollout修正的语义:
-
如果阈值是单个浮点数,沿用之前的截断重要性采样
-
如果传入了上下界两个阈值,就切换到IcePop模式,把信任范围之外的重要性权重直接清零
但仅仅修复indexer的RoPE还不够。DSA要真正派上用场,必须能在长上下文训练配置下跑起来——也就是Token-Head-Dim(THD)的紧凑布局加上Context Parallelism(CP)的序列分片。
Mind Lab的解决方案是Megatron-LM PR #3674:
-
加入TileLang融合内核,覆盖DSA的indexer和稀疏MLA路径
-
实现absorbed MLA支持,传入position_ids和up_v_weight到DSA核心注意力
-
增加get_absorb_query_key_value_tensors(),物化等效的linear_kv_up_proj权重(包括LoRA delta)
-
提供分块非融合稀疏注意力的fallback方案
整个改动覆盖了从内核优化到fallback路径的完整链路。
MTP的稳定支持:和上游版本赛跑
MTP是另一个让人头疼的组件。
它同时触及模型结构、Checkpoint转换、训练损失路径三个方向,意味着单独看每一块都正常,但上游一旦改动其中一处,其他几处就可能悄悄失同步。
Mind Lab分三步推进:
第一步:VeRL PR #5323
启用Megatron-Bridge支持的MTP模型,把MTP从"特殊功能"变成正常训练路径,不再依赖特定版本的依赖项。
第二步:VeRL PR #5587
对齐上游Megatron-Core的MTP loss处理逻辑,可用时使用上游process_mtp_loss,不可用时fallback到旧逻辑,同时保持PPO要求模型返回logits的设定。
第三步:VeRL PR #6005
随着上游MLA flash-attention forward的修复落地,本地patch只需要在没有该修复的Megatron-Core版本上保持激活。
一旦模型家族依赖多个快速演进的上游项目,版本对齐本身就会消耗大量工程时间。
推理侧:vLLM的LoRA加载坑有多深?
训练搞定了,推理这边的坑也不少。
vLLM处理GLM5的LoRA路径有自己独特的挑战:
-
MLA有自己的投影结构
-
DSA增加了indexer相关模块
-
MoE引入了分组的expert权重
这些意味着即使LoRA权重存在,加载也可能因为对模块类型或包装层布局的错误假设而失败。
Mind Lab在vLLM PR #35077里修复了这一切。
简单的失败问题相对好处理:
-
LoRA注册可能在fused_qkv_a_proj这类模块上失败
-
MLA的post-load处理可能因为LoRA wrapper把quant_method藏到了base_layer后面而崩溃
-
MoE LoRA可能落到一个重写权重布局的backend路径上
修完这些之后,看起来一切都正常了,适配器也能加载了——但结果和LoRA合并后的推理结果不一致。
最终找到根本原因:GLM5在vLLM中实现的某些LoRA target并不是普通的线性层。
像fused_qkv_a_proj和GateLinear这类模块带有自定义的forward()逻辑、自定义内核、输出dtype处理、张量并行通信行为。一个通用的LoRA wrapper会把这些模块路由到错误的实现上。
Mind Lab的修复方案:
-
BaseLinearLayerWithLoRA增加_apply_base_forward(),保留基础层自己的forward(),仅在之后应用LoRA delta
-
MergedColumnParallelLinearWithLoRA仅对MergedColumnParallelLinear的有效未分片子类使用此路由
-
ReplicatedLinearWithLoRA对ReplicatedLinear子类做同样的修改
这样自定义的融合模块就能保留自己特有的行为,而不是被强行通过通用的merged-column路径处理。
Checkpoint桥接:让DSA、MLA、MoE、MTP都能正确转换
最后一块拼图是Checkpoint桥接。
Megatron、Hugging Face、vLLM对同一个权重的命名方式不一样,所以LoRA的映射必须保持一致。
Mind Lab在VeRL PR #5462里增加了DSA特定的target模块——linear_wq_b、linear_wk、linear_weights_proj,让indexer模块真正参与到LoRA映射中。
更深一层的工作是从DeepSeek V3.2到GLM5的Bridge适配。
早期transformers库还没原生支持GLM5时,Mind Lab就通过DeepSeek V3.2路径临时支持了GLM5。后续在Megatron-Bridge PR #2469和PR #2913里:
-
构建了专门的glm_moe_dsa bridge/provider路径
-
映射了核心的DSA、MLA设置、MoE结构和MTP层
-
PR #2644构建了MTP的映射关系
把hf_pretrained和hf_config直接存储在bridge实例上,下游bridge就能足够早地检查Hugging Face模型状态,决定需要做什么样的转换。
Grouped Experts:迟一步合并就完蛋
transformers 5引入了融合的expert布局——一个框架可能以融合形式存储一组expert,另一个框架则期望它们被拆开。
Import和Export因此变成了结构性操作:在这里切片,在那里重组,回去的路上再拼接。
Grouped LoRA的导出也需要类似修复。Megatron-Bridge PR #3341修改了grouped expert export,让adapter权重在grouped tensor被累加和转置之前先合并。
如果合并做晚了,导出的Checkpoint看起来还是有效的,但实际上和你训练的adapter已经对不上了——因为adapter根本没有被合并到权重里。
这种"看起来正常但实际错误"的Bug是工程里最难排查的类型。
为什么GLM5.1反而很简单?
把GLM5的全栈打通之后,紧接着支持GLM5.1反而成了简单的事情。
原因很直接:GLM5.1依然在GlmMoeDsaForCausalLM这个架构家族里。一旦训练、推理、Checkpoint转换都理解了这个家族,GLM5.1基本就只是一个新的Checkpoint而已。
这正是这次工作的核心价值所在——一旦整个技术栈能够把DSA、MLA、MoE、MTP、LoRA在训练、推理、Checkpoint转换之间无损流转,未来新模型的接入会变得简单得多。
One More Thing
这已经不是Mind Lab第一次在大模型基础设施上做出贡献了。
回顾一下这个团队最近的工作节奏:
-
2025年底:实现全球首个万亿参数LoRA-RL训练,GPU消耗直降90%,技术获NVIDIA Megatron-Bridge和Seed verl官方合并
-
2026年初:提出Context Learning范式,把临时上下文增益永久写进模型参数
-
2026年4月:完成GLM5/GLM5.1的全栈LoRA训练支持,覆盖训练、推理、Checkpoint桥接
每一步都在为同一个目标铺路:让大模型从真实使用中持续成长,成为可被研究、可被改进、可被复现的开放系统。
Mind Lab是一家专注于"经验智能"(Experiential Intelligence)的研究实验室,10人核心团队成员来自OpenAI、DeepMind、Seed,学术背景横跨清华、MIT、Cornell,发表200+篇论文,被引30,000+次。
他们的Slogan是:
Real intelligence learns from real experience. 真正的智能源于真实的体验。
底层基础设施的每一次扎实推进,都是在让这句话离工程现实更近一步。
参考链接: [1] Mind Lab Blog: https://macaron.im/mindlab/research/support-glm5-and-glm51-in-mint-lora-training-for-dsa-and-mtp [2] VeRL PR #5722: https://github.com/volcengine/verl/pull/5722 [3] Megatron-LM PR #3674: https://github.com/NVIDIA/Megatron-LM/pull/3674 [4] vLLM PR #35077: https://github.com/vllm-project/vllm/pull/35077 [5] Megatron-Bridge PR #2469: https://github.com/NVIDIA-NeMo/Megatron-Bridge/pull/2469
更多推荐


所有评论(0)