华为鲲鹏arm服务器部署DeepSeek-V4-Flash-0731-w8a8
·
📋 完整部署总结
一、硬件环境
| 组件 | 配置 |
|---|---|
| CPU | 鲲鹏920 × 4颗,共192核(ARM64架构) |
| NPU | 昇腾910B-64GB × 8卡(合计512GB HBM显存) |
| 系统内存 | 三星DDR4-3200 32GB × 32条 = 1TB |
| 操作系统 | 银河麒麟高级服务器系统(ARM64) |
| 服务器IP | 192.168.99.240 |
二、部署架构
┌─────────────────────────────────────────────────────────────────┐
│ 宿主服务器 (192.168.99.240) │
│ 操作系统: 银河麒麟 (ARM64) │
│ 硬件: 鲲鹏920 + 8×昇腾910B-64GB │
├─────────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────────────────────────────────────────────────────┐ │
│ │ Docker 容器: vllm_deepseek_v4_8p │ │
│ │ 镜像: quay.io/ascend/vllm-ascend:v0.23.0rc1 │ │
│ │ 网络模式: host (--net=host) │ │
│ │ 共享内存: 500GB (--shm-size=500g) │ │
│ │ 服务端口: 8080 │ │
│ │ 模型路径: /data/DeepSeek-V4-Flash-0731-w8a8 │ │
│ │ 张量并行: 8卡 (--tensor-parallel-size 8) │ │
│ │ 上下文长度: 133072 (~130K) │ │
│ │ 最大并发: 32 (--max-num-seqs 32) │ │
│ └─────────────────────────────────────────────────────────┘ │
│ │
│ 模型服务: http://192.168.99.240:8080/v1 │
│ 模型名称: dsv4 │
│ 模型全称: DeepSeek-V4-Flash (w8a8量化版) │
└─────────────────────────────────────────────────────────────────┘
三、关键配置参数
环境变量
export ASCEND_RT_VISIBLE_DEVICES=0,1,2,3,4,5,6,7 # 使用全部8卡
export VLLM_USE_V1=1 # 启用vLLM V1引擎
export VLLM_ASCEND_APPLY_DSV4_PATCH=1 # DeepSeek V4补丁
export VLLM_ASCEND_ENABLE_FLASHCOMM1=1 # 启用Flash通信
export PYTORCH_NPU_ALLOC_CONF=expandable_segments:True
export OMP_NUM_THREADS=10
vLLM 服务参数
| 参数 | 值 | 说明 |
|---|---|---|
--port | 8080 | 服务端口 |
--tensor-parallel-size | 8 | 8卡张量并行 |
--max-model-len | 133072 | 最大上下文长度(~130K) |
--max-num-seqs | 32 | 最大并发请求数 |
--quantization | ascend | 昇腾量化加载 |
--served-model-name | dsv4 | 对外暴露的模型名称 |
四、OpenCode 配置(修正后)
"deepseek-v4-local": {
"source": "npm:@ai-sdk/openai-compatible",
"name": "DeepSeek V4 Flash (本地)",
"options": {
"baseURL": "http://192.168.99.240:8080/v1",
"apiKey": "EMPTY"
},
"models": {
"dsv4": {
"name": "DeepSeek-V4-Flash",
"limit": {
"context": 133072,
"output": 8192
},
"modalities": {
"input": ["text"],
"output": ["text"]
}
}
}
}
五、遇到的典型问题与解决方案
| 问题 | 原因 | 解决方案 |
|---|---|---|
| 模型加载失败 | 开启了MTP投机采样,但模型无MTP权重 | 移除 --speculative-config 参数 |
| 端口访问失败 | 配置中用 --port 8080,但访问了 8000 | 统一使用 8080 端口 |
| 模型名称不匹配 | 启动命令中 --served-model-name dsv4,但配置用了 dskv4_flash | 保持两边模型名称一致 |
| IP地址不一致 | 配置中用了 192.168.99.18,实际服务在 192.168.99.240 | 使用正确的IP地址 |
| SyntaxWarning警告 | CANN工具包中代码注释的转义字符问题 | 可安全忽略,不影响运行 |
六、验证命令
# 1. 查看容器状态
docker ps | grep vllm_deepseek_v4_8p
# 2. 查看服务日志
docker logs --tail 50 vllm_deepseek_v4_8p
# 3. 测试模型列表
curl http://192.168.99.240:8080/v1/models
# 4. 测试推理
curl http://192.168.99.240:8080/v1/completions \
-H "Content-Type: application/json" \
-d '{
"model": "dsv4",
"prompt": "你好",
"max_tokens": 100
}'
七、当前状态
✅ 服务已正常运行
- 容器名:
vllm_deepseek_v4_8p - 服务地址:
http://192.168.99.240:8080 - 模型名称:
dsv4(DeepSeek-V4-Flash) - 状态:
Running
八、后续建议
- 监控显存:定期执行
npu-smi info检查8张卡的显存使用情况 - 调整并发:根据实际负载,可调整
--max-num-seqs参数(当前32) - 启用前缀缓存:如果存在重复提示词场景,可启用
--enable-prefix-caching - 版本升级:关注
vllm-ascend新版本,获取性能优化
总结:你已成功在鲲鹏+昇腾国产化硬件平台上,通过 Docker + vLLM-Ascend 部署了 DeepSeek-V4-Flash 大模型服务,并可通过 OpenAI 兼容 API 进行调用。整个过程验证了国产化 AI 算力栈在生产环境中的可行性。
鲲鹏昇腾开发者社区是面向全社会开放的“联接全球计算开发者,聚合华为+生态”的社区,内容涵盖鲲鹏、昇腾资源,帮助开发者快速获取所需的知识、经验、软件、工具、算力,支撑开发者易学、好用、成功,成为核心开发者。
更多推荐
所有评论(0)