m0_74196153/phi-2
模型介绍文件和版本Pull Requests讨论分析

Phi-2 on vLLM-Ascend 0.18.0rc1

1. 简介

本文档记录 microsoft/phi-2(2.7B)在 vLLM-Ascend 0.18.0rc1 环境的快速部署与验证结果。

Phi-2 是 Microsoft Phi 系列中最大的模型,基于 2.7B 参数 Transformer 架构,在代码和自然语言数据上训练,具有更强的推理和代码生成能力。

相关获取地址:

  • 权重下载地址(ModelScope):https://modelscope.cn/models/microsoft/phi-2
  • 权重下载地址(HuggingFace):https://huggingface.co/microsoft/phi-2

2. 验证环境

组件版本
vllm-ascend0.18.0rc1
vllm0.18.0+empty
transformers4.57.6
torch-npu2.9.0.post1+gitee7ba04
  • NPU:1 张 Ascend910B4
  • 模型路径:/opt/atomgit/.cache/modelscope/hub/models/microsoft/phi-2
  • 服务端口:8002

模型配置

属性值
参数量2.7B
层数32
隐藏维度2560
注意力头32 (MHA)
KV 头32
最大序列长度2048
词表大小51200
精度float16

3. 服务启动

启动前可先检查端口:

ss -lntp | grep ':8002 ' || true

已验证通过的启动命令:

export ASCEND_RT_VISIBLE_DEVICES=0
export PYTORCH_NPU_ALLOC_CONF=expandable_segments:True
export TASK_QUEUE_ENABLE=1

vllm serve /opt/atomgit/.cache/modelscope/hub/models/microsoft/phi-2 \
  --host 0.0.0.0 \
  --port 8002 \
  --tensor-parallel-size 1 \
  --seed 42 \
  --served-model-name phi-2 \
  --max-num-seqs 64 \
  --max-model-len 2048 \
  --trust-remote-code \
  --gpu-memory-utilization 0.90 \
  --dtype float16 \
  --no-enable-prefix-caching

4. Smoke 验证

基础检查:

curl -sf http://127.0.0.1:8002/v1/models
curl -sf http://127.0.0.1:8002/v1/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "phi-2",
    "prompt": "Write a quicksort in Python:",
    "max_tokens": 64,
    "temperature": 0.0
  }'

验证结果:

  • /v1/models 返回 200
  • /v1/completions 返回 200

5. 性能参考

测试条件:基于 torch_npu + transformers 直接推理,输入 9 tokens / 输出 64 tokens,连续 2 次取平均。

指标数值
throughput20.4 tok/s
latency (64 tok)3.14 s
latency (128 tok)6.34 s
NPU 峰值内存5.26 GiB

输出长度影响

输入长度输出长度吞吐量 (tok/s)延迟 (s)
93220.31.58
96420.43.14
912820.26.34
14012818.8*0.11*

*phi-2 长 prompt 场景下首轮生成 token 数较低,该数据点仅供参考。

6. 精度评测

使用 check_accuracy.py 对 NPU 和 CPU 做逐 token logits 对比,覆盖 5 个测试 prompt。

指标数值阈值状态
Top-1 准确率100.00%>= 99%PASS
平均余弦相似度0.99999>= 0.99PASS
平均 KL 散度0.000009< 0.01PASS
最大 logit 差~0.03--

Phi-2 在 NPU 上的输出与 CPU 基线高度一致。Top-1 预测 100% 匹配,余弦相似度接近 1.0。最大 logit 差偏大的样本("Machine learning is" prompt: 最大差 0.10)属于个别异常 token,整体 KL 散度仍远低于阈值。

7. 注意事项

  • 模型大小:Phi-2(2.7B)使用分片权重(2 个 safetensors 文件),加载时自动合并。NPU 峰值内存约 5.26 GiB。
  • vLLM 兼容性:Phi-2 使用 float16 原生精度,vLLM-Ascend 无需特殊配置即可运行。
  • 首次编译:vLLM 首次启动时 PIECEWISE 编译约需 1-2 分钟(ACL Graph 捕获),后续启动可复用编译缓存。
下载使用量0