版本说明

目录

版本说明#

v0.18.0 - 2026年04月22日#

我们很高兴地宣布 vLLM Ascend v0.18.0 版本发布。这是 v0.18.0 的正式版本。请按照官方文档开始使用。

亮点#

模型支持

  • Kimi-K2.x 模型支持:[实验性]新增对 Kimi-K2.x 模型的支持。@aipaes @dragondream-chen @SparrowMu @LoganJane #6755

  • Minimax-m2.x 模型支持:[实验性]新增对 Minimax-m2.x 模型的支持,支持 eagle3。@SparrowMu @GDzhu01 #7105 #7714

  • GLM5 支持:[实验性]无需任何代码修改即可支持 GLM5 模型!

  • Qwen3.x 支持:[实验性]无需任何代码修改即可支持 Qwen3.x 模型!

  • DeepseekOCR 支持:[实验性]新增对 DeepseekOCR 模型的支持,并优化了 RelPosAttentionCustomQwen2Decoder。@Wangbei25 #7737

核心功能

  • EPLB(专家并行负载均衡):EPLB 经过大量错误修复后更加稳定,性能也得到提升。EPLB 现在适用于大多数场景,推荐使用。#6528 #7344 #7890 #6477

  • ACLGraph 增强:ACLGraph 现在支持为多步草稿捕获单个合并图,大幅减少了多步推测解码场景中的主机瓶颈!#5553 #5940

  • KV 池化:增强的 KV 池通过 Mooncake 连接器现在支持稀疏注意力,新增 LMCacheAscendConnector 作为 Ascend 的 KV 缓存池化解决方案,支持 HIXL 互联的 FabricMem 模式,支持 yuanrong 作为 AscendStoreConnector 的后端,并且 MooncakeLayerwiseConnector 现在可以与 KV 池化一起激活。与之前版本相比,KV 池化在 TTFT 上有巨大的性能优化!#6339 #6882 #6806 #6869 #7032

  • PD 分离:Mooncake 分层连接器现在支持混合注意力管理器和 PCP 功能。#7022 #6627

  • NPU Graph EX (npugraph_ex) 默认启用:npugraph_ex 功能现已默认启用,通过集成的 inductor pass 和 MatmulAllReduceAddRMSNorm 融合提供更好的图优化。#6354 #6664 #6006

  • RL(强化学习):[实验性]RL 增强,通过 AscendC 和 triton op 实现了 batch invariant 功能,并新增了路由重放功能。#6590 #6696

  • CPU 绑定默认启用:启用了仅 ARM CPU 绑定,采用全局切片 A3 策略,提高了主机绑定场景中的推理吞吐量。#6686

新功能#

  • 混合模型现已支持前缀缓存。#7103

  • Flash Comm V1 现在支持带 MLA 的 VL 模型,移除了之前对多模态服务的限制。#7390

  • VL MoE 模型现在支持 SP,并且移除了 sp_threshold,改用 vLLM 的 sp_min_token_num#7044

  • [实验性]流水线并行现在支持异步调度,提高了 PP 部署的吞吐量。#7136

  • Eagle3 现在支持不带嵌入层的 QuaRot 量化。#7038

  • 重构 eagle3/mtp,eagle3 和 mtp 现在使用相同的提议器。#6349 #7033

硬件与算子支持#

  • 首次支持 310P,性能大幅优化!

    • 支持 W8A8 量化。#6641 #6454

    • 支持 weightNZ,适用于量化和非量化场景。#6705

    • 支持 W8A8SC 量化。#7075

    • 修复图模式下后采样不工作的问题。#8077

    • 为 300I DUO 新增 addrmsnorm 支持。#6704

    • 修复了 310P 上 ngram 图重放的精度错误。#7134

  • 自定义算子: 新增了多个自定义算子,包括:

    • 为 Qwen3-Next 添加了 AscendC casual_conv1d_fn 算子。#6661

    • 添加了 Ascend Ops recurrent_gated_delta_rule 算子。#6725

    • 为 MoE 模型添加了 GMM 自定义算子。#7010

    • 优化 split_qkv_rmsnorm_rope 算子。#6827

    • Triton rope 现在支持从 cos_sin_cache 进行 index_selecting。#5450

    • 新增 AscendC 融合算子 transpose_kv_cache_by_block,以加速 GQA 传输。#6366

    • 优化了 DispatchFFNCombine 内核性能,并解决了因未对齐 UB 访问导致的向量错误。#6468 #6707

    • 重构并优化 CausalConv1d。#7495

性能#

  • 初始化性能:优化了 Triton 算子重编译,减少因函数参数优化触发的冗余重建和不必要重编译。#7647 #7645

  • Qwen3.x 性能:[实验性]通过支持全图模式、PD 分离、mamba prefill prefix-caching 和 flashcomm1,预构建 chunk 元数据以减少主机-设备同步开销,以及多项算子性能优化(包括 chunk_gated_delta_rulechunk_fwd_kernel_osolve_trilrecompute_w_u_fwd_kernelsplit_qkv_rmsnorm_mrope 等),优化了 Qwen3.x 和 Qwen3-Next 的性能。@LoganJane @shaopeng-666 @ppppeng @SunnyLee151064 @hust17yixuan @Toneymiller @linfeng-yuan #7487 #6830 #7506 #7796 #7527 #7529 #7495 #7368

  • Kimi-K2.x 性能:[实验性]通过支持 eagle3 和 flashcomm1,并减少 d2h 开销,优化了 Kimi-K2.x 性能。@aipaes @dragondream-chen @SparrowMu @LoganJane @GDzhu01 @Yaphets24 @hust17yixuan #7342 #7390 #7521

  • Qwen3-VL 性能:Qwen3-VL 通过 Flash Comm V1 和 qkv_rmsnorm_mrope 支持获得更强的多模态算子能力,通过 aclnn BatchMatMulV2 使卷积计算加速 2.7 倍,支持 EAGLE 推测解码。#7893 #7852 #7017 #6327

  • Qwen3-Omni 性能:Qwen3-Omni 量化适配与优化现已可用。#6828

  • DeepSeek-V3.2/GLM5 性能:性能优化,支持 W8A8C8 量化,并优化了 KV cache 使用。@yydyzr @ZYang6263 @rjg-lyh @Nagisa125 #7029 #6610

  • GLM4.7-Flash 性能:为 GLM4.7-Flash 新增 W8A8 量化支持。@aipaes #6492

依赖项#

${PYTHON_TAG} 是 Python 版本标签,${ARCH} 是 CPU 架构。

例如:python3.11 和 aarch64,${PYTHON_TAG}=cp311,${ARCH}=aarch64。

弃用与破坏性变更#

  • 清理并弃用了 ProfileExecuteDuration 功能。#6461

  • 移除了自定义 rotary_embedding 算子。#6523

  • 清理了未使用的环境变量 USE_OPTIMIZED_MODEL#6618

  • 配置选项 enable_flash_comm_v1 已重命名回 enable_sp#6883

文档#

  • 新增 MiniMax-M2.5 和 MiniMax-M2.7 的介绍。#8169

  • 在常见问题解答中添加抢占指导。#8136

  • 更新 GLM5 的部署和支持文档,包括参数描述、最佳实践和常见问题解答。#7963 #7909

  • 更新 Qwen3.5 用户指南。#7934

  • 更新 DeepSeek-V3.2 的文档配置。#7970

  • 清理文档措辞和语法。#8073

  • 刷新 Kimi-K2.5、GLM-4.7、DeepSeek-V3.2、MiniMax-M2.5 的部署和模型文档,以及 PD 解耦指南。#7371 #7403 #7292 #7296 #7300

  • 添加了 CPU 绑定的用户/开发者指南。#7045

  • 新增 Memcache 使用指南。#6476

  • 新增后缀推测解码的基准测试教程。#6323

  • 新增 npugraph_ex 介绍文档。#6306

其他#

  • 为捕获模式添加异步通信检查。#8149

  • 修复池化场景间的 KV Pool 冲突,并修复 vLLM v0.18.0 上缺失的 KV 缓存放置。#8101 #7874

  • 通过修正注意力状态处理来修复短提示转发。#8088

  • 恢复 global_bs=0mc2_mask 以支持统一令牌分发,并支持跨节点 RoCE 分层 MC2 通信。#8040

  • 修复 Qwen3-VL 的权重映射器错误。#7868

  • 通过从反向映射切换到正向映射,修复了 AscendModelSlimConfig 中的量化配置键映射。#7716

  • 修复了在 PD 部署中运行 MTP 时,全图模式下对所有 D-Nodes 的支持问题。#5472

  • 分层连接器现在支持重计算调度器。#5900

  • 修复了池化代码问题并更新了使用指南。#6126

  • NPUWorker Profiler 现在支持 profile_prefix,以提供更好的性能分析体验。#6968

已知问题#

  • 目前,在多 DP 和大令牌数场景(kv_producerkv_both)下,不建议使用 VLLM_ASCEND_ENABLE_FUSED_MC2。此场景可能会在 DP 间产生大量填充令牌,这些令牌将被路由到某些专家,导致某些 rank 接收令牌过载,从而引发精度和性能问题。#8320

  • 目前,EPLB 不支持 minimax_m2 模型和 W4A8 量化。#8341

  • PCP 和 eagle3 叠加时,当预填充请求的调度令牌数小于 1 + num_speculative_tokens 时,可能会产生错误,导致该预填充请求被当作解码请求处理,从而引发错误。#8402

  • 不支持 NPU 软分区 + CUDAGraphMode.PIECEWISE#8585

  • Qwen3.x 在 PD 解耦场景下存在精度问题。#8421

  • 目前,x86 架构上存在一个已知问题,该问题已在 CANN 9.0.0 中解决。如果您想在 x86 上部署 vllm-ascend,请手动升级 CANN 版本。#7993

  • P/D 代理在重计算重试后可能会泄漏资源并掩盖 metaserver 错误。#8852

  • 通过 PD 架构单独部署 GLM5 和 Deepseek V3.2 时,存在空输出或乱码的概率性问题。#8853

  • 对于 PD 分离下 D 节点设置为 TP16 DP2 并行的 GLM 5/5.1,GPQA 精度未达到标准。#8844

v0.17.0rc1 - 2026.03.15#

这是 vLLM Ascend v0.17.0 的第一个候选发布版本。请按照官方文档开始使用。

亮点#

  • 现已支持 Ascend950 芯片。 #7151

  • Model Runner V2 现已支持 ACLGraph(图模式)。 #7110

  • 现已支持统一的并行化推测解码,可同时启用并行草稿推理方案。 #6766

新功能#

  • 支持从模型文件自动检测量化格式,同时也支持远程模型 ID(例如 org/model-name)。现在不再需要 --quantization ascend 参数。 #7111

  • 从本版本起支持 Qwen3.5。

  • 用于 EPLB 的 FlashLB 算法:支持每步热度收集和多阶段负载均衡,以提高专家并行效率。 #6477

  • 已修复并支持了结合张量并行和 --fully-sharded-loras 的 LoRA。 #6650

  • 新增 LMCacheAscendConnector 作为 Ascend 的新 KV 缓存池化解决方案。 #6882

  • 现已在 PD-mix 场景下支持 DeepSeek-V3.2 的 W8A8C8 量化。 #7029

  • [实验性] 现已在 Ascend NPU 上支持 Minimax-m2.5 模型。 #7105

  • [实验性] Mooncake Layerwise Connector 现在支持具有多个 KV 缓存组的混合注意力管理器。 #7022

  • [实验性] 混合模型现已支持前缀缓存。 #7103

性能#

  • 流水线并行现在支持异步调度,提高了 PP 部署的吞吐量。 #7136

  • 通过减少日志开销,改善了使用 Mooncake connector 时的首词元延迟。 #6125

  • 针对短序列(token 长度 < block_size)优化了 KV 池查找。 #7146

  • 修复了 Model Runner V2 中的惩罚操作,实现了约 10% 的性能提升。 #7013

文档#

  • 新增了 EPD(编码-预填充-解码)文档和负载均衡代理示例。 #6221

  • 新增了 Ascend PyTorch Profiler 使用指南。 #7117

  • 修复了 DSV3.1 PD 配置文档。 #7187

其他#

  • 修复了推测解码在全图模式下草稿器崩溃的问题。 #7158 #7148

  • 修复了由旋转量化 MTP 权重引起的 GLM5-W8A8 精度问题。 #7139

  • 修复了 310P 上 ngram 图重放的精度错误。#7134

  • 在上游 vLLM 变更后,修复了图模式下的 FIA 填充逻辑。 #7144

  • 修复了 Qwen3.5 上因 KV 缓存重塑错误导致的精度问题。 #7209

  • 修复了 rank0 设备上产生的额外进程问题。#7107

  • 图捕获失败现在会正确抛出异常,便于调试。#5644

  • 通过将 torch_npu.npu_recurrent_gated_delta_rule 替换为 fused_recurrent_gated_delta_rule 来修复 Qwen3.5 模型。#7109

  • 修复了运行带 LoRA 的 Qwen3-Reranker-0.6B 时的错误。#7156

