DeepSeek-V4-Flash (W4A8)
deepseek_v4 架构模型——一个 256-expert MoE,结合 MLA + DSA 稀疏注意力
和原生 MTP speculative head,以 W4A8 形式提供(~151 GB 权重,43 层)。
已在 Ascend 910B4(32 GB/卡) 上通过 Alauda AI 的 InferNex 接口
使用 vLLM-Ascend nightly 引擎完成验证。由于权重需要占用全部 8 张卡,
拓扑为 1 个实例 × TP=8(+ expert parallel),两个 benchmark 场景还分别通过
内部 KServe ingress 和 MaaS gateway(API-key) ingress 进行了驱动。
模型标识
已验证硬件 × 栈
发布固定的 nightly nightly-releases-v0.22.1rc-openeuler(与 Qwen3.6-27B 相同的镜像)
包含完整的 deepseek_v4 栈。enable_dsa_cp 被有意设置为 off(上游 DSA-CP
index-buffer bug 会导致该构建上的持续 8k MTP decode 崩溃)。Prefix caching 已启用,
但 命中率为 0——DSA 稀疏注意力会按每个 query 选择 KV,因此共享前缀不能直接复用;
它几乎没有额外成本,而相较旧版本的加速来自 nightly 栈本身,而不是 prefix caching。
模型配置
部署规格
仅以 agg-base 方式提供——aggregation,hermes-router 策略为 random。在单个 TP=8 实例下,
router 只有一个 endpoint(无实际作用);保留该结构仅为一致性。跨实例 KV store / KV-cache-aware routing
(agg-mc-kv)不适用:~151 GB 权重会占满全部 8 张卡,因此只能放下一个副本,也没有第二个实例可供共享 KV。
部署
自包含的 InferNex manifest(engine 内联在 LLMInferenceService +
hermes-router preset 中,1 个副本 × TP=8):
Benchmark 结果
闭环 aiperf 0.7.0,TP=8 × 1 个副本(8 × 910B4),并发 4,agg-base。
两个场景——① 8k system-prompt 复用和 ② 17.5k multi-turn——各发送 240 个请求,
输出固定为 128 个令牌,n=3(所有运行均为 240/240,零错误)。每个场景都通过两个 ingress 进行驱动:
内部 KServe Service(无认证)和产品 MaaS gateway(Envoy + API-key 认证 + 令牌速率限制——面向客户的 OpenAI endpoint)。
TTFT / E2E 以 ms 计,ITL 以 ms 计,TPS = 总令牌/s。
场景 ①——固定长度 system-prompt 复用(ISL ~8k / OSL 128)
场景 ②——多轮对话(ISL ~17.5k / OSL 128)
如何解读这些结果。 所有运行都在每个实例稳定保持 2 个 in-flight 请求的情况下完成了 240/240, 且零错误(n=3 平均值)。MaaS gateway 与内部 KServe 的差异都在运行间抖动范围内 (场景 ① 在 gateway 上约高出 +1–3%——多出几百毫秒的 hop;场景 ② 的两组 n=3 数据在不同时间采集, 结果又反向偏了几个百分点)。结论是:API-key + 速率限制的 MaaS gateway 在典型请求和长上下文请求上都不会带来 超出噪声范围的可测额外开销,因此可以作为生产入口提供服务。仅解码输出速率为 33 tok/s(场景 ①)/ 16 tok/s(场景 ②); TPS 列表示总令牌(输入 + 输出)口径。MTP speculative decoding 已开启。由于这是单个 TP=8 实例,因此 TPS 不能与本指南中的 2-副本模型直接比较。
通过 MaaS gateway 发送长上下文请求时,需要提高网关的 request-body buffer——17.5k 场景(~85 KB streaming body)
超过了默认限制,会一直挂起,直到提高 MaaS gateway 上的 ClientTrafficPolicy.connection.bufferLimit。
内部 KServe ingress 没有此类限制。上面的数值是在完成该修复后得到的。