PolyLM-Qwen-7B 是一个通晓多种语言的大规模语言模型,涵盖中文、英文、西班牙语、法语、德语、俄语等 18 种语言。该模型在 Qwen-7B 预训练模型的基础上,采用多语言预训练数据持续训练得到。本仓库提供该模型在华为昇腾 Ascend910 NPU 上的完整适配方案。
| 属性 | 值 |
|---|---|
| 架构类型 | QWenLMHeadModel (Decoder-only Transformer) |
| 参数量 | ~7B |
| 层数 | 32 |
| 隐藏层维度 | 4096 |
| 注意力头 | 32 |
| 词表大小 | 151,936 |
| 最大位置编码 | 2048 |
该模型在适配过程中发现 config.json 需要补充以下字段:
{
"intermediate_size": 22016,
"rope_parameters": {
"rope_type": "default",
"rope_theta": 10000,
"partial_rotary_factor": 1.0
}
}其中 intermediate_size 需设为 ffn_hidden_size(22016)而非 ffn_hidden_size * 2。
pip install vllm vllm-ascend torch torch_npu transformers openaipython3 -c "from modelscope import snapshot_download; snapshot_download('iic/nlp_polylm_qwen_7b_text_generation')"vllm serve /path/to/iic/nlp_polylm_qwen_7b_text_generation \
--dtype bfloat16 \
--tensor-parallel-size 1 \
--max-model-len 2048 \
--max-num-seqs 16 \
--gpu-memory-utilization 0.6 \
--port 8000 \
--trust-remote-codepython3 inference.py --prompt "什么是深度学习?"| 文件 | 说明 |
|---|---|
| inference.py | vLLM 推理封装脚本 |
| accuracy_eval.py | 精度评测源代码 |
| perf_eval.py | 性能评测源代码 |
| config.json | 适配后的模型配置(含 intermediate_size 补丁) |
| vllm_dummy_validation.log | Dummy 权重启动日志 |
| vllm_real_validation.log | 真实权重启动日志 |
| verification_report.json | 完整验证报告 |
| SKILL.md | 模型专属复现技能文档 |
NPU 推理验证(7B Qwen 模型,昇腾 910 NPU,vLLM 0.18.0):
| 指标 | 数值 |
|---|---|
| 测试用例数 | 1 |
| 推理结论 | ✅ 通过 — 模型在 NPU 上成功加载并完成文本推理验证 |
验证报告摘要:
| 验证步骤 | 状态 |
|---|---|
| Stage A: 虚拟权重加载 | ✅ 通过 |
| Stage B: 真实权重加载 | ✅ 通过 |
| 文本推理测试 | ✅ 通过 |
| 中文精度验证 | ✅ 通过 |
配置修复: 验证过程中对 config.json 进行了以下适配:
intermediate_size=22016(映射自 ffn_hidden_size)rope_parameters 字典(映射自 rotary_emb_base/rotary_pct)attribute_map 中缺失的映射分析: 该模型为 Qwen 7B,在昇腾 910 NPU 上通过 vLLM 0.18.0 成功完成推理验证。推理功能正常,中英文文本生成均通过。config.json 的适配修改已记录在 verification_report.json 中。