|
|
--- |
|
|
language: |
|
|
- zh |
|
|
- en |
|
|
tags: |
|
|
- MoE |
|
|
--- |
|
|
# 开源盘古 Ultra-MoE-718B |
|
|
中文 | [English](README_EN.md) |
|
|
|
|
|
## 1. 简介 |
|
|
openPangu-Ultra-MoE-718B 是基于昇腾NPU从零训练的大规模混合专家语言模型,总参数量为718B,激活参数量为39B。openPangu-Ultra-MoE-718B 训练了约19T tokens,具备快慢思考融合能力。 |
|
|
|
|
|
## 2. 模型架构 |
|
|
openPangu-Ultra-MoE-718B 的模型架构采用了业界主流的Multi-head Latent Attention (MLA)、Multi-Token Prediction (MTP)、大稀疏比等架构,以及一些特有的设计: |
|
|
|
|
|
- Depth-Scaled Sandwich-Norm和TinyInit:通过调整层归一化结构与参数初始化,提升训练稳定性。 |
|
|
- 基于EP-Group的负载均衡策略:通过优化负载均衡损失函数,改善专家特化效果。 |
|
|
|
|
|
## 3. 测评结果 |
|
|
|
|
|
| 测评集 | 测评指标 | 慢思考 | |
|
|
|:----------------:|:----------------------------:|:-----:| |
|
|
| **通用能力** | | | |
|
|
| C-Eval | Acc | 91.06 | |
|
|
| CLUEWSC | Acc | 94.67 | |
|
|
| MMLU-Pro | Exact Match | 82.40 | |
|
|
| ArenaHard_v0.1 | w/o Style Control | 96.80 | |
|
|
| GPQA-Diamond | Avg@4 | 76.77 | |
|
|
| SuperGPQA | Acc | 61.67 | |
|
|
| IF-Eval | Prompt Strict | 80.59 | |
|
|
| SysBench | Constraint Satisfaction Rate | 91.43 | |
|
|
| **数学能力** | | | |
|
|
| CNMO 2024 | Avg@32 | 80.73 | |
|
|
| AIME25 | Avg@16 | 75.21 | |
|
|
| AIME24 | Avg@16 | 80.21 | |
|
|
| MATH-500 | Avg@1 | 97.40 | |
|
|
| **代码能力** | | | |
|
|
| LiveCodeBench | Avg@3 (01/25~05/25) | 61.14 | |
|
|
| MBPP+ | Avg@2 | 81.48 | |
|
|
|
|
|
**注:** 评测过程中,system prompt 为空。 |
|
|
|
|
|
|
|
|
## 4. 部署和使用 |
|
|
### 4.1 环境准备 |
|
|
#### 硬件规格 |
|
|
Atlas 800T A2 (64GB, >=32卡),驱动与固件安装包获取请参照[[Atlas 800T A2](https://www.hiascend.com/hardware/firmware-drivers/community?product=4&model=26&cann=8.2.RC1.alpha003&driver=Ascend+HDK+25.0.RC1)] |
|
|
|
|
|
#### 软件环境 |
|
|
- 方式一:基于裸机环境安装以下配套软件 |
|
|
- 操作系统:Linux(推荐openEuler>=24.03) |
|
|
- CANN==8.1.RC1,安装准备及流程请参照[[CANN Install](https://www.hiascend.com/document/detail/zh/CANNCommunityEdition/82RC1alpha002/softwareinst/instg/instg_0001.html?Mode=PmIns&OS=Ubuntu&Software=cannToolKit)] |
|
|
- python==3.10 |
|
|
- torch==2.1.0 |
|
|
- torch-npu==2.1.0.post12 |
|
|
- transformers>=4.48.2 |
|
|
|
|
|
- 方式二:从docker镜像启动容器 |
|
|
|
|
|
参考[[Docker使用指南](doc/docker.md)] |
|
|
|
|
|
以上软件配套经过验证,理论可以支持更高的版本,如有疑问,可以提交issue。 |
|
|
|
|
|
### 4.2 权重完整性校验 |
|
|
请参考以下方法对下载内容进行完整性校验,hash 值存储在 checklist.chk 文件中。 |
|
|
|
|
|
``` |
|
|
#!/usr/bin/env bash |
|
|
ARCH=$(uname -m) |
|
|
MODEL_PATH="${TARGET_FOLDER}/${MODEL_FOLDER_PATH}" |
|
|
cd "$MODEL_PATH" || exit 1 |
|
|
if [ "$ARCH" = "arm64" ]; then |
|
|
sha256sum checklist.chk |
|
|
else |
|
|
sha256sum -c checklist.chk |
|
|
fi |
|
|
``` |
|
|
|
|
|
### 4.3 推理权重转换 |
|
|
本次样例 openPangu-Ultra-MoE-718B 推理采用 Tensor Parallel 并行策略,叠加昇腾 NPU 融合大算子,需要提前对 safetensors 权重进行切分,下述内容提供32卡并行推理的权重切分示例,切分后的权重会保存在`model/`目录下: |
|
|
```bash |
|
|
cd inference |
|
|
bash split_weight.sh |
|
|
``` |
|
|
|
|
|
### 4.4 推理样例 |
|
|
openPangu-Ultra-MoE-718B 在 Atlas 800T A2 上4机32卡bfloat16推理示例,主节点选取节点IP0: |
|
|
```bash |
|
|
cd inference |
|
|
# 主节点IP0: ${NNODES} ${NODE_RANK} ${NPROC_PER_NODE} ${MASTER_ADDR} ${PROMPT} |
|
|
bash generate.sh 4 0 8 IP0 "3*7=?" |
|
|
# 从节点IP1 |
|
|
bash generate.sh 4 1 8 IP0 "3*7=?" |
|
|
# 从节点IP2 |
|
|
bash generate.sh 4 2 8 IP0 "3*7=?" |
|
|
# 从节点IP3 |
|
|
bash generate.sh 4 3 8 IP0 "3*7=?" |
|
|
``` |
|
|
模型默认为慢思考模式,可以通过以下手段切换至快思考模式:如`generate.py`示例中`fast_thinking_template`所示,在用户输入结尾添加` /no_think`标记可以将当前轮次切换至快思考模式。 |
|
|
|
|
|
### 4.5 使用推理框架 |
|
|
vllm_ascend:参考[[vllm_ascend_for_openPangu_ultra_moe_718b](doc/vllm_ascend_for_openpangu_ultra_moe_718b.md)] |
|
|
|
|
|
## 5. 模型许可证 |
|
|
除文件中对开源许可证另有约定外,openPangu-Ultra-MoE-718B 模型根据 OPENPANGU MODEL LICENSE AGREEMENT VERSION 1.0 授权,旨在允许使用并促进人工智能技术的进一步发展。有关详细信息,请参阅模型存储库根目录中的 [LICENSE](LICENSE) 文件。 |
|
|
|
|
|
## 6. 免责声明 |
|
|
由于 openPangu-Ultra-MoE-718B (“模型”)所依赖的技术固有的限制,以及人工智能生成的内容是由盘古自动生成的,华为无法对以下事项做出任何保证: |
|
|
- 该模型的输出通过AI算法自动生成,不能排除某些信息可能存在缺陷、不合理或引起不适的可能性,生成的内容不代表华为的态度或立场; |
|
|
- 无法保证该模型100%准确、可靠、功能齐全、及时、安全、无错误、不间断、持续稳定或无任何故障; |
|
|
- 该模型的输出内容不构成任何建议或决策,也不保证生成的内容的真实性、完整性、准确性、及时性、合法性、功能性或实用性。生成的内容不能替代医疗、法律等领域的专业人士回答您的问题。生成的内容仅供参考,不代表华为的任何态度、立场或观点。您需要根据实际情况做出独立判断,华为不承担任何责任。 |
|
|
|
|
|
## 7. 反馈 |
|
|
如果有任何意见和建议,请提交issue或联系[openPangu@huawei.com](url)。 |