MindSpore Transformers Mcore 架构是昇思大模型套件新一代训推一体化、模块化、高复用、高性能底层架构,面向 LLM 与多模态模型提供统一网络基座,通过标准化组件抽象、声明式开发、训推一体、自动并行、生态兼容五大核心设计,实现开源模型天级迁移、训练推理无缝切换、多硬件统一适配,大幅降低大模型开发门槛,支撑 Llama、Qwen、GLM、Baichuan 等主流模型高效训推,是昇腾平台大模型规模化落地的核心支撑。

一、Mcore 架构设计目标与核心定位

Mcore 架构为解决传统大模型开发三大痛点而生:

  1. 模型迁移成本高:重复编码、结构不统一,迁移周期以周计;
  2. 训推架构割裂:训练与推理代码分离,维护成本高、优化难复用;
  3. 优化能力碎片化:高性能特性与模型强绑定,无法跨模型沉淀复用。

其核心定位:

  • 统一训推架构:一套代码同时支持预训练、微调、推理、部署;
  • 模块化标准化:Transformer 组件原子化,接口统一,即插即用;
  • 声明式开发:以配置驱动模型构建,代码量减少 85% 以上;
  • 全并行原生支持:数据 / 张量 / 流水线 / 专家并行开箱即用;
  • 开源生态兼容:Hugging Face 配置、权重、分词器零修改复用。

二、Mcore 五层架构全解

2.1 接口层:声明式配置与训推统一入口

提供YAML/JSON 声明式配置,用户只需定义模型结构、并行策略、优化器参数,即可完成模型构建,支持一键切换训练 / 推理模式。

  • 统一 Model API,支持train/finetune/generate/infer
  • 配置化管理:model、parallel、optimizer、dataset、callback 分离解耦。

2.2 模型层:模块化 Transformer 核心组件

将 Transformer 拆解为原子化标准组件,所有模型共享同一套基础模块:

  • Embedding 组件:词嵌入、位置编码、RoPE、ALiBi;
  • TransformerLayer 组件:Attention、MLP、Norm、Dropout、FFN;
  • Head 组件:LM Head、分类头、对比学习头;
  • MoE 组件:专家路由、专家并行、负载均衡(兼容 Megatron-LM)。

所有组件接口标准化,优化能力全局复用,彻底消除重复开发。

2.3 并行层:自动多维混合并行

基于 MindSpore 自动并行能力,提供无侵入式并行策略:

  • 数据并行 DP、张量并行 TP、流水线并行 PP、专家并行 EP;
  • 支持超长文本上下文并行 CP;
  • 自动切分算子、插入通信、优化调度,用户无需修改网络代码。

2.4 优化层:全栈性能加速

内置系统级优化,训推性能最大化:

  • Flash Attention、Paged KV Cache、算子融合、重计算;
  • 混合精度、权重归一化、动态批处理、增量推理;
  • 内存 Offload、显存优化、通信计算重叠。

2.5 运行层:多硬件统一调度

统一对接 MindRT 运行时,支持昇腾 910/310、CPU、GPU多硬件无感调度,实现一次开发、多硬件部署。

三、Mcore 核心技术优势

3.1 训推一体架构(核心突破)

  • 同一套网络组件同时支持训练与推理,无需双版本维护;
  • 推理自动复用训练优化,如 Flash Attention、权重分片;
  • 增量推理、流式输出、多轮对话原生支持,无缝上线服务。

3.2 模块化与高复用性

  • 基础组件全局共享,模型只需拼装组合,开发效率提升 10 倍;
  • 优化能力与模型解耦,一处优化,全库受益;
  • 支持自定义组件快速注册,扩展灵活无侵入。

3.3 声明式极简开发

  • 模型结构由配置文件定义,代码量减少 90%;
  • 迁移开源模型只需对齐配置,无需重写网络;
  • 支持动态修改结构、深度、头数、隐藏层维度,快速迭代。

3.4 Hugging Face 生态原生兼容

  • 直接复用 HF config、tokenizer、model 结构;
  • 支持权重一键转换,自动加载 PyTorch 权重;
  • 模型迁移从周级降到天级,工作量降低 85%+。

3.5 超大规模模型友好

  • 原生支持 MoE 架构、千亿参数模型;
  • 多维混合并行自动调度,支持万卡集群;
  • 容错、断点续训、异步加载、日志可视化全链路支持。

四、Mcore 架构训推基础代码示例

4.1 声明式模型配置(model.yaml)

model:
  type: llama
  hidden_size: 4096
  num_layers: 32
  num_heads: 32
  seq_len: 4096
  vocab_size: 32000
  use_flash_attention: True
  use_paged_attention: True

parallel:
  tensor_parallel: 8
  pipeline_parallel: 4
  expert_parallel: 2

4.2 训练代码(极简 3 行启动)

from mindformers import Trainer, TrainingArguments
from mindformers.models import LlamaConfig

# 1. 加载Mcore架构配置
config = LlamaConfig.from_yaml("model.yaml")
# 2. 初始化训练器
trainer = Trainer(config=config, task="text_generation")
# 3. 启动训练
trainer.train()

4.3 推理代码(训推一体无缝切换)

from mindformers import AutoModel, AutoTokenizer

# 自动加载Mcore架构模型
model = AutoModel.from_pretrained("llama_7b_mcore")
tokenizer = AutoTokenizer.from_pretrained("llama_7b_mcore")

# 增量推理生成
inputs = tokenizer("Mcore架构的核心价值是:")
outputs = model.generate(**inputs, max_new_tokens=200)
print(tokenizer.decode(outputs))

五、典型应用场景

  1. 大模型快速迁移:Llama、Qwen、Baichuan、GLM 等开源模型天级适配昇腾;
  2. 预训练 / 微调一体化:从数据到训练再到推理,全流程低代码;
  3. 千亿模型高效训练:MoE + 混合并行,超大规模集群稳定运行;
  4. 低延迟推理服务:Paged KV、动态批、多卡并行,高吞吐低时延;
  5. 多模态统一训推:文本、图像、语音模型共享同一架构。

六、总结

MindSpore Transformers Mcore 架构以模块化、训推一体、声明式开发、自动并行、生态兼容为核心,重构大模型开发范式,实现 “配置即模型、一键训推、多硬件统一、优化全复用”。它大幅降低大模型迁移与开发门槛,显著提升迭代效率与性能,是昇思大模型套件面向产业落地的新一代底层骨架,可广泛支撑金融、政务、企业服务、智能交互等领域大模型高效训推与规模化部署。

Logo

作为“人工智能6S店”的官方数字引擎,为AI开发者与企业提供一个覆盖软硬件全栈、一站式门户。

更多推荐