vLLM-MindSpore插件文档
vLLM-MindSpore插件简介
vLLM-MindSpore插件(vllm-mindspore)是一个由 MindSpore社区 孵化的vLLM后端插件。其将基于MindSpore构建的大模型推理能力接入 vLLM ,从而有机整合MindSpore和vLLM的技术优势,提供全栈开源、高性能、易用的大模型推理解决方案。
vLLM是由加州大学伯克利分校Sky Computing Lab创建的社区开源项目,已广泛用于学术研究和工业应用。vLLM以Continuous Batching调度机制和PagedAttention Key-Value缓存管理为基础,提供了丰富的推理服务功能,包括投机推理、Prefix Caching、Multi-LoRA等。同时,vLLM已支持种类丰富的开源大模型,包括Transformer类(如LLaMa)、混合专家类(如DeepSeek)、Embedding类(如E5-Mistral)、多模态类(如LLaVA)等。由于vLLM选用PyTorch构建大模型和管理计算存储资源,此前无法使用其部署基于MindSpore大模型的推理服务。
vLLM-MindSpore插件以将MindSpore大模型接入vLLM,并实现服务化部署为功能目标。其遵循以下设计原则:
接口兼容:支持vLLM原生的API和服务部署接口,避免新增配置文件或接口,降低用户学习成本和确保易用性。
最小化侵入式修改:尽可能避免侵入式修改vLLM代码,以保障系统的可维护性和可演进性。
组件解耦:最小化和规范化MindSpore大模型组件和vLLM服务组件的耦合面,以利于多种MindSpore大模型套件接入。
基于上述设计原则,vLLM-MindSpore插件采用如下图所示的系统架构,分组件类别实现vLLM与MindSpore的对接:
服务化组件:通过将LLM Engine、Scheduler等服务化组件中的PyTorch API调用映射至MindSpore能力调用,继承支持包括Continuous Batching、PagedAttention在内的服务化功能。
大模型组件:通过注册或替换模型、网络层、自定义算子等组件,将MindSpore Transformers、MindSpore One等MindSpore大模型套件和自定义大模型接入vLLM。
![]() |
vLLM-MindSpore插件采用vLLM社区推荐的插件机制,实现能力注册。未来期望遵循 RPC Multi-framework support for vllm 所述原则。
环境准备
硬件:Atlas 800I A2推理服务器,或Atlas 800T A2推理服务器,已安装必要的驱动程序,并可连接至互联网
操作系统:openEuler或Ubuntu Linux
软件:
Python >= 3.9, < 3.12
CANN >= 8.0.0.beta1
MindSpore (与vLLM-MindSpore插件版本配套)
vLLM (与vLLM-MindSpore插件版本配套)
快速体验
贡献
请参考 CONTRIBUTING 文档了解更多关于开发环境搭建、功能测试以及 PR 提交规范的信息。
我们欢迎并重视任何形式的贡献与合作,请通过 Issue 来告知我们您遇到的任何Bug,或提交您的特性需求、改进建议、技术方案。
分支策略
vLLM-MindSpore插件代码仓包含主干分支、开发分支、版本分支:
main: 主干分支,与MindSpore master分支和vLLM v0.9.1版本配套,并通过昇腾+昇思CI持续进行质量看护;
develop: 开发分支,在vLLM部分新版本发布时从主干分支拉出,用于开发适配vLLM的新功能特性。待特性适配稳定后合入主干分支。当前开发分支正在适配vLLM v0.9.1版本;
rX.Y.Z: 版本分支,在完成vLLM某版本适配后,从主干分支拉出,用于正式版本发布归档。
下面是维护中的版本分支:
分支 |
状态 |
备注 |
---|---|---|
master |
Maintained |
基于vLLM v0.9.1版本和MindSpore master分支CI看护 |
develop |
Maintained |
基于vLLM v0.9.1版本 |
r0.1 |
Unmaintained |
仅允许文档修复 |
r0.2 |
Maintained |
基于vLLM v0.7.3版本和MindSpore 2.6.0版本CI看护 |
r0.3.0 |
Maintained |
基于vLLM v0.7.3版本和MindSpore 2.7.0版本CI看护 |
SIG组织
欢迎加入LLM Infercence Serving,参与开源项目共建和产业合作:https://www.mindspore.cn/community/SIG
SIG例会,双周周五或周六晚上,20:00 - 21:00 (UTC+8, 查看您的时区 )
许可证
Apache 许可证 2.0,如 LICENSE 文件中所示。