更新时间:2025-07-29 GMT+08:00
分享

Ascend-vLLM介绍

Ascend-vLLM概述

vLLM是GPU平台上广受欢迎的大模型推理框架,因其高效的continuous batching和pageAttention功能而备受青睐。此外,vLLM还具备投机推理和自动前缀缓存等关键功能,使其在学术界和工业界都得到了广泛应用。

Ascend-vLLM是华为云针对NPU优化的推理框架,继承了vLLM的优点,并通过特定优化实现了更高的性能和易用性。它使得在NPU卡上运行大模型变得更加高效和便捷,为用户带来了极大的便利和性能提升。Ascend-vLLM可广泛应用于各种大模型推理任务,特别是在需要高性能和高效率的场景中,如自然语言处理、图像生成和语音识别等。

Ascend-vLLM的主要特点

  1. 易用性:Ascend-vLLM简化了在大模型上的部署和推理过程,使开发者可以更轻松地使用它。
  2. 易开发性:提供了友好的开发和调试环境,便于模型的调整和优化。
  3. 高性能:通过自研特性和针对NPU的优化,如PD分离、前后处理、sample等,实现了高效的推理性能。

Ascend-vLLM支持的特性介绍

表1 Ascend-vLLM支持的特性

特性名称

特性说明

调度

Page-attention

分块管理kvcache,提升吞吐。

Continuous batching

迭代级调度,动态调整batch,降低延迟,提升吞吐。

Multi-step

一次调度多次推理,降低调度上的cpu-overhead。

量化

W4A16-AWQ、GPTQ

权重Int4量化,降低显存消耗和时延。小并发时延提升80%,精度损失2%以内。

W8A8-smoothQuant

权重Int8量化,降低显存消耗,吞吐提升30%;精度损失1.5%以内。

W8A16-GPTQ

Int8量化,降低显存消耗,提高吞吐20%。精度损失1%以内。

Kv8

Kv-cache量化,提高吞吐,支持更长序列。

高效解码

Auto-prefix-caching

前缀缓存,降低首token时延。在system prompt较长或多轮对话场景收益明显

Chunked-prefill

又名split-fuse。全量增量同时推理,提高资源利用率,提升吞吐。

Speculative Decoding

支持大小模型投机推理和eager模式投机,提升推理性能。

图模式

Cuda-graph/cann-graph

记录算子执行的依赖关系构图;消除python host耗时;且支持动态shape。

Torch.compile

Torch.dynamo构图,转ascend-GE后端推理;使用静态分档。

实例复用

Multi-lora

多lora挂载,多个不同微调模型共用一份权重同时部署。

控制输出

Guided Decoding

通过特定模式控制模型输出。

Beam search

通过beamsearch输出多个候选结果。

分离部署

PD分离部署

全量、增量分离部署,提高资源利用率,提升体验。

剪枝

FASP (Fast and Accurate Structured Pruning) 剪枝

FASP剪枝是一种结构化稀疏剪枝方法,能有效降低模型显存以及需要部署的资源依赖,减小推理过程中的计算量,降低增量推理时延,提升吞吐。

相关文档