📋 完整部署总结

一、硬件环境

组件配置
CPU鲲鹏920 × 4颗,共192核(ARM64架构)
NPU昇腾910B-64GB × 8卡(合计512GB HBM显存)
系统内存三星DDR4-3200 32GB × 32条 = 1TB
操作系统银河麒麟高级服务器系统(ARM64)
服务器IP192.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 服务参数
参数说明
--port8080服务端口
--tensor-parallel-size88卡张量并行
--max-model-len133072最大上下文长度(~130K)
--max-num-seqs32最大并发请求数
--quantizationascend昇腾量化加载
--served-model-namedsv4对外暴露的模型名称

四、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

八、后续建议

  1. 监控显存:定期执行 npu-smi info 检查8张卡的显存使用情况
  2. 调整并发:根据实际负载,可调整 --max-num-seqs 参数(当前32)
  3. 启用前缀缓存:如果存在重复提示词场景,可启用 --enable-prefix-caching
  4. 版本升级:关注 vllm-ascend 新版本,获取性能优化

总结:你已成功在鲲鹏+昇腾国产化硬件平台上,通过 Docker + vLLM-Ascend 部署了 DeepSeek-V4-Flash 大模型服务,并可通过 OpenAI 兼容 API 进行调用。整个过程验证了国产化 AI 算力栈在生产环境中的可行性。

Logo

鲲鹏昇腾开发者社区是面向全社会开放的“联接全球计算开发者,聚合华为+生态”的社区,内容涵盖鲲鹏、昇腾资源,帮助开发者快速获取所需的知识、经验、软件、工具、算力,支撑开发者易学、好用、成功,成为核心开发者。

更多推荐