DeepSeek V4 在华为昇腾上的部署:在国产硬件上运行前沿 AI 的实用指南
作者 needhelp
deepseek
huawei-ascend
ai-deployment
domestic-ai
DeepSeek V4 预览版的发布标志着 AI 硬件格局的重大转变。这是前沿级模型首次对 华为昇腾 NPU 提供一流支持——这意味着你可以在没有一块 NVIDIA GPU 的情况下运行有竞争力的 AI 推理。
这对一直受限于 GPU 供应的中国开发者、研究机构和企业来说意义重大。让我来解读这意味着什么以及如何开始。
硬件格局
昇腾 910B vs. NVIDIA A100(关键规格)┌────────────────────┬────────────────────┬────────────────────┐│ 规格 │ 昇腾 910B │ NVIDIA A100 │├────────────────────┼────────────────────┼────────────────────┤│ 算力 (FP16) │ 320 TFLOPS │ 312 TFLOPS ││ 显存 │ 64GB HBM2e │ 80GB HBM2e ││ 显存带宽 │ 1.5 TB/s │ 2.0 TB/s ││ 互联 │ HCCS 56GB/s │ NVLink 600GB/s ││ 功耗 │ 310W │ 400W ││ 供应情况 │ 高(国内) │ 受限* │└────────────────────┴────────────────────┴────────────────────┘* NVIDIA 对特定市场的出口限制这些数字讲述了一个有趣的故事。原始算力相当——910B 在 FP16 TFLOPS 上甚至略占优势。差距在于显存带宽和互联性能,这会影响大批次推理和多卡扩展。但对于单卡推理和小批次服务,差距正在迅速缩小。
架构概览
┌─────────────────────────────────────────────────────────────┐│ DeepSeek V4 在昇腾上——部署栈 │├─────────────────────────────────────────────────────────────┤│ ││ ┌───────────────────────────────────────────────────────┐ ││ │ 客户端层 │ ││ │ (聊天 UI / API 客户端 / curl) │ ││ └────────────────────┬──────────────────────────────────┘ ││ │ HTTP/WebSocket ││ ┌────────────────────▼──────────────────────────────────┐ ││ │ 服务层 │ ││ │ vLLM-Ascend / TGI-Ascend │ ││ └────────────────────┬──────────────────────────────────┘ ││ │ CANN (计算架构) ││ ┌────────────────────▼──────────────────────────────────┐ ││ │ CANN 栈 │ ││ │ ├── ACL (昇腾计算语言) │ ││ │ ├── GE (图引擎) │ ││ │ └── 运行时驱动 │ ││ └────────────────────┬──────────────────────────────────┘ ││ │ ││ ┌────────────────────▼──────────────────────────────────┐ ││ │ 硬件 │ ││ │ 昇腾 910B / 910 Pro │ ││ └───────────────────────────────────────────────────────┘ ││ │└─────────────────────────────────────────────────────────────┘部署指南
前置条件
# 系统要求- 操作系统: Ubuntu 22.04 / EulerOS- 内核: 5.10+- NPU: 昇腾 910B (至少 1 张卡)- 内存: 64GB+ 系统 RAM- 磁盘: 200GB+ 剩余空间步骤 1:安装 CANN 工具包
# 从华为支持网站下载 CANNchmod +x Ascend-cann-toolkit_*.run./Ascend-cann-toolkit_*.run --install --quiet
# 验证安装npu-smi info# 应显示可用的昇腾 NPU步骤 2:设置 Docker 环境
docker pull deepseek-ai/deepseek-v4-ascend:latest
docker run --rm -it \ --device=/dev/davinci0 \ --device=/dev/davinci_manager \ --device=/dev/hisi_hdc \ -v /usr/local/Ascend:/usr/local/Ascend \ -p 8000:8000 \ deepseek-ai/deepseek-v4-ascend:latest步骤 3:启动推理服务
# 在容器内python -m vllm.entrypoints.openai.api_server \ --model /models/deepseek-v4-preview \ --trust-remote-code \ --dtype bfloat16 \ --max-model-len 4096 \ --gpu-memory-utilization 0.9步骤 4:测试
curl http://localhost:8000/v1/chat/completions \ -H "Content-Type: application/json" \ -d '{ "model": "deepseek-v4-preview", "messages": [{"role": "user", "content": "你好,你能做什么?"}] }'性能观察
社区早期基准测试显示出令人鼓舞的结果:
| 模型 | 硬件 | Tokens/秒 | 显存 | 备注 |
|---|---|---|---|---|
| V4 Preview (7B) | 1× 昇腾 910B | ~45 t/s | 14GB | 速度快,单卡可容纳 |
| V4 Preview (14B) | 1× 昇腾 910B | ~22 t/s | 28GB | 可用于生产环境 |
| V4 Preview (70B) | 4× 昇腾 910B | ~15 t/s | 63GB | 需要量化 |
| V4 Preview (70B) | 1× A100 80GB | ~35 t/s | 70GB | 参考基准线 |
随着优化的 CANN 内核推出,差距正在缩小。对于 7B 和 14B 模型,体验已经真正达到生产就绪水平。
给开发者的六个建议
- 使用 vLLM-Ascend,而不是原始 CANN — vLLM 的社区分支配合昇腾后端已为你完成大部分优化工作
- 启用 Flash Attention — 昇腾实现(
--enable-flash-attn)在长序列上可提供 1.5-2 倍加速 - 注意批次大小 — 显存带宽是瓶颈;小批次(1-4)能带来最佳的延迟/吞吐量平衡
- 使用 BF16 而非 INT8 — 虽然 INT8 更快,但由于量化校准机制不同,昇腾上的质量下降比 CUDA 更明显
- 定期更新 CANN — 每个版本都带来显著的性能提升。7.0.0 表现不错;8.0.0+ 明显更好
- 加入社区 — GitHub 和中国开发者论坛上的昇腾 AI 社区非常活跃且乐于助人
更大的图景
DeepSeek V4 在昇腾上的运行不仅仅是一个新的部署选项。它代表了一个 解耦时刻——AI 模型开发和 AI 硬件生态系统发展可以独立进行。对中国开发者而言,这意味着在不受地缘政治约束的情况下获得前沿 AI 能力。对全球社区而言,这意味着一个更加多样化和更具韧性的硬件生态系统。
与 CUDA 的差距尚未完全弥合。但差距正在缩小,而且改进的速度正在加快。