已知问题#

  • GLM5 需要 transformers==5.2.0,此问题将通过 vllm-project/vllm#30566 解决,不会包含在 v0.17.0 版本中。

  • 由于 TP 权重切分方法变更,Qwen3-Next 存在精度问题。将在下个版本中修复。

  • 在混合模型中,当前前缀缓存命中所需的最小令牌数较大。具体数值与 TP 大小相关,例如,TP 为 2 时,block_size 调整为 2048,这意味着任何短于 2048 的前缀都不会被缓存。

  • GLM5 在两节点 PD 混合部署场景中存在一个问题,当并发数超过 8 时推理可能挂起(已在 PR #7235#7290 中修复)。

v0.16.0rc1 - 2026.03.09#

这是 vLLM Ascend v0.16.0 的第一个候选发布版本。请按照官方文档开始使用。

亮点#

  • Qwen3-Omni 量化适配与优化现已可用。#6828

  • 通过参数化硬编码的 MLA 维度,现已支持 GLM5-W8A8 量化。#6902

新功能#

  • [实验性] 为 ADXL/HIXL 互连支持 FabricMem 模式。#6806

  • Qwen3-Next 现在支持 FlashComm1。#6830

  • NPUWorker Profiler 现在支持 profile_prefix,以提供更好的性能分析体验。#6968

  • EPLB 性能分析现在会显示专家热度对比以及 EPLB 调整所需的时间。#6877 #7001

  • Xlite Qwen3 MoE 现在支持数据并行。#6715

  • Mooncake Layerwise Connector 现在支持 kv_pool。#7032

  • Eagle3 现在支持不带嵌入层的 QuaRot 量化。#7038

硬件与算子支持#

  • 310P 现在支持 w8a8sc 量化方法。#7075

  • 为 Qwen3-Next 添加了 AscendC casual_conv1d_fn 算子。#6661

  • 添加了 Ascend Ops recurrent_gated_delta_rule 算子。#6725

  • 为 MoE 模型添加了 GMM 自定义算子。#7010

性能#

  • 更快的卷积计算将 Qwen3-VL 模型的 TTFT 提升了 0.95%,吞吐量提升了 0.59%。#7017

  • 优化 split_qkv_rmsnorm_rope 算子。#6827

  • 实现全局 CPU 切片并改进 Ascend NPU 的 IRQ 绑定,确保 CPU 分区不重叠并实现更好的资源管理。#6945

  • 通过重排状态更新操作来优化 MTP 执行。#6844

  • 通过使用完整张量拷贝,避免 mrope_positions 拷贝中的 CPU 同步。#7014

  • 移除 MoE 模型中 expert_map 的 H2D 同步。#7000

依赖项#

  • CANN 已升级至 8.5.1,如果您未使用官方镜像,请记得手动升级。#6897

弃用与破坏性变更#

  • 配置选项 enable_flash_comm_v1 已重命名回 enable_sp#6883

  • 从模型文件自动检测量化格式的功能已回退,在 v0.16.0rc1 中,我们仍需添加 --quantization ascend 来服务由 modelslim 量化的模型。在修复了远程模型 ID 相关的错误后,此功能将在下个版本中重新加入。#6873

文档#

  • 添加了 CPU 绑定的用户/开发者指南。#7045

  • 添加了指标使用文档和示例。#6962

  • 添加了用于 LLM 发现的 llms.txt 文件。#6886

  • 新增 GLM4.x 多节点部署教程。#6872

  • 新增 310p 特殊参数 max-model-len 的说明。#7065

其他#

  • 修复 openEuler Dockerfile 错误。#6871

  • 多项错误修复,包括:

    • 修复启用上下文并行时 Eagle 推测式解码的问题。#6981 #7079

    • 修复上游 vLLM 变更引入的 LoRA 精度问题。#6958

    • 修复负载均衡代理服务器中的流式传输 content-type。#6985

    • 修复元数据执行错误:整数除以零取模。#6521

    • 修复 triton rope_siso 实现中的错误。#7082

    • 修复 update_aclgraph_sizes 中 MTP 模型的层数错误。#7064

    • 修复 b020 之后 CANN 版本的编译错误。#7059

    • 修复 GLM4.6V 中的量化配置支持。#7062

    • 修复 _merge_multimodal_embeddings 中的参数顺序错误。#7068

    • 修复 EPLB 中的 fused mc2 错误。#6794

    • 修复计算槽位映射的内核块大小。#7019

    • 修复 P/D 解耦中逐层堆叠 MTP 的错误。#7036

    • 修复 npu_rotary_embedding 的 RoPE 维度。#6880

    • 修复 Qwen-Omni 量化错误。#7042 #7007

    • 修复图模式下 GDN 层的精度问题。#6822

    • 修复 PD 解耦中 PCP/DCP 的精度错误。#6876

    • 修复 PD 解耦中的 MTP,为所有 D-Node 提供全图支持。#6948

    • 修复同时启用 DP 和 DCP 时 GQA 模型的错误。#7012

    • 修复 MTP 预填充被错误分类为解码的边缘情况。#6835

    • 修复 QuaRot 量化模型的 Eagle3 接受率问题。#6914

    • 修复启用 FlashComm V1 时 MTP 模型的 RoPE 形状不匹配问题。#6939

    • 修复 Qwen2.5VL 精度问题。#6975

    • 修复启用静态内核时的 MoE 前向传播错误。#6964

    • 修复 GLM5 模型的 muls_add 融合问题。#6928

    • 修复多模态模型的 GDN 层检测。#6941

    • 修复 300I 非量化模型权重的 nd2nz 错误。#6851

    • 修复 CPU 绑定逻辑。 #6889

    • 修复 Eagle 全图形状捕获问题。 #6846

已知问题#

  • 目前,对于 DeepSeek v3.2,PCP 和 DCP 尚不能与 FlashComm1 功能协同工作,这可能导致服务错误或其他未知错误。

  • 在使用 DeepSeek V3.2 的 4 节点 A3 PD 解耦部署中,P-Node 在高并发场景(例如,2K/2K tokens 和 512 个并发请求)下进行基准测试时可能出现挂起。

  • 具有大规模 EP 配置的 MTP 可能导致图捕获缓冲区溢出。这是 vLLM 中需要修复的一个错误,目前有一个临时解决方案可以避免此问题:显式设置 --compilation-config '{"max_cudagraph_capture_size": N}',其中 N = max_concurrency × (1 + num_speculative_tokens)

v0.15.0rc1 - 2026.02.27#

这是 vLLM Ascend v0.15.0 的第一个候选发布版本。请按照官方文档开始使用。

亮点#

  • NPU Graph EX (npugraph_ex) 默认启用:npugraph_ex 功能现已默认启用,通过集成的 inductor pass 和 MatmulAllReduceAddRMSNorm 融合提供更好的图优化。#6354 #6664 #6006

  • 310P MoE 和 W8A8 支持[实验性]:310P 现在支持 MoE 模型、W8A8 量化和 weightNZ 功能,显著扩展了硬件能力。 #6530 #6641 #6454 #6705

  • Qwen3-VL-MoE EAGLE 支持:为 Qwen3-VL-MoE 模型新增 EAGLE 推测式解码支持。 #6327

  • Kimi-K2.5 模型支持:新增对 Kimi-K2.5 模型的支持。请注意,vLLM 0.15.0 存在一个与 Kimi-K2.5 相关的已知问题。要修复此问题,请应用上游 vllm-project/vllm 仓库的更改,具体来自拉取请求 #33320#34501#6755

新功能#

  • 自动检测量化格式:现在可以从模型文件中自动检测量化格式。#6645

  • GPT-OSS Attention 支持:新增 GPT-OSS attention 实现。#5901

  • SFA 架构的 DCP 支持:为 SFA 架构新增解码上下文并行(DCP)支持。#6563

  • Mooncake 分层连接器 PCP 支持:Mooncake 分层连接器现在支持 PCP 功能。#6627

  • Mooncake 连接器远程 PTP 大小:Mooncake 连接器现在可以获取远程 PTP 大小。#5822

  • KV 池稀疏注意力:KV 池现在支持稀疏注意力。#6339

  • 基于 AscendC 的 Batch Invariant:使用 AscendC 实现了 batch invariant 特性。#6590

  • 路由重放:新增路由重放功能。#6696

  • 压缩张量 MoE W4A8 动态权重:新增对压缩张量 MoE W4A8 动态权重量化的支持。#5889

  • GLM4.7-Flash W8A8 量化:为 GLM4.7-Flash 新增 W8A8 量化支持。#6492

  • DispatchGmmCombineDecode 增强:DispatchGmmCombineDecode 现在支持 bf16/float16 的 gmm1/gmm2 权重以及 ND 格式权重。#6393

  • RMSNorm 动态量化融合:新增 rmsnorm 动态量化融合 pass。#6274

  • Worker 健康检查接口:为 worker 新增 check_health 接口。#6681

硬件与算子支持#

  • 310P 支持扩展:针对 310P 硬件的多项改进:

    • 修复了 310P 上的注意力精度问题。#6803

    • 为 310P 新增 weightNZ 特性,支持量化或非量化。#6705

    • 为 300I DUO 新增 addrmsnorm 支持。#6704

    • 310P 现在支持 PrefillCacheHit 状态。#6756

  • 仅 ARM CPU 绑定:启用了仅 ARM CPU 绑定,采用 NUMA 均衡的 A3 策略。#6686

  • Triton Rope 增强:Triton rope 现在支持从 cos_sin_cache 进行 index_selecting。#5450

  • AscendC 融合算子:新增 AscendC 融合算子 transpose_kv_cache_by_block,以加速 GQA 传输。#6366

  • Rotary_dim 参数:在 rotary_embedding 中使用 partial rope 时,新增对 rotary_dim 参数的支持。#6581

性能#

  • 多模态 seq_lens CPU 缓存:使用 seq_lens CPU 缓存以避免频繁的 D2H 拷贝,从而提升多模态性能。#6448

  • DispatchFFNCombine 优化:优化了 DispatchFFNCombine 内核性能,并解决了因未对齐 UB 访问导致的向量错误。#6468 #6707

  • DeepSeek V3.2 KVCache 优化:优化了 DeepSeek V3.2 的 KV 缓存使用。#6610

  • MLA/SFA 权重预取:重构了 MLA/SFA 权重预取,使其与 MoE 权重预取保持一致。#6629

  • MLP 权重预取:重构了 MLP 权重预取,使其与 MoE 模型的预取保持一致。#6442

  • 自适应块大小选择:在 linear_persistent 内核中新增自适应块大小选择功能。#6537

  • EPLB 内存优化:减少了 EPLB 中用于热度聚合的内存使用。#6729

  • 内存迁移与中断核心绑定:改进了绑定逻辑,增加了内存迁移和中断核心绑定功能。#6785

  • Triton 稳定性:提升了 Triton 在 Ascend 上处理大规模网格时的稳定性。#6301

依赖项#

  • Mooncake:升级至 v0.3.8.post1。#6428

弃用与破坏性变更#

  • ProfileExecuteDuration:清理并弃用了 ProfileExecuteDuration 功能。#6461

  • 自定义 rotary_embedding 算子:移除了自定义 rotary_embedding 算子。#6523

  • USE_OPTIMIZED_MODEL:清理了未使用的环境变量 USE_OPTIMIZED_MODEL#6618

文档#

  • 新增了 vllm-ascend 的 AI 辅助模型适配工作流文档。#6731

  • 新增了 vLLM Ascend 开发指南 (AGETNS.md)。#6797

  • 新增 GLM5 教程文档。 #6709 #6717

  • 新增 Memcache 使用指南。#6476

  • 新增请求转发文档。 #6780

  • 新增后缀推测解码的基准测试教程。#6323

  • 重构了教程文档结构。 #6501

  • 新增 npugraph_ex 介绍文档。#6306

其他#

  • PD 全图中的 MTP:修复了在 PD 部署中运行 MTP 时,全图模式下对所有 D-Nodes 的支持问题。 #5472

  • DeepSeekV3.1 准确性:修复了 DeepSeekV3.1 的准确性问题。 #6805

  • EAGLE 重构:将 MTP 路由至 EAGLE,PCP/DCP+MTP 情况除外。 #6349

  • 推测解码准确性:修复了 vLLM 0.15.0 中的推测接受率问题。 #6606

  • PCP/DCP 准确性:修复了 PCP/DCP 结合推测解码时的准确性问题。 #6491

  • 动态 EPLB:修复了动态 EPLB 无效的缺陷,且 EPLB 不再依赖特定模型。 #6653 #6528

  • KV 池 Mooncake 后端:正确初始化了 mooncake 后端的 head_or_tp_rank。 #6498

  • 分层连接器重计算调度器:分层连接器现在支持重计算调度器。 #5900

  • Memcache 池:修复了启用 memcache 池时服务启动失败的问题。 #6229

  • AddRMSNormQuant:修复了 AddRMSNormQuant 未生效的问题。 #6620

  • 池化代码:修复了池化代码问题并更新了使用指南。 #6126

  • 上下文并行:修复并统一了 PD 请求判别逻辑。 #5939

  • npugraph_ex:修复了重复模式问题,并为 allreduce rmsnorm 融合通道添加了额外检查。 #6513 #6430

  • RecomputeScheduler:修复了 RecomputeScheduler 与 vLLM v0.14.1 的兼容性问题。 #6286

v0.13.0 - 2026年02月06日#

这是 vLLM Ascend v0.13.0 的最终版本。请按照官方文档开始使用。

亮点#

模型支持

  • DeepSeek-R1 & DeepSeek-V3.2:[实验性]性能优化和异步调度增强。 #3631 #3900 #3908 #4191 #4805

  • Qwen3-Next:[实验性]全面支持 Qwen3-Next 系列模型,包括 80B-A3B-Instruct,支持全图模式、MTP、量化(W8A8)、NZ 优化和分块预填充。修复了多个准确性和稳定性问题。 #3450 #3572 #3428 #3918 #4058 #4245 #4070 #4477 #4770

  • InternVL:新增对 InternVL 模型的支持,包含全面的端到端测试和准确性评估。 #3796 #3964

  • LongCat-Flash:[实验性]新增对 LongCat-Flash 模型的支持。 #3833

  • minimax_m2:[实验性]新增对 minimax_m2 模型的支持。 #5624

  • Whisper 与交叉注意力:[实验性]新增对交叉注意力和 Whisper 模型的支持。 #5592

  • 池化模型:[实验性]新增对池化模型的支持,包含 PCP 适配,并修复了多个与池化相关的缺陷。 #3122 #4143 #6056 #6057 #6146

  • PanguUltraMoE:[实验性]新增对 PanguUltraMoE 模型的支持。 #4615

核心功能

  • 上下文并行 (PCP/DCP): [实验性]新增对预填充上下文并行 (PCP) 和解码上下文并行 (DCP) 的全面支持,集成了 ACLGraph、MTP、分块预填充、MLAPO 和 Mooncake 连接器。此为实验性功能,欢迎反馈。#3260 #3731 #3801 #3980 #4066 #4098 #4183 #5672

  • 全图模式 (ACLGraph): [实验性]增强了全图模式,支持 GQA,进行了内存优化,统一了 ACLGraph 与 Torchair 之间的逻辑,并提升了稳定性。#3560 #3970 #3812 #3879 #3888 #3894 #5118

  • 多令牌预测 (MTP): 显著改进了 MTP 支持,包括针对 DeepSeek 的分块预填充、量化支持、全图模式、PCP/DCP 集成和异步调度。MTP 现在在大多数情况下可用,推荐使用。#2711 #2713 #3620 #3845 #3910 #3915 #4102 #4111 #4770 #5477

  • Eagle 推测解码: Eagle 推测解码现在可与全图模式协同工作,且更加稳定。#5118 #4893 #5804

  • PD 解耦: 将 ADXL 引擎设置为解耦预填充的默认后端,提升了性能和稳定性。为 DeepSeek 解码节点增加了 KV NZ 功能支持。#3761 #3950 #5008 #3072

  • KV 池 & Mooncake: 增强了 KV 池,支持用于 PCP/DCP 的 Mooncake 连接器、多输入后缀,并提升了 Layerwise 连接器的性能。#3690 #3752 #3849 #4183 #5303

  • EPLB (弹性预填充负载均衡): [实验性]EPLB 现在更加稳定,修复了许多错误。混合放置现已可用。#6086

  • 纯解码模式: 在 full_decode_only 模式下增加了对 Qwen3-Next 和 DeepSeekv32 的支持,并修复了相关错误。#3949 #3986 #3763

  • Model Runner V2: [实验性]新增对下一代 vLLM 的 Model Runner V2 的基本支持。它将在未来的版本中默认启用。#5210

新功能#

  • W8A16 量化: [实验性]新增对 W8A16 量化方法的支持。#4541

  • UCM 连接器: [实验性]新增用于 KV 缓存卸载的 UCMConnector。#4411

  • 批次不变性: [实验性]实现了批次不变性功能的基本框架。#5517

  • 采样: 增强了采样功能,在 Eagle 中支持 async_scheduler 和 disable_padded_drafter_batch。#4893

硬件与算子支持#

  • 自定义算子: 新增了多个自定义算子,包括:

    • 融合的 matmul/reduce-scatter 内核 #3693

    • mrope 融合算子 #3708

    • 用于 Qwen3-Next 的 Triton chunk_gated_delta_rule 算子 #4070

    • l2norm triton 内核 #4595

    • RejectSampler、MoeInitRoutingCustom、DispatchFFNCombine 自定义算子

  • 算子融合: 新增了支持 SP 的 AddRmsnormQuant 融合模式以及用于量化的 inductor 融合。#5077 #4168

  • MLA/SFA: 将 SFA 重构为 MLA 架构,以提高可维护性。#3769

  • FIA 算子: 适配了具有 flash decoding 功能的 npu_fused_infer_attention_score。为优化小批量场景下的性能,此注意力算子现已可用。请参阅 常见问题 中的第 22 项以启用它。#4025

  • CANN 8.5 支持: 在启用 FIA 算子后,为 CANN 8.5 移除了 CP 冗余变量。#6039

性能#

本版本新增了许多自定义算子和 triton 内核以加速模型性能:

  • DeepSeek 性能: [实验性]通过消除异步调度中的 HD 同步以及优化 MTP 的内存使用,提升了 DeepSeek V3.2 的性能。#4805 #2713

  • Qwen3-Next 性能: [实验性]通过 Triton 算子和优化提升了性能。#5664 #5984 #5765

  • FlashComm: 增强了 FlashComm v2 优化,包括 o_shared linear 和通信域修复。#3232 #4188 #4458 #5848

  • MoE 优化: 针对 MoE 模型优化了 all2allv,并增强了 all-reduce 跳过逻辑。#3738 #5329

  • 注意力优化: 将注意力更新流移出循环,为长序列优化将 BSND 格式转换为 TND 格式,并在注意力切换到 transpose_batchmatmul 后移除了转置步骤。#3848 #3778 #5390

  • 量化性能:在 Allgather EP 中将量化操作移至 allgather 之前。#3420

  • 层间连接器:[实验性] 提升了层间连接器的性能。#5303

  • 前缀缓存:提升了前缀缓存功能的性能。#4022

  • 异步调度:修复了异步复制问题,并消除了异步调度中的挂起现象。#4113 #4233

  • 内存操作:移除了冗余的 D2H 操作,并删除了 model_runner 中的冗余操作。#4063 #3677

  • Rope 嵌入:使用 Triton 内核优化了 rope embedding,带来了巨大的性能提升。#5918

  • 采样:新增支持无 top_k 约束的高级 apply_top_k_top_p 功能。#6098

  • 多模态:在 AscendMMEncoderAttention 中并行化 Q/K/V 填充以提升性能。#6204

依赖项#

  • CANN:升级至 8.5.0 #6112

  • torch-npu:升级至 2.8.0.post2。默认已在 Docker 容器中安装。

  • triton-ascend:升级至 3.2.0 #6105

  • vLLM:升级至 0.13.0 并停止支持 0.12.0。#5146

  • Transformers:升级至 >= 4.57.4 #5250

弃用与破坏性变更#

  • CPUOffloadingConnector 已弃用。我们将在下一个版本中移除它。未来将由 vLLM 的 CPUOffload 功能替代。

  • ProfileExecuteDuration 功能 已弃用。

  • Ascend 调度器 已被移除。#4623

  • Torchair 已被移除。#4814

  • VLLM_ASCEND_ENABLE_DENSE_OPTIMIZE 已被移除,建议使用 VLLM_ASCEND_ENABLE_PREFETCH_MLP 替代,因为它们之前总是一起启用。#5272

  • VLLM_ENABLE_FUSED_EXPERTS_ALLGATHER_EP 现已被移除。#5270

  • 对于浮点权重的情况,VLLM_ASCEND_ENABLE_NZ 已被禁用,因为我们注意到在某些浮点场景下性能不佳。如果您确定它适用于您的情况,可以将其设置为 2。#4878

  • additional_config 中的 chunked_prefill_for_mla 现已被移除。#5296

  • additional_config 中的 dump_config 已重命名为 dump_config_path,类型也从 dict 更改为 string#5296

  • 用于嵌入模型的 --task 参数 已弃用。#5257

  • VLLM_ASCEND_ENABLE_MLAPO 环境变量的值将在下一个版本中默认设置为 True。它将在解码节点默认启用。请注意,此功能会消耗更多内存。如果您对内存敏感,请将其设置为 False。

文档#

  • 新增了关于 ACLGraph、MTP、KV 池、EPLB 和 PD 解耦功能的全面开发者指南

  • 新增了多个模型的教程,包括 DeepSeek-V3.2-Exp、Qwen3-Next 以及各种多模态模型

  • 更新了常见问题解答和配置文档

其他#

  • OOM 修复:VL 模型上的 OOM 错误现已修复。我们将持续观察。如果您再次遇到 OOM 问题,请提交 issue。#5136

  • Qwen3-Next-MTP 准确性:修复了 Qwen3-Next-MTP 在批量推理时的准确性错误。#4932

  • ZMQ 错误修复:修复了 zmq 发送/接收失败的 bug。#5503

  • 权重转置:修复了 RL 场景中的权重转置问题。#5567

  • Eagle3 SP:使 SP 适配 eagle3。#5562

  • GLM4.6 MTP:GLM4.6 现在支持使用全图的 MTP。#5460

  • Flashcomm2 Oshard:Flashcomm2 现在可与 oshard 通用化功能协同工作。#4723

  • 细粒度共享专家重叠:支持细粒度的共享专家重叠。#5962

已知问题#

  • 由于 transformers 包的升级,某些模型的量化权重(如 qwen2.5vlgemma3minimax)可能无法工作。我们将在下一个后续版本中修复此问题。#6302

  • Qwen3-32B 在 128K 输入长度场景下的性能可能不佳,建议为此场景启用 pcp&dcp 功能。这将在下一个 CANN 版本中得到改进。

  • Qwen3-235BQwen3-480B 在预填充-解码场景和 EP=32 场景下的性能未达预期。我们将在下一个后续版本中改进。

  • 在预填充-解码场景下部署 deepseek3.1 时,请确保解码节点的 tp 大小大于 1。TP=1 无法工作。这将在下一个 CANN 版本中修复。

v0.14.0rc1 - 2026.01.26#

这是 vLLM Ascend v0.14.0 的第一个候选版本。请按照官方文档开始使用。此版本包含了 v0.13.0rc2 中的所有更改。因此我们仅列出与 v0.13.0rc2 的差异。如果您是从 v0.13.0rc1 升级,请同时阅读 v0.14.0rc1 和 v0.13.0rc2 的发布说明。

亮点#

  • 现已恢复对 310P 的支持。在此版本中,仅支持基础密集模型和 VL 模型,且使用 Eager 模式。我们将持续改进和维护对 310P 的支持。#5776

  • 支持压缩张量的 MoE w8a8-int8 量化。 #5718

  • 支持 Medusa 推测式解码。 #5668

  • 支持 Qwen3vl 的 Eagle3 推测式解码。 #4848

新功能#

  • Xlite 后端现已支持 Qwen3 MoE。 #5951

  • 支持 PD-mix 部署场景的 DSA-CP。 #5702

  • 新增对 W4A4_LAOS_DYNAMIC 量化方法的支持。 #5143

性能#

  • Qwen3-next 的性能已得到提升。 #5664 #5984 #5765

  • CPU 绑定逻辑和性能已得到改进。 #5555

  • 合并 Q/K 拆分以简化 AscendApplyRotaryEmb,从而提升性能。 #5799

  • 新增 Matmul Allreduce Rmsnorm 融合 Pass。默认禁用。在 --additional_config 中设置 fuse_allreduce_rms=True 以启用它。 #5034

  • 使用 triton kernel 优化 rope embedding,以获得巨大的性能提升。 #5918

  • 支持无 top_k 约束的高级 apply_top_k_top_p。 #6098

  • 在 AscendMMEncoderAttention 中并行化 Q/K/V 填充以获得更好的性能。 #6204

其他#

  • model runner v2 支持 triton 惩罚。 #5854

  • model runner v2 支持 eagle 推测式解码。 #5840

  • 通过默认设置 expandable_segments:True 修复多模态推理 OOM 问题。 #5855

  • VLLM_ASCEND_ENABLE_MLAPO 默认设置为 True。在 PD 部署场景的解码节点上会自动启用。请注意,此功能会消耗更多内存。如果您对内存敏感,请将其设置为 False。 #5952

  • 对于使用 mooncake 分层连接器的 PD 部署,SSL 配置可以设置到 kv_extra_config 中。 #5875

  • 支持 --max-model-len=auto#6193

依赖项#

  • torch-npu 已升级至 2.9.0 #6112

弃用与破坏性变更#

  • EPLB 配置选项已移至 additional config 中的 eplb_config。旧选项在此版本中已被移除。

  • 分析器环境变量,如 VLLM_TORCH_PROFILER_DIRVLLM_TORCH_PROFILER_WITH_PROFILE_MEMORY,现已不适用于 vLLM Ascend。请改用 vLLM 的 --profiler-config 参数。 #5928

已知问题#

  • 如果您有时遇到来自 EngineCore 进程的 pickle 错误,请将 PR cherry-pick 到您的本地 vLLM 代码中。此已知问题将在 vLLM 的下一个版本中修复。

v0.13.0rc2 - 2026.01.24#

这是 vLLM Ascend v0.13.0 的第二个候选版本。在此 rc 版本中,我们修复了大量错误并提升了多个模型的性能。请按照 官方文档 开始使用。欢迎任何反馈以帮助我们改进 v0.13.0 的最终版本。

亮点#

在此版本中,我们主要关注质量和性能的改进。推测式解码、图模式、上下文并行和 EPLB 都得到了显著提升。修复了大量错误,并提升了 DeepSeek3.1/3.2、Qwen3 Dense/MOE 模型的性能。

新功能#

  • 实现批处理不变性的基础框架 #5517

  • Eagle 推测式解码功能现在可与全图模式协同工作。 #5118

  • 上下文并行(PCP&DCP)功能现在更加稳定,适用于大多数情况。请尝试使用。

  • MTP 和 eagle 推测式解码功能现在在大多数情况下都能工作。建议在大多数情况下使用它们。

  • EPLB 功能现在更加稳定。修复了许多错误。混合放置现已可用 #6086

  • 支持解耦-预填充场景下 DeepSeek 解码节点的 kv nz 功能 #3072

模型支持#

  • 现已支持 LongCat-Flash。#3833

  • 现已支持 minimax_m2。 #5624

  • 支持交叉注意力和 Whisper 模型 #5592

性能#

  • 此版本中添加了许多自定义算子和 Triton 内核以加速模型性能,例如 RejectSamplerMoeInitRoutingCustomDispatchFFNCombine 等。

  • 提升了 Layerwise Connector 的性能 #5303

其他#

  • 基础支持 Model Runner v2。Model Runner V2 是 vLLM 的下一代版本,将在未来的版本中默认使用。#5210

  • 修复了 ZMQ 发送/接收可能失败的 bug #5503

  • 支持 Qwen3-Next-MTP 使用全图模式 #5477

  • 修复强化学习场景中的权重转置问题 #5567

  • 适配 SP 以支持 Eagle3 #5562

  • 上下文并行(PCP&DCP)支持 MLAPO #5672

  • GLM4.6 支持使用全图模式的 MTP #5460

  • Flashcomm2 现在可与 OShard 通用化功能协同工作 #4723

  • 支持为 Eagle 草稿模型设置 tp=1 #5804

  • Flashcomm1 功能现在可与 Qwen3-VL 协同工作 #5848

  • 支持细粒度共享专家重叠 #5962

依赖项#

  • CANN 已升级至 8.5.0

  • torch-npu 已升级至 2.8.0.post1。请注意,此 post 版本默认不会安装,请从 PyPI 镜像手动安装。

  • triton-ascend 已升级至 3.2.0

弃用与破坏性变更#

  • CPUOffloadingConnector 已弃用。我们将在下一个版本中移除它。未来将由 vLLM 的 CPUOffload 功能替代。

  • EPLB 配置选项已移至 附加配置 中的 eplb_config。旧选项将在下一个版本中移除。

  • ProfileExecuteDuration 功能 已弃用。它已被 vLLM 的 ObservabilityConfig 取代。

  • VLLM_ASCEND_ENABLE_MLAPO 环境变量的值将在下一个版本中默认设置为 True。它将在解码节点默认启用。请注意,此功能会消耗更多内存。如果您对内存敏感,请将其设置为 False。

v0.13.0rc1 - 2025年12月27日#

这是 vLLM Ascend v0.13.0 的第一个候选版本。在此版本中,我们修复了大量错误,提升了性能并增加了功能支持。欢迎任何反馈以帮助我们改进 vLLM Ascend。请遵循官方文档开始使用。

亮点#

  • 提升了 DeepSeek V3.2 的性能,请参考教程

  • 现已支持带分块预填充的 Qwen3-Next MTP #4770,请参考教程

  • [实验性] 支持预填充上下文并行和解码上下文并行,但请注意,目前这是一个实验性功能,欢迎任何反馈。请参考上下文并行特性指南

新功能#

  • 支持 OpenPangu Ultra MoE 4615

  • 现已支持新的量化方法 W8A16 #4541

  • 现已支持跨机解耦预填充 #5008

  • 为 KV Cache 卸载添加 UCMConnector #4411

  • 在 Eagle 中支持 async_scheduler 和 disable_padded_drafter_batch #4893

  • 在全图模式下支持 PCP + MTP #4572

  • 增强 NPUModelRunner 中 MoE 模型的 All-Reduce 跳过逻辑 #5329

性能#

一些通用的性能改进:

  • 添加 L2Norm Triton 内核 #4595

  • 为带 SP 的 AddRmsnormQuant 添加新模式,该模式仅在图模式下生效 #5077

  • 在模型执行时添加异步指数 #4501

  • 移除注意力后的转置步骤,并切换到 transpose_batchmatmul #5390

  • 为优化小批量场景下的性能,提供了一个带有 Flash Decoding 功能的注意力算子,请参考常见问题解答中的第22项来启用它。

其它#

  • VL 模型上的 OOM 错误现已修复。我们将持续观察,如果您再次遇到 OOM 问题,请提交 issue #5136

  • 修复了 Qwen3-Next-MTP 在批量推理时的精度错误 #4932

  • 修复 npu-cpu 卸载接口变更导致的错误 #5290

  • 修复 MHA 模型在 aclgraph 模式下的运行时错误 #5397

  • 修复 ep=1 场景下不合适的 moe_comm_type 设置 #5388

弃用与破坏性变更#

  • VLLM_ASCEND_ENABLE_DENSE_OPTIMIZE 已被移除,建议使用 VLLM_ASCEND_ENABLE_PREFETCH_MLP 替代,因为它们通常一起启用 #5272

  • VLLM_ENABLE_FUSED_EXPERTS_ALLGATHER_EP 现已被移除。 #5270

  • 对于浮点权重的情况,VLLM_ASCEND_ENABLE_NZ 已被禁用,因为我们注意到在某些浮点场景下性能不佳。如果您确认它适用于您的场景,可以将其设置为2。 #4878

  • additional_config 中的 chunked_prefill_for_mla 现已被移除。 #5296

  • additional_config 中的 dump_config 已重命名为 dump_config_path,其类型也从 dict 更改为 string#5296

依赖项#

  • vLLM 版本已升级至 0.13.0,并停止支持 0.12.0。 #5146

  • Transformer 版本已升级至 >= 4.57.3 #5250

已知问题#

  • Qwen3-Next 目前不支持长序列场景,运行 Qwen3-Next 时需根据文档限制 gpu-memory-utilization。我们将在下一个版本中改进此问题。

  • Qwen3-Next 在输入/输出约为 3.5k/1.5k 时出现的功能中断问题已修复,但这导致了性能回退。我们将在下一个版本中修复此问题。 #5357

  • DeepSeek-V3.2 在超短序列上存在 curl 精度问题。我们将在下一个版本中修复此问题。 #5370

v0.11.0 - 2025年12月16日#

我们很高兴地宣布 vLLM Ascend v0.11.0 版本发布。这是 v0.11.0 的正式版本。请按照 官方文档 开始使用。如有需要,我们未来会考虑发布后续版本。本版本说明仅包含自 v0.11.0rc3 以来的重要变更和注意事项。

亮点#

  • 提升了 deepseek 3/3.1 的性能。 #3995

  • 修复了 qwen3-vl 的精度问题。 #4811

  • 提升了采样性能。 #4153

  • Eagle3 现已恢复支持。 #4721

其它#

  • 提升了 kimi-k2 的性能。 #4555

  • 修复了 deepseek3.2-exp 的一个量化问题。 #4797

  • 修复了 qwen3-vl-moe 在高并发下的问题。 #4658

  • 修复了 Prefill Decode 解耦场景下的一个精度问题。 #4437

  • 修复了 EPLB 的一些问题。 #4576 #4777

  • 修复了 openEuler docker 镜像的版本兼容性问题。 #4745

弃用声明#

  • LLMdatadist connector 已被弃用,将在 v0.12.0rc1 中移除。

  • Torchair graph 已被弃用,将在 v0.12.0rc1 中移除。

  • Ascend scheduler 已被弃用,将在 v0.12.0rc1 中移除。

升级须知#

  • torch-npu 已升级至 2.7.1.post1。请注意,该软件包已推送至 pypi 镜像。因此很难将其添加到自动依赖中。请自行安装。

  • CANN 已升级至 8.3.rc2。

已知问题#

  • Qwen3-Next 在此版本中不支持专家并行和 MTP 功能。如果输入过长,将会出现内存不足(OOM)。我们将在下一个版本中改进此问题。

  • Deepseek 3.2 在此版本中仅支持 torchair graph 模式。我们将在下一个版本中使其支持 aclgraph 模式。

  • Qwen2-audio 默认无法工作。临时解决方案是将 --gpu-memory-utilization 设置为合适的值,例如 0.8。

  • 如果在同一节点上运行多个 vLLM 实例,CPU 绑定功能将无法工作。

v0.12.0rc1 - 2025年12月13日#

这是 vLLM Ascend v0.12.0 的第一个候选版本。我们在本次发布中修复了大量问题,提升了性能并增加了功能支持。欢迎任何反馈以帮助我们改进 vLLM Ascend。请按照 官方文档 开始使用。

亮点#

  • DeepSeek 3.2 已稳定且性能得到提升。在此版本中,您无需安装任何其他软件包。请按照 官方教程 开始使用。

  • 异步调度器现已更加稳定并可以启用。请设置 --async-scheduling 来启用它。

  • 现已支持更多新模型,例如 Qwen3-omni、DeepSeek OCR、PaddleOCR、OpenCUA。

核心#

  • [实验性] 现已支持全解码专用图模式。虽然默认未启用,但我们建议在大多数情况下通过 --compilation-config '{"cudagraph_mode":"FULL_DECODE_ONLY"}' 启用它。如果您遇到任何错误,请告知我们。我们将持续改进,并在未来几个版本中默认启用。

  • 新增了大量 triton 内核。vLLM Ascend 的性能,特别是 Qwen3-Next 和 DeepSeek 3.2 的性能得到了提升。请注意,triton 默认未安装和启用,但我们建议在大多数情况下启用它。您可以从 软件包链接 手动下载并安装。如果您在 X86 架构上运行 vLLM Ascend,则需要从 源代码 自行构建 triton ascend。

  • 新增了大量 Ascend 算子以提升性能。这意味着从本版本开始,vLLM Ascend 仅在使用自定义算子构建时才能工作。因此我们移除了环境变量 COMPILE_CUSTOM_KERNELS。您现在无法再将其设置为 0。

  • 推测解码方法 MTP 现已更加稳定。它可以在大多数情况下启用,解码令牌数可以是 1、2、3。

  • 现已支持推测解码方法 suffix。感谢招商银行的贡献。

  • 支持 W8A8 的 llm-comppressor 量化工具现已可用。您现在可以直接使用此工具部署经过 W8A8 量化的模型。

  • W4A4 量化现已可用。

  • 支持论文 flashcomm 中的 flashcomm1 和 flashcomm2 特性 #3004 #3334

  • 现已支持池化模型,例如 bge、reranker 等。

  • 官方文档已得到改进。我们重构了教程,使其更加清晰。用户指南和开发者指南现在更加完整。我们将持续改进。

其它#

  • [实验性] 现已支持 Mooncake 分层连接器。

  • [实验性] 新增 KV 缓存池 功能

  • [实验性] 引入新的图模式 xlite。它在某些模型上表现良好。请按照官方教程开始使用。

  • 已移除 LLMdatadist kv 连接器。请改用 mooncake 连接器。

  • 已移除 Ascend 调度器。--additional-config {"ascend_scheduler": {"enabled": true}} 不再生效。

  • 已移除 Torchair 图模式。--additional-config {"torchair_graph_config": {"enabled": true}} 不再生效。请改用 aclgraph。

  • 已移除 VLLM_ASCEND_ENABLE_TOPK_TOPP_OPTIMIZATION 环境变量。此功能已足够稳定,现默认启用。

  • 推测解码方法 Ngram 现已恢复。

  • 新增 msprobe 工具,帮助用户检查模型精度。请按照官方文档开始使用。

  • 新增 msserviceprofiler 工具,帮助用户分析模型性能。请按照官方文档开始使用。

升级说明#

  • vLLM Ascend 自维护的建模文件已被移除,相关的 Python 入口点也已移除。因此,请在升级前卸载环境中的旧版本 vLLM Ascend。

  • CANN 已升级至 8.3.RC2,PyTorch 和 torch-npu 已升级至 2.8.0。请勿忘记安装。

  • 为与 vLLM v0.12.0 保持一致,已放弃对 Python 3.9 的支持

已知问题#

  • DeepSeek 3/3.1 和 Qwen3 在 FULL_DECODE_ONLY 图模式下无法工作。我们将在下个版本修复此问题。#4990

  • Hunyuan OCR 无法工作。我们将在下个版本修复此问题。#4989 #4992

  • DeepSeek 3.2 无法与聊天模板协同工作。这是因为 vLLM v0.12.0 不支持它。我们将在下一个 v0.13.0rc1 版本中提供支持。

  • DeepSeek 3.2 在某些情况下无法在高并发下工作。我们将在下个版本修复此问题。#4996

  • 我们注意到 bf16/fp16 模型性能不佳,主要是因为 VLLM_ASCEND_ENABLE_NZ 默认启用。请设置 VLLM_ASCEND_ENABLE_NZ=0 来禁用它。我们将在下个版本添加自动检测机制。

  • 推测解码方法 suffix 无法工作。我们将在下个版本修复此问题。你可以选取此提交来修复问题:#5010

v0.11.0rc3 - 2025年12月03日#

这是 vLLM Ascend v0.11.0 的第三个候选发布版本。出于质量考虑,我们在正式发布前发布了新的 rc 版本。感谢您的所有反馈。请按照官方文档开始使用。

亮点#

  • torch-npu 已升级至 2.7.1.post1。请注意,该软件包已推送至 pypi 镜像。因此很难将其添加到自动依赖中。请自行安装。

  • 禁用 NZ 权重加载器以加速稠密模型。请注意,这是一个临时解决方案。如果您发现性能变差,请告知我们。我们将持续改进。#4495

  • mooncake 现已安装在官方 Docker 镜像中。您现在可以直接在容器中使用它。#4506

其它#

  • 修复了 MoE 模型的 OOM 问题。#4367

  • 修复了多模态模型在 DP>1 运行时挂起的问题 #4393

  • 修复了 EPLB 的一些错误 #4416

  • 修复了 mtp>1 + lm_head_tp>1 情况下的错误 #4360

  • 修复了长时间运行 vLLM 服务时的精度问题。#4117

  • 修复了在高并发下运行 qwen2.5 vl 时的功能错误。#4553

v0.11.0rc2 - 2025年11月21日#

这是 vLLM Ascend v0.11.0 的第二个候选发布版本。在此版本中,我们修复了许多错误以提升质量。感谢您的所有反馈。我们将继续致力于错误修复和性能改进。v0.11.0 正式版即将发布。请按照官方文档开始使用。

亮点#

  • CANN 已升级至 8.3.RC2。#4332

  • Ngram 推测解码方法现已恢复。#4092

  • 通过更新默认捕获大小,提升了 aclgraph 的性能。#4205

核心#

  • 加速了 vLLM 启动时间。#4099

  • 量化后的 Kimi k2 现已可以工作。#4190

  • 修复了 qwen3-next 的一个错误。现在它更稳定了。#4025

其它#

  • 修复了仅全解码模式的一个问题。全图模式现在更稳定了。#4106 #4282

  • 修复了 DeepSeek V3 系列模型的 allgather 操作错误。#3711

  • 修复了 EPLB 功能的一些错误。 #4150 #4334

  • 修复了 VL 模型在 x86 机器上无法工作的错误。 #4285

  • 为预填充解耦代理支持 IPv6。请注意,mooncake 连接器暂不支持 IPv6,我们正在处理中。 #4242

  • 添加检查以确保 EPLB 在量化场景下仅支持 w8a8 方法。 #4315

  • 添加检查以确保 FLASHCOMM 功能不与 VL 模型同时使用。该功能计划于 2025 年第四季度支持。 #4222

  • 容器中已安装音频所需的库。 #4324

已知问题#

  • Ray 与专家并行 (EP) 不兼容,如果您使用 Ray 运行 vLLM Ascend,请禁用专家并行。 #4123

  • response_format 参数暂不支持,我们将很快提供支持。 #4175

  • CPU 绑定功能在多实例场景(例如单节点上多个 DP)下无效。我们将在下一个版本中修复此问题。

v0.11.0rc1 - 2025.11.10#

这是 vLLM Ascend v0.11.0 的第一个候选发布版本。请按照官方文档开始使用。v0.11.0 将是 vLLM Ascend 的下一个正式发布版本,我们将在未来几天内发布。欢迎任何反馈以帮助我们改进 v0.11.0。

亮点#

  • CANN 已升级至 8.3.RC1。Torch-npu 已升级至 2.7.1。 #3945 #3896

  • 前缀缓存 (PrefixCache) 和分块预填充 (Chunked Prefill) 现已默认启用。 #3967

  • 现已支持 W4A4 量化。 #3427 官方教程请参阅 [single_npu_qwen3_w4a4]vllm-project/vllm-ascend#changes

核心#

  • Qwen3 和 Deepseek V3 系列模型的性能已得到提升。

  • 现已支持 Mooncake 分层连接器 #2602。教程请参阅 pd_disaggregation_mooncake_multi_node

  • 现已支持 MTP > 1。 #2708

  • [实验性] 现已支持图模式 FULL_DECODE_ONLYFULL 模式将在未来几周内推出。 #2128

  • 现已支持池化模型,例如 bge-m3。 #3171

其它#

  • 重构了 MOE 模块,使其更清晰易懂,并且在量化和非量化场景下的性能均有所提升。

  • 重构了模型注册模块以方便维护。我们将在 2025 年第四季度移除该模块。 #3004

  • Torchair 已弃用。一旦 ACL Graph 的性能足够好,我们将移除它。截止日期为 2026 年第一季度。

  • LLMDatadist KV 连接器已弃用。我们将在 2026 年第一季度移除它。

  • 重构了线性模块以支持论文 flashcomm 中的 flashcomm1 和 flashcomm2 特性。 #3004 #3334

已知问题#

  • 长时间服务后可能出现内存泄漏和服务卡住的问题。这是 torch-npu 的一个错误,我们将尽快升级并修复。

  • qwen2.5 VL 模型的准确性不佳。这是由 CANN 导致的一个错误,我们将尽快修复。

  • 对于长序列输入场景,有时会没有响应,并且 KV 缓存使用率会变高。这是调度器的一个错误,我们正在处理中。

  • Qwen2-audio 默认无法工作,我们正在修复。临时解决方案是将 --gpu-memory-utilization 设置为合适的值,例如 0.8。

  • 当启用专家并行运行 Qwen3-Next 时,请将 HCCL_BUFFSIZE 环境变量设置为合适的值,例如 1024。

  • 使用 aclgraph 时 DeepSeek3.2 的准确性不正确。临时解决方案是根据输入的批次大小将 agraph_capture_sizes 设置为合适的值。

v0.11.0rc0 - 2025.09.30#

这是 vLLM Ascend v0.11.0 的特殊候选发布版本。请按照官方文档开始使用。

亮点#

  • 现已支持 DeepSeek V3.2。 #3270

  • 现已支持 Qwen3-vl。 #3103

核心#

  • DeepSeek 现已支持与 aclgraph 协同工作。 #2707

  • MTP 现已支持与 aclgraph 协同工作。 #2932

  • 现已支持 EPLB。 #2956

  • 现已支持 Mooncake 存储 KV 缓存连接器。 #2913

  • 现已支持 CPU 卸载连接器。 #1659

其他#

  • Qwen3-next 现已稳定。 #3007

  • 修复了 Qwen3-next 在 v0.10.2 版本中引入的大量错误。#2964 #2781 #3070 #3113

  • LoRA 功能现已恢复。 #3044

  • Eagle3 推测解码方法现已恢复。 #2949

v0.10.2rc1 - 2025.09.16#

这是 vLLM Ascend v0.10.2 的第一个候选发布版本。请按照官方文档开始使用。

亮点#

  • 新增对 Qwen3-Next 的支持。请注意,专家并行和 MTP 功能在此版本中不可用。我们将很快添加对它们的支持。请按照官方指南开始使用。 #2917

  • 为 aclgraph 添加量化支持 #2841

核心#

  • Aclgraph 现在可与 Ray 后端协同工作。 #2589

  • MTP 现在支持 token > 1 的情况。 #2708

  • Qwen2.5 VL 现在支持量化。 #2778

  • 启用了异步调度器后,性能得到提升。 #2783

  • 修复了使用默认调度器时非 MLA 模型的性能回归问题。 #2894

其他#

  • W8A8 量化的性能得到提升。 #2275

  • MoE 模型的性能得到提升。 #2689 #2842

  • 修复了应用推测解码和 aclgraph 时的资源限制错误。 #2472

  • 修复了 Docker 镜像中的 git 配置错误。 #2746

  • 修复了预填充阶段的滑动窗口注意力错误。 #2758

  • 新增了关于 Qwen3 预填充-解码解耦的官方文档。 #2751

  • 环境变量 VLLM_ENABLE_FUSED_EXPERTS_ALLGATHER_EP 再次生效。 #2740

  • 为 DeepSeek 中的 oproj 添加了一项新改进。设置 oproj_tensor_parallel_size 以启用此功能。 #2167

  • 修复了一个 bug:当设置了 graph_batch_sizes 时,使用 torchair 的 deepseek 模型未按预期工作。 #2760

  • 当 kv_seqlen > 4k 时,避免在 rope 中重复生成 sin_cos_cache。 #2744

  • Qwen3 稠密模型的性能通过 flashcomm_v1 得到提升。设置 VLLM_ASCEND_ENABLE_DENSE_OPTIMIZE=1VLLM_ASCEND_ENABLE_FLASHCOMM=1 以启用此功能。 #2779

  • Qwen3 稠密模型的性能通过预取功能得到提升。设置 VLLM_ASCEND_ENABLE_PREFETCH_MLP=1 以启用此功能。 #2816

  • Qwen3 MoE 模型的性能通过 rope 算子更新得到提升。 #2571

  • 修复了 RLHF 场景下的权重加载错误。 #2756

  • 添加 warm_up_atb 步骤以加速推理。 #2823

  • 修复了 MoE 模型的 aclgraph 流错误。 #2827

已知问题#

  • 当预填充和解码阶段使用不同的 TP 大小时,运行预填充-解码解耦会导致服务器挂起。此问题已由 vLLM commit 修复,但该提交未包含在 v0.10.2 中。您可以选取此提交来修复该问题。

  • Qwen3-Next 的 HBM 使用率高于预期。这是一个已知问题,我们正在处理中。您可以根据您的并行配置,将 max_model_lengpu_memory_utilization 设置为合适的值以避免内存溢出错误。

  • 我们注意到,由于 KV 缓存的重新设计,LoRA 在此版本中无法工作。我们将尽快修复此问题。 2941

  • 在使用昇腾调度器运行时,请勿启用带前缀缓存的分块预填充。其性能和准确性不佳/不正确。#2943

v0.10.1rc1 - 2025.09.04#

这是 vLLM Ascend v0.10.1 的第一个候选发布版本。请按照官方文档开始使用。

亮点#

  • 通过招商银行添加的自定义内核,LoRA 性能得到大幅提升。#2325

  • 支持使用 Mooncake TransferEngine 进行 kv 缓存注册和 pull_blocks 风格的解耦预填充实现。#1568

  • 现在支持将自定义算子捕获到 aclgraph 中。#2113

核心#

  • 新增了 MLP 张量并行以提升性能,但请注意这会增加内存使用量。#2120

  • openEuler 已升级至 24.03 版本。#2631

  • 新增了自定义 lmhead 张量并行,以实现更低的内存消耗和更高的 TPOT 性能。#2309

  • Qwen3 MoE/Qwen2.5 现已支持 torchair 图模式。#2403

  • 支持 AscendScheduler 的滑动窗口注意力机制,从而修复了 Gemma3 的精度问题。#2528

其他#

  • 漏洞修复:

    • 更新了图捕获大小的计算方式,在一定程度上缓解了某些场景下 NPU 流不足的问题。#2511

    • 修复了漏洞并重构了缓存掩码生成逻辑。#2442

    • 修复了 nz 格式在量化场景下无效的问题。#2549

    • 修复了因默认启用 enable_shared_pert_dp 导致的 Qwen 系列模型的精度问题。#2457

    • 修复了在 rope 维度不等于头维度的模型(例如 GLM4.5)上的精度问题。#2601

  • 通过大量 PR 提升了性能:

    • 移除了 torch.cat 并用 List[0] 替代。#2153

    • 将 gmm 的格式转换为 nz。#2474

    • 优化了并行策略以减少通信开销。#2198

    • 优化了贪婪模式下的拒绝采样器。#2137

  • 一系列重构 PR 以增强代码架构:

    • 重构了 MLA。#2465

    • 重构了 torchair fused_moe。#2438

    • 重构了 allgather/mc2 相关的 fused_experts。#2369

    • 重构了 torchair model runner。#2208

    • 重构了 CI。#2276

  • 参数变更:

    • additional_config 中新增了 lmhead_tensor_parallel_size 参数,设置该参数以启用 lmhead 张量并行。#2309

    • 移除了未使用的环境变量 HCCN_PATHPROMPT_DEVICE_IDDECODE_DEVICE_IDLLMDATADIST_COMM_PORTLLMDATADIST_SYNC_CACHE_WAIT_TIME#2448

    • 环境变量 VLLM_LLMDD_RPC_PORT 现已重命名为 VLLM_ASCEND_LLMDD_RPC_PORT#2450

    • 在环境变量中新增了 VLLM_ASCEND_ENABLE_MLP_OPTIMIZE,用于控制在启用张量并行时是否启用 MLP 优化。此功能在 eager 模式下能提供更好的性能。#2120

    • 移除了环境变量中的 MOE_ALL2ALL_BUFFERVLLM_ASCEND_ENABLE_MOE_ALL2ALL_SEQ#2612

    • additional_config 中新增了 enable_prefetch 参数,用于控制是否启用权重预取。#2465

    • additional_config.torchair_graph_config 中新增了 mode 参数,当使用 torchair 的 reduce-overhead 模式时,需要设置此参数。#2461

    • additional_config 中的 enable_shared_expert_dp 参数现在默认禁用,建议在使用 deepseek 进行推理时启用它。#2457

已知问题#

  • 滑动窗口注意力机制目前不支持分块预填充,因此我们只能启用 AscendScheduler 来运行它。#2729

  • 启用 MultiStream 时,创建 mc2_mask 存在一个漏洞,将在下一个版本中修复。#2681

v0.9.1 - 2025.09.03#

我们很高兴地宣布 vLLM Ascend 的最新正式版本。此版本包含了许多功能支持、性能改进和漏洞修复。我们建议用户从 0.7.3 版本升级至此版本。请始终设置 VLLM_USE_V1=1 以使用 V1 引擎。

在此版本中,我们为大规模专家并行场景添加了许多增强功能。建议遵循官方指南

请注意,本发布说明将列出自上一个正式版本(v0.7.3)以来的所有重要变更。

亮点#

  • 高质量、高性能地支持了 DeepSeek V3/R1。MTP 也能与 DeepSeek 协同工作。请参阅多节点教程大规模专家并行

  • Qwen 系列模型现在支持图模式。默认情况下,它与 V1 引擎配合工作。请参阅Qwen 教程

  • V1 引擎支持解耦式预填充。请参阅大规模专家并行教程。

  • 支持自动前缀缓存和分块预填充功能。

  • 推测式解码功能支持 Ngram 和 MTP 方法。

  • 现已支持 MOE 和稠密模型的 w4a8 量化。请参阅量化指南

  • V1 引擎现已支持睡眠模式功能。请参阅睡眠模式教程

  • 已添加动态和静态 EPLB 支持。此功能仍处于实验阶段。

注意#

以下说明特别适用于从上一个正式版本 (v0.7.3) 升级时参考:

  • 从本版本起不再支持 V0 引擎。请始终设置 VLLM_USE_V1=1 以在 vLLM Ascend 中使用 V1 引擎。

  • 本版本不再需要 Mindie Turbo。旧版本的 Mindie Turbo 不兼容,请勿安装。目前所有功能和增强已包含在 vLLM Ascend 中。未来如有需要,我们会考虑重新添加。

  • Torch-npu 已升级至 2.5.1.post1。CANN 已升级至 8.2.RC1。请勿忘记升级。

核心#

  • 为 V1 引擎新增了 Ascend 调度器。该调度器与 Ascend 硬件更加适配。

  • 结构化输出功能现已在 V1 引擎上可用。

  • 添加了一批自定义算子以提升性能。

变更#

  • 为 Qwen3-moe 模型添加 EPLB 支持。#2000

  • 修复了 MTP 与 Prefill Decode Disaggregation 配合不佳的问题。#2610 #2554 #2531

  • 修复了一些 bug 以确保 Prefill Decode Disaggregation 正常工作。#2538 #2509 #2502

  • 修复了在 torchair 模式下使用 shutil.rmtree 时出现的文件未找到错误。#2506

已知问题#

  • 运行 MoE 模型时,Aclgraph 模式仅支持张量并行。DP/EP 在本版本中不可用。

  • 本版本中 V1 引擎不支持流水线并行。

  • 如果在 eager 模式下使用 w4a8 量化,请设置 VLLM_ASCEND_MLA_PARALLEL=1 以避免内存不足错误。

  • 使用某些工具进行的精度测试可能不准确。这不影响实际用户场景。我们将在下一个发布版本中修复此问题。#2654

  • 我们注意到,在使用 Prefill Decode Disaggregation 运行 vLLM Ascend 时仍存在一些问题。例如,可能出现内存泄漏或服务卡住。这是由 vLLM 和 vLLM Ascend 的已知问题引起的。我们将在下一个发布版本中修复此问题。#2650 #2604 vLLM#22736 vLLM#23554 vLLM#23981

v0.9.1rc3 - 2025.08.22#

这是 vLLM Ascend v0.9.1 的第三个候选发布版本。请按照官方文档开始使用。

核心#

  • MTP 支持 V1 调度器 #2371

  • 添加 LMhead 张量并行通信组 #1956

  • 修复了 qwen3 moe 模型在 aclgraph 模式下无法工作的 bug #2478

  • 修复了因过时的 apply_grammar_bitmask 方法导致的 grammar_bitmask IndexError #2314

  • 移除 chunked_prefill_for_mla #2177

  • 修复 bug 并重构缓存掩码生成逻辑 #2326

  • 修复关于 Ascend 调度器的配置检查逻辑 #2327

  • 在 disaggregated-prefill 部署中取消 deepseek-mtp 与非 Ascend 调度器之间的验证 #2368

  • 修复了使用 ray 分布式后端时失败的问题 #2306

  • 修复 Ascend 调度器中请求块长度不正确的问题 #2394

  • 修复 rope 中的头文件包含问题 #2398

  • 修复 mtp 配置 bug #2412

  • 修复错误信息并适配 attn_metadata 重构 #2402

  • 修复了因配置不匹配和缺少 .kv_cache_bytes 文件导致的 torchair 运行时错误 #2312

  • with_prefill 的 allreduce 操作从 CPU 移至 NPU #2230

文档#

  • 添加 deepseek 大模型 EP 相关文档 #2339

已知问题#

  • 在 A2 (910B1) 上,当 "full_cuda_graph": True 时,test_aclgraph.py 测试失败 #2182

v0.10.0rc1 - 2025.08.07#

这是 vLLM Ascend v0.10.0 的第一个候选发布版本。请按照官方文档开始使用。V0 引擎已在此版本中完全移除。

亮点#

  • 解耦预填充现在可与 V1 引擎协同工作。您可以尝试使用 DeepSeek 模型 #950,并按照此教程操作。

  • 现在已支持对稠密模型和 MoE 模型使用 W4A8 量化方法。 #2060 #2172

核心#

  • Ascend PyTorch 适配器 (torch_npu) 已升级至 2.7.1.dev20250724#1562 同时 CANN 已升级至 8.2.RC1#1653 请勿忘记在您的环境中更新它们或使用最新的镜像。

  • vLLM Ascend 现已在 Atlas 800I A3 上运行,A3 的镜像将从此版本开始发布。 #1582

  • vLLM Ascend 现已支持采用 w8a8 量化的 Kimi-K2、Qwen3-Coder 和 GLM-4.5 模型,请按照此教程进行尝试。 #2162

  • V1 引擎现已支持流水线并行。 #1800

  • 前缀缓存功能现在可与 Ascend 调度器协同工作。 #1446

  • Torchair 图模式现在支持 tp > 4 的情况。 #1508

  • MTP 现在支持 torchair 图模式 #2145

其他#

  • 漏洞修复:

    • 修复了 Qwen2-audio 等多模态模型与 Aclgraph 配合使用时的功能问题。 #1803

    • 修复了在外部启动场景下创建进程组的错误。 #1681

    • 修复了引导式解码的功能问题。 #2022

    • 修复了在 DP 场景下常见 MoE 模型的准确性问题。 #1856

  • 通过大量 PR 提升了性能:

    • 缓存 sin/cos 值,而不是在每一层都重新计算。 #1890

    • 改进了共享专家的多流并行 #1891

    • 在启用张量并行时,实现了预填充阶段 allreduce 与 matmul 的融合。通过设置 VLLM_ASCEND_ENABLE_MATMUL_ALLREDUCE1 来启用此功能。 #1926

    • 通过减少 All2All 通信来优化量化 MoE 的性能。 #2195

    • 在自定义模型中使用 AddRmsNormQuant 算子以优化 Qwen3 的性能 #1806

    • 使用组播来避免将解码请求填充至预填充大小 #1555

    • LoRA 的性能已得到提升。 #1884

  • 一系列重构 PR 以增强代码架构:

    • 重构 Torchair 模型运行器 #2205

    • 重构 forward_context 和 model_runner_v1。 #1979

    • 重构 AscendMetaData 注释。 #1967

    • 重构 torchair 工具集。 #1892

    • 重构 torchair worker。 #1885

    • 注册激活自定义算子,而非覆盖 forward_oot。 #1841

  • 参数变更:

    • additional_config 中的 expert_tensor_parallel_size 现已被移除,EP 和 TP 现已与 vLLM 对齐。 #1681

    • 在环境变量中添加 VLLM_ASCEND_MLA_PA,用于启用 deepseek mla 解码的 mla 分页注意力算子。

    • 在环境变量中添加 VLLM_ASCEND_ENABLE_MATMUL_ALLREDUCE,用于在启用张量并行时启用 MatmulAllReduce 融合内核。此功能在 A2 上受支持,且 eager 模式将获得更好的性能。

    • 在环境变量中添加 VLLM_ASCEND_ENABLE_MOE_ALL2ALL_SEQ,用于决定是否启用 moe all2all seq,这为在 alltoall 基础上进行扩展提供了一个基础框架。

  • 在遵循此 RFC #1298 提交一系列 PR 后,单元测试覆盖率已达到 76.34%。

  • 序列并行现可用于 Qwen3 MoE。 #2209

  • 现已添加中文在线文档。 #1870

已知问题#

  • Aclgraph 目前无法与 DP + EP 协同工作,主要差距在于 Aclgraph 捕获图所需的 NPU 流数量不足。 #2229

  • 启用多流时,W8A8 动态量化的 DeepSeek 模型存在准确性问题。此问题将在下一个版本中修复。 #2232

  • 在 Qwen3 MoE 中,序列并行无法集成到 Aclgraph 中。 #2246

  • MTP 目前不支持 V1 调度器,将在第三季度修复此问题。 #2254

  • 当以 DP > 1 运行 MTP 时,由于 vLLM 的某些问题,需要禁用指标记录器。 #2254

v0.9.1rc2 - 2025年08月04日#

这是 vLLM Ascend v0.9.1 的第二个候选发布版本。请按照官方文档开始使用。

亮点#

模型改进#

图模式改进#

  • #1269 中修复了 DeepSeek 与 mc2 的问题。

  • #1332 中修复了 deepseek V3/R1 模型在使用 torchair 图进行长序列预测时的精度问题。

  • #1570 中修复了 torchair_graph_batch_sizes 错误。

  • #1404 中为 torchair 图模式启用了 tp <= 4 的限制。

  • 修复 rope 精度错误 #1887

  • 支持 FusedMoE 中共享专家的多流处理 #997

  • 在 torchair 图模式的解码过程中启用 kvcache_nz #1098

  • 修复结合 torchair 的分块预填充场景,解决 UnboundLocalError: local variable 'decode_hs_or_q_c' 问题 #1378

  • #1561 中改进了 w8a8 动态量化下共享专家的多流性能。

  • #1882 中修复了设置多流时的 moe 错误。

  • 在 EP 场景下将图批次大小向上取整至 tp 大小 #1610

  • #1727 中修复了启用 DP 时的 torchair 错误。

  • #1675 中为 torchair_graph_config 添加了额外检查。

  • #1693 中修复了 torchair+分块预填充场景下的 rope 错误。

  • #1748 中修复了 chunked_prefill 为 true 时的 torchair_graph 错误。

  • #2090 中改进了预填充优化以支持 torchair 图模式。

  • 修复 DP 场景下的 rank 设置 #1247

  • 重置所有未使用的位置以防止越界,以解决 GatherV3 错误 #1397

  • 移除 ModelRunner 中的重复多模态代码 #1393

  • 修复块表形状以解决准确性问题 #1297

  • 在有限场景下实现原始全图 #1503

  • 在全图中恢复分页注意力内核以提升性能 #1677

  • 修复 DeepSeek 在极端 --gpu-memory-utilization 场景下的 OOM 问题 #1829

  • 启用 TorchAir 时关闭 aclgraph #2154

算子改进#

  • 添加自定义 AscendC 内核 vocabparallelembedding #796

  • 修复 rope sin/cos 缓存错误 #1267

  • 重构 AscendFusedMoE (#1229) #1264

  • 在采样器中使用融合算子 npu_top_k_top_p #1920

核心#

  • 将 CANN 升级至 8.2.rc1 #2036

  • 将 torch-npu 升级至 2.5.1.post1 #2135

  • 将 Python 升级至 3.11 #2136

  • 在 mindie_turbo 中禁用量化 #1749

  • 修复 v0 推测解码 #1323

  • 仅在使用 V0 推测解码时直接启用 ACL_OP_INIT_MODE=1 #1271

  • 重构 forward_context 和 model_runner_v1 #1422

  • 修复采样参数 #1423

  • 添加权重启用 NZ 布局的开关并为 GMM 启用 NZ #1409

  • 修复 ascend_forward_context 中的错误 #1449 #1554 #1598

  • 处理 PrefillCacheHit 状态以修复前缀缓存准确性问题 #1492

  • 修复加载权重错误并添加新的端到端测试用例 #1651

  • 优化 DeepSeek 中与 rope 相关的索引选择次数 #1614

  • 添加 mc2 掩码 #1642

  • 修复静态 EPLB log2phy 条件并改进单元测试 #1667 #1896 #2003

  • 为预填充添加分块 mc2 #1703

  • 修复 mc2 算子 GroupCoordinator 错误 #1711

  • 修复无法识别量化实际类型的问题 #1721

  • 修复 tp_size == 1 时的 DeepSeek 错误 #1755

  • 在预填充节点中添加对无延迟块的支持 #1691

  • 针对未量化 RL 训练的 MoE alltoallv 通信优化 & alltoallv 支持 dpo #1547

  • 适配 dispatchV2 接口 #1822

  • 修复长输出中 disaggregate prefill 挂起问题 #1807

  • 修复 engine v0 时的 flashcomm_v1 问题 #1859

  • 在某些情况下,ep_group 不等于 word_size #1862

  • 修复了 wheel glibc 版本不兼容问题 #1808

  • 修复了 mc2 进程组以解决 self.cpu_group 为 None 的问题 #1831

  • 将 vllm 版本固定为 v0.9.1 以使 mypy 检查通过 #1904

  • 为 MoE 应用了 npu_moe_gating_top_k_softmax 以提升性能 #1902

  • 修复了 engine v0 中 path_decorator 的 bug #1919

  • 在解耦预填充场景中避免执行 CPU all_reduce #1644

  • 在解码 MoE 中添加了超级内核 #1916

  • [预填充性能] 并行策略优化(显存换速度权衡) #1802

  • 移除了 shared_experts.down_proj 中不必要的 reduce_results 访问 #2016

  • 通过向量化优化了贪婪拒绝采样器 #2002

  • 使多个 P 节点和 D 节点能在单机上工作 #1936

  • 修复了 deepseek 模型在 tp > 1 且启用 multistream_moe 时,共享专家与路由专家之间的形状冲突 #2075

  • 添加了 CPU 绑定支持 #2031

  • 添加了 with_prefill CPU allreduce 以处理 D 节点重计算 #2129

  • 添加了 D2H 和 initRoutingQuantV2 以提升预填充性能 #2038

文档#

  • 提供了执行时长性能分析的端到端指南 #1113

  • 为 CANN 包下载 URL 添加 Referer 请求头 #1192

  • 添加了重新安装说明文档 #1370

  • 更新了解耦预填充 README #1379

  • 支持 KV 缓存寄存器风格解耦预填充 #1296

  • 修复了 examples/disaggregate_prefill_v1/README.md 中的错误和非标准部分 #1965

已知问题#

  • 对于特定硬件类型,使用 full_cuda_graphenable 的全图模式支持尚不可用 #2182

  • 启用 EP 时,带 TP 的 Qwen3 MoE aclgraph 模式因 bincount 错误而失败 #2226

  • 如 v0.9.1rc1 版本说明所述,将不包含对 Atlas 300I 系列的支持。

v0.9.2rc1 - 2025年7月11日#

这是 vLLM Ascend v0.9.2 的第一个候选发布版本。请遵循官方文档开始使用。从本版本起,V1 引擎将默认启用,不再需要设置 VLLM_USE_V1=1。并且本版本是最后一个支持 V0 引擎的版本,V0 代码将在未来被清理。

亮点#

  • Pooling 模型现在可与 V1 引擎协同工作。您可以尝试使用 Qwen3 embedding 模型 #1359

  • Atlas 300I 系列的性能已得到提升 #1591

  • aclgraph 模式现在可与 MoE 模型协同工作。目前,仅对 Qwen3 MoE 进行了充分测试 #1381

核心#

  • Ascend PyTorch 适配器 (torch_npu) 已升级至 2.5.1.post1.dev20250619。请勿忘记在您的环境中更新它 #1347

  • GatherV3 错误已在 aclgraph 模式下修复 #1416

  • W8A8 量化现在可在 Atlas 300I 系列上运行 #1560

  • 修复了部署带有并行参数的模型时的精度问题 #1678

  • 预构建的 wheel 包现在需要更低版本的 glibc。用户可以直接通过 pip install vllm-ascend 使用它 #1582

其他#

  • 官方文档已更新,以提供更好的阅读体验。例如,添加了更多部署教程,更新了用户/开发者文档。更多指南即将推出。

  • 修复了 Deepseek V3/R1 模型在使用 torchair 图进行长序列预测时的精度问题 #1331

  • 新增了一个环境变量 VLLM_ENABLE_FUSED_EXPERTS_ALLGATHER_EP。它为 Deepseek V3/R1 模型启用了融合的 allgather-experts 内核。默认值为 0 #1335

  • 新增了一个环境变量 VLLM_ASCEND_ENABLE_TOPK_TOPP_OPTIMIZATION,用于提升 topk-topp 采样的性能。默认值为 0,未来我们将考虑默认启用它 #1732

  • 已修复一批数据并行场景下的 bug #1273 #1322 #1275 #1478

  • DeepSeek 的性能已得到提升 #1194 #1395 #1380

  • Ascend 调度器现已支持前缀缓存。#1446

  • DeepSeek 现已支持前缀缓存。#1498

  • 支持使用 prompt logprobs 恢复 V1 版本的 ceval 准确率 #1483

已知问题#

新贡献者#

完整更新日志vllm-project/vllm-ascend

v0.9.1rc1 - 2025.06.22#

这是 vLLM Ascend v0.9.1 的第一个候选发布版本。请按照官方文档开始使用。

实验性功能#

  • 本版本实验性支持 Atlas 300I 系列(已通过 Qwen2.5-7b-instruct/Qwen2.5-0.5b/Qwen3-0.6B/Qwen3-4B/Qwen3-8B 的功能测试)。#1333

  • 支持使用 EAGLE-3 进行推测式解码。#1032

经过慎重考虑,鉴于 v0.9.1 版本的发布质量要求以及功能的快速迭代,上述功能将不会被包含在 v0.9.1-dev 分支(即 v0.9.1 最终版本)中。我们将在 0.9.2rc1 及之后的版本中对其进行改进。

核心#

  • Ascend PyTorch 适配器(torch_npu)已升级至 2.5.1.post1.dev20250528。请勿忘记在您的环境中更新它。#1235

  • 支持 Atlas 300I 系列容器镜像。您可以从 quay.io 获取。

  • 修复了按 token 填充的机制,使多卡图模式能够正常工作。#1300

  • 将 vLLM 升级至 0.9.1 #1165

其他改进#

  • 为 MLA 初步支持分块预填充。#1172

  • 已添加一个使用 ETP 运行 DeepSeek 的最佳实践示例。#1101

  • 通过使用 TorchAir 图,提升了 DeepSeek 的性能。#1098, #1131

  • 支持 AscendScheduler 的推测式解码功能。#943

  • 提升了 VocabParallelEmbedding 自定义算子的性能。该优化将在下一个版本中启用。#796

  • 修复了在 Ray 上运行 vLLM Ascend 时的设备发现和设置错误。#884

  • DeepSeek 现已可与 MC2(计算与通信融合)正常工作。#1268

  • 修复了启用静态 EPLB 功能时出现的 log2phy NoneType 错误。#1186

  • 启用 DBO 后,DeepSeek 的性能得到提升。#997, #1135

  • 重构 AscendFusedMoE #1229

  • 新增初始用户案例页面(包含 LLaMA-Factory/TRL/verl/MindIE Turbo/GPUStack)#1224

  • 添加单元测试框架 #1201

已知问题#

  • 在某些情况下,当启用 aclgraph 时,vLLM 进程可能会因 GatherV3 错误而崩溃。我们正在解决此问题,并将在下一个版本中修复。#1038

  • 前缀缓存功能在未启用分块预填充的情况下无法与 Ascend 调度器一同工作。此问题将在下一个版本中修复。#1350

完整更新日志#

vllm-project/vllm-ascend

新贡献者#

完整更新日志: vllm-project/vllm-ascend

v0.9.0rc2 - 2025.06.10#

本次发布包含了一些针对 v0.9.0rc1 的快速修复。请使用本次发布版本,而不是 v0.9.0rc1。

亮点#

  • 修复当以非可编辑方式安装 vllm-ascend 时的导入错误。#1152

v0.9.0rc1 - 2025.06.09#

这是 vllm-ascend v0.9.0 的第一个候选发布版本。请按照官方文档开始使用。从此版本起,推荐使用 V1 引擎。V0 引擎的代码已被冻结,不再维护。如需启用 V1 引擎,请设置环境变量 VLLM_USE_V1=1

亮点#

  • DeepSeek 现在已支持图模式。请按照官方文档进行尝试。#789

  • Qwen 系列模型现在支持图模式。默认情况下,它在 V1 引擎下运行。请注意,本次发布中,仅 Qwen 系列模型经过了充分的图模式测试。我们将在下一个版本中进一步提升其稳定性并推广至更广泛的场景。如果你遇到任何问题,请随时在 GitHub 上提交 issue,并在初始化模型时通过设置 enforce_eager=True 临时切换回 eager 模式。

核心#

  • 多步调度器的性能得到了提升。感谢招商银行的贡献。#814

  • V1 引擎现在支持 LoRA、多 LoRA 以及动态服务。感谢招商银行的贡献。#893

  • 前缀缓存和分块预填充功能现已可用 #782 #844

  • Spec 解码和 MTP 功能现在已经支持 V1 引擎。#874 #890

  • DP 功能现在可以与 DeepSeek 一起使用。#1012

  • 输入嵌入特性现在已支持 V0 引擎。#916

  • 休眠模式功能现在已支持 V1 引擎。#1084

模型#

  • Qwen2.5 VL 现在可以与 V1 引擎协同工作。#736

  • Llama4 现在可以使用了。#740

  • 新增了一种名为双批次重叠(dual-batch overlap,DBO)的 DeepSeek 模型。请设置 VLLM_ASCEND_ENABLE_DBO=1 以启用。 #941

其他#

已知问题#

  • 在某些情况下,启用 aclgraph 时 vLLM 进程可能会崩溃。我们正在处理这个问题,并将在下一个版本中修复。

  • 多节点数据并行在此版本中无法使用。这是 vllm 中已知的问题,并已在主分支中修复。#18981

v0.7.3.post1 - 2025.05.29#

这是 0.7.3 版本的第一个补丁发布。请按照官方文档开始使用。本次更新包含以下更改:

亮点#

  • 现已支持 Qwen3 和 Qwen3MOE。Qwen3 的性能和精度已通过充分测试,您可以立即试用。推荐使用 Mindie Turbo 以提升 Qwen3 的性能。#903 #915

  • 新增了一份性能指南。该指南旨在帮助用户在系统层面提升 vllm-ascend 的性能,内容包括操作系统配置、库优化、部署指南等。#878 文档链接

错误修复#

  • Qwen2.5-VL 现已支持 RLHF 场景。#928

  • 用户现在可以直接从在线权重启动模型,例如直接从 huggingface 或 modelscope 获取。#858 #918

  • 无意义的日志信息 UserWorkspaceSize0 已被清理。#911

  • Failed to import vllm_ascend_C 的日志级别已从 error 更改为 warning#956

  • DeepSeek MLA 现已在 V1 引擎中支持分块预填充。请注意,0.7.3 版本中的 V1 引擎仅为实验性功能,仅供测试使用。#849 #936

文档#

  • 基准测试文档已针对 Qwen2.5 和 Qwen2.5-VL 进行更新 #792

  • 添加说明,明确指出只有 "modelscope<1.23.0" 可与 0.7.3 版本兼容使用。#954

v0.7.3 - 2025.05.08#

🎉 你好,世界!

我们很高兴地宣布 vllm-ascend 0.7.3 版本正式发布。这是首个官方正式版本。该版本的功能、性能和稳定性均已通过全面测试和验证。我们鼓励您试用并提供反馈。如有需要,我们将在未来发布错误修复版本。请按照官方文档开始使用。

亮点#

  • 本次发布包含了之前所有候选版本中已实现的功能(v0.7.1rc1v0.7.3rc1v0.7.3rc2)。所有功能均已通过全面测试和验证。请访问官方文档以获取详细的功能模型支持矩阵。

  • 将 CANN 升级到 8.1.RC1 以启用分块预填充和自动前缀缓存功能。您现在可以启用这些功能。

  • 将 PyTorch 升级至 2.5.1。vLLM Ascend 现在不再依赖 torch-npu 的开发版本。用户无需再手动安装 torch-npu,2.5.1 版本的 torch-npu 将被自动安装。#662

  • 将 MindIE Turbo 集成到 vLLM Ascend 中,以提升 DeepSeek V3/R1、Qwen 2 系列的性能。#708

核心#

  • 现已支持 LoRA、多 LoRA 和动态服务。性能将在下一个版本中得到提升。请参阅官方文档以获取更多使用信息。感谢招商银行的贡献。#700

模型#

  • Qwen2 vl 和 Qwen2.5 vl 的性能已得到提升。#702

  • apply_penaltiestopKtopP 操作的性能已得到提升。#525

其他#

  • 修复了一个可能导致 CPU 内存泄漏的问题。#691 #712

  • 新增了一个环境变量 SOC_VERSION。如果在启用自定义算子构建时遇到任何 SoC 检测错误,请将 SOC_VERSION 设置为合适的值。#606

  • 现已支持带有 v0.7.3-openeuler 标签的 openEuler 容器镜像。#665

  • 前缀缓存功能现已在 V1 引擎上正常工作。#559

v0.8.5rc1 - 2025.05.06#

这是 vllm-ascend v0.8.5 的第一个候选发布版本。请按照官方文档开始使用。现在,您可以通过设置环境变量 VLLM_USE_V1=1 来启用 V1 引擎。vLLM Ascend 的功能支持状态请参见 supported_features

亮点#

  • 将 CANN 版本升级到 8.1.RC1,以支持在启用 V1 时的分块预填充和自动前缀缓存(--enable_prefix_caching)功能#747

  • 优化 Qwen2 VL 和 Qwen 2.5 VL #701

  • 改进了 Deepseek V3 的 eager 模式和图模式性能,现在您可以使用 --additional_config={'enable_graph_mode': True} 来启用图模式。#598 #719

核心#

  • 将 vLLM 升级到 0.8.5.post1 #715

  • 修复了在 profile_run 期间 CustomDeepseekV2MoE.forward 过早返回的问题 #682

  • 适配由 modelslim 生成的新量化模型 #719

  • 基于 llm_datadist 的 P2P 分布式预填充初步支持 #694

  • 使用 /vllm-workspace 作为代码路径,并在容器镜像中包含 .git ,以修复在 /workspace 下启动 vllm 时的问题 #726

  • 优化 NPU 内存使用,使 DeepSeek R1 W8A8 32K 模型长度能够运行。#728

  • 修复 setup.py 中的 PYTHON_INCLUDE_PATH 拼写错误 #762

其他#

  • 添加 Qwen3-0.6B 测试 #717

  • 添加夜间持续集成 #668

  • 添加准确性测试报告 #542

v0.8.4rc2 - 2025.04.29#

这是 vllm-ascend v0.8.4 的第二个候选版本。请遵循官方文档开始使用。此版本包含一些实验性功能,例如 W8A8 量化和 EP/DP 支持。我们将在下一个版本中使其足够稳定。

亮点#

  • 现已支持 Qwen3 和 Qwen3MOE。请遵循官方文档运行快速演示。#709

  • 现已支持 Ascend W8A8 量化方法。请参考官方文档 示例。欢迎提供任何反馈#580

  • DeepSeek V3/R1 现已支持 DP、TP 和 MTP。请注意,目前仍处于实验阶段。如果遇到任何问题,请告知我们。 #429 #585 #626 #636 #671

核心#

  • ACLGraph 特性现在已被 V1 引擎支持。它默认是禁用的,因为该特性依赖于 CANN 8.1 版本。我们将在下一个版本中默认启用此特性 #426

  • 升级 PyTorch 至 2.5.1。vLLM Ascend 现在不再依赖开发版本的 torch-npu。用户无需手动安装 torch-npu。 torch-npu 的 2.5.1 版本将会自动安装。#661

其他#

  • MiniCPM 模型现在可以运行了。#645

  • openEuler 容器镜像已支持 v0.8.4-openeuler 标签,并且 openEuler 操作系统默认启用了自定义算子构建。#689

  • 修复 ModuleNotFoundError 错误以使 LoRA 正常工作 #600

  • 添加了“使用 EvalScope 评估”文档 #611

  • 新增了一个 VLLM_VERSION 环境变量,使 vLLM 版本可配置,以帮助开发者在本地手动修改 vLLM 代码后设置正确的 vLLM 版本。#651

v0.8.4rc1 - 2025.04.18#

这是 vllm-ascend v0.8.4 的第一个候选版本。请遵循官方文档开始使用。从本版本起,vllm-ascend 将跟随 vllm 的最新版本并每两周发布一次。例如,如果 vllm 在接下来的两周内发布 v0.8.5,vllm-ascend 将发布 v0.8.5rc1,而不是 v0.8.4rc2。详细信息请参阅官方文档

亮点#

  • 本版本包含了对 vLLM V1 引擎的实验性支持。你可以访问官方指南获取更多详细信息。默认情况下,如果 V1 不可用,vLLM 会自动回退到 V0。如果你想强制使用 V1,请设置 VLLM_USE_V1=1 环境变量。

  • 现已支持 LoRA、Multi-LoRA 和动态服务。性能将在下一个版本中得到提升。请遵循官方文档获取更多使用信息。感谢招商银行的贡献。#521

  • 已支持休眠模式功能。目前它只在 V0 引擎上工作,V1 引擎的支持即将到来。#513

核心#

  • 为 V1 引擎新增了 Ascend 调度器。该调度器与 Ascend 硬件更加适配。未来还将添加更多调度策略。 #543

  • 支持分离式预填充功能。目前仅支持 1P1D,NPND 正在由 vllm 团队设计中。一旦 vLLM 准备就绪,vllm-ascend 将会支持。请遵循官方指南使用。#432

  • 推测解码功能现已可用。目前它只在 V0 引擎上工作,V1 引擎的支持即将到来。#500

  • 结构化输出功能现在已在 V1 引擎上生效。目前仅支持 xgrammar 后端,使用 guidance 后端可能会出现一些错误。#555

其他#

  • 新增了一个通信器 pyhccl。它用于直接调用 CANN HCCL 库,而不是使用 torch.distribute。将在下一个版本中添加更多用法 #503

  • 自定义算子的构建默认是启用的。你应该先安装如 gcccmake 等包以便从源码编译 vllm-ascend。如果不需要自定义算子的编译,可以设置环境变量 COMPILE_CUSTOM_KERNELS=0 来禁用编译。 #466

  • 自定义算子 rotary embedding 现已默认启用,以提升性能。#555

v0.7.3rc2 - 2025.03.29#

这是 vllm-ascend v0.7.3 的第二个候选版本。请遵循官方文档开始使用。

亮点#

  • 新增 Ascend 自定义算子框架。开发者现在可以使用 AscendC 编写自定义算子。已添加示例算子 rotary_embedding。更多教程即将发布。安装 vllm-ascend 时,自定义算子编译默认禁用。设置 COMPILE_CUSTOM_KERNELS=1 以启用此功能。 #371

  • 本版本已基本支持 V1 引擎。完整支持将在 0.8.X 版本中实现。如果您遇到任何问题或有 V1 引擎的相关需求,请通过此问题告知我们。 #376

  • 前缀缓存功能现已可用。您可以通过设置 enable_prefix_caching=True 来启用它。 #282

核心#

  • 将 torch_npu 版本升级至 dev20250320.3 以提高精度,修复 !!! 输出问题。 #406

模型#

  • 通过优化补丁嵌入(Conv3D),Qwen2-vl 的性能得到了提升。 #398

其他#

  • 修复了一个错误,确保多步调度器功能正常工作。 #349

  • 修复了一个错误,使前缀缓存功能能够以正确的精度运行。 #424

v0.7.3rc1 - 2025.03.14#

🎉 你好,世界!这是 vllm-ascend v0.7.3 的第一个候选发布版本。请按照官方文档开始您的旅程。

亮点#

  • DeepSeek V3/R1 现在运行良好。请阅读官方指南开始使用! #242

  • 已支持推测解码功能。 #252

  • 已支持多步调度器功能。 #300

核心#

  • 将 torch_npu 版本升级至 dev20250308.3,以提高 _exponential 的精度

  • 新增了对池化模型的初步支持。基于 Bert 的模型,例如 BAAI/bge-base-en-v1.5BAAI/bge-reranker-v2-m3 现已可用。 #229

模型#

  • Qwen2-VL 的性能得到了提升。 #241

  • 现已支持 MiniCPM #164

其他#

  • 为 DeepSeek V3/R1 支持 MTP(多标记预测) #236

  • [文档] 新增了更多模型教程,包括 DeepSeek、QwQ、Qwen 和 Qwen 2.5VL。详情请参阅官方文档

  • 在 vLLM v0.7.3 上将 modelscope 版本锁定为 <1.23.0,以解决:vllm-project/vllm#13807

已知问题#

  • 某些情况下,特别是当输入/输出非常长时,输出的准确性可能不正确。我们正在解决此问题,将在下一个版本中修复。

  • 已改进并减少了模型输出中的乱码问题。但如果您仍然遇到此问题,请尝试更改生成配置参数,例如 temperature,然后重试。下方还列出了一个已知问题。欢迎提供任何反馈#277

v0.7.1rc1 - 2025.02.19#

🎉 你好,世界!

我们很高兴地宣布 vllm-ascend v0.7.1 的第一个候选发布版本。

vLLM Ascend 插件(vllm-ascend)是一个由社区维护的硬件插件,用于在 Ascend NPU 上运行 vLLM。通过此版本,用户现在可以在 Ascend NPU 上享受 vLLM 的最新功能和改进。

请按照官方文档开始您的旅程。请注意,这是一个候选发布版本,可能存在一些错误或问题。我们非常感谢您的反馈和建议,请通过此问题提交。

亮点#

  • 在 vLLM 上初步支持 Ascend NPU。 #3

  • 现已支持 DeepSeek。 #88 #68

  • Qwen、Llama 系列及其他流行模型也已支持,更多详情请参阅 supported_models

核心#

  • 新增了 Ascend 量化配置选项,具体实现即将推出。 #7 #73

  • 添加 silu_and_mul 和 rope 算子,并将混合算子加入注意力层。 #18

其他#

  • [CI] 启用 Ascend CI,以主动监控并提升 vLLM 在 Ascend 上的质量。 #3

  • [Docker] 添加 vllm-ascend 容器镜像 #64

  • [文档] 添加 在线文档 #55

已知问题#

  • 此版本依赖于一个尚未发布的 torch_npu 版本。该版本已预装在官方容器镜像中。如果您使用的是非容器环境,请手动安装

  • 运行 vllm-ascend 时,可能会显示类似 No platform detected, vLLM is running on UnspecifiedPlatformFailed to import from vllm._C with ModuleNotFoundError("No module named 'vllm._C'") 的日志。这实际上不影响任何功能或性能,您可以忽略它。此问题已在此 PR 中修复,并将很快包含在 v0.7.3 版本中。

  • 运行 vllm-ascend 时,可能会显示类似 # CPU blocks: 35064, # CPU blocks: 2730 的日志,实际应为 # NPU blocks:。这实际上不影响任何功能或性能,您可以忽略它。此问题已在此 PR 中修复,并将很快包含在 v0.7.3 版本中。