Skip to content

vllm-project/vllm-ascend

Repository files navigation

vllm-ascend

vLLM Ascend Plugin

| About Ascend | Documentation | Developer Slack (#sig-ascend) |

English | 中文


Latest News 🔥


Overview

vLLM Ascend plugin (vllm-ascend) is a backend plugin for running vLLM on the Ascend NPU.

This plugin is the recommended approach for supporting the Ascend backend within the vLLM community. It adheres to the principles outlined in the [RFC]: Hardware pluggable, providing a hardware-pluggable interface that decouples the integration of the Ascend NPU with vLLM.

By using vLLM Ascend plugin, popular open-source models, including Transformer-like, Mixture-of-Expert, Embedding, Multi-modal LLMs can run seamlessly on the Ascend NPU.

Prerequisites

  • Hardware: Atlas 800I A2 Inference series, Atlas A2 Training series
  • Software:
    • Python >= 3.9
    • CANN >= 8.0.RC2
    • PyTorch >= 2.4.0, torch-npu >= 2.4.0
    • vLLM (the same version as vllm-ascend)

Find more about how to setup your environment step by step in here.

Getting Started

Note

Currently, we are actively collaborating with the vLLM community to support the Ascend backend plugin, once supported you can use one line command pip install vllm vllm-ascend to compelete installation.

Installation from source code:

# Install vllm main branch according:
# https://docs.vllm.ai/en/latest/getting_started/installation/cpu/index.html#build-wheel-from-source
git clone --depth 1 https://github.com/vllm-project/vllm.git
cd vllm
pip install -r requirements-build.txt
VLLM_TARGET_DEVICE=empty pip install .

# Install vllm-ascend main branch
git clone https://github.com/vllm-project/vllm-ascend.git
cd vllm-ascend
pip install -e .

Run the following command to start the vLLM server with the Qwen/Qwen2.5-0.5B-Instruct model:

# export VLLM_USE_MODELSCOPE=true to speed up download
vllm serve Qwen/Qwen2.5-0.5B-Instruct
curl http://localhost:8000/v1/models

Please refer to QuickStart and Installation for more details.

Contributing

See CONTRIBUTING for more details, which is a step-by-step guide to help you set up development environment, build and test.

We welcome and value any contributions and collaborations:

  • Please feel free comments here about your usage of vLLM Ascend Plugin.
  • Please let us know if you encounter a bug by filing an issue.

Branch

vllm-ascend has main branch and dev branch.

  • main: main branch,corresponds to the vLLM main branch, and is continuously monitored for quality through Ascend CI.
  • vX.Y.Z-dev: development branch, created with part of new releases of vLLM. For example, v0.7.1-dev is the dev branch for vLLM v0.7.1 version.

Please refer to Versioning policy for more details.

License

Apache License 2.0, as found in the LICENSE file.