### What this PR does / why we need it? Update doc Signed-off-by: hfadzxy <starmoon_zhang@163.com>
3.5 KiB
Contributing
Building and Testing
It's recommended to set up a local development environment to build vllm-ascend and run tests before you submit a PR.
Set up a development environment
Theoretically, the vllm-ascend build is only supported on Linux because
vllm-ascend dependency torch_npu only supports Linux.
But you can still set up a development environment on Linux/Windows/macOS for linting and running basic tests.
Run lint locally
# Choose a base dir (~/vllm-project/) and set up venv
cd ~/vllm-project/
python3 -m venv .venv
source ./.venv/bin/activate
# Clone vllm-ascend and install
git clone https://github.com/vllm-project/vllm-ascend.git
cd vllm-ascend
# Install lint requirement and enable pre-commit hook
pip install -r requirements-lint.txt
# Run lint (You need to install pre-commits deps via proxy network at first time)
bash format.sh
Run CI locally
After completing "Run lint" setup, you can run CI locally:
:substitutions:
cd ~/vllm-project/
# Run CI need vLLM installed
git clone --branch |vllm_version| https://github.com/vllm-project/vllm.git
cd vllm
pip install -r requirements/build.txt
VLLM_TARGET_DEVICE="empty" pip install .
cd ..
# Install requirements
cd vllm-ascend
# For Linux:
pip install -r requirements-dev.txt
# For non Linux:
cat requirements-dev.txt | grep -Ev '^#|^--|^$|^-r' | while read PACKAGE; do pip install "$PACKAGE"; done
cat requirements.txt | grep -Ev '^#|^--|^$|^-r' | while read PACKAGE; do pip install "$PACKAGE"; done
# Run ci:
bash format.sh ci
Submit the commit
# Commit changed files using `-s`
git commit -sm "your commit info"
🎉 Congratulations! You have completed the development environment setup.
Testing locally
You can refer to Testing to set up a testing environment and running tests locally.
DCO and Signed-off-by
When contributing changes to this project, you must agree to the DCO. Commits must include a Signed-off-by: header which certifies agreement with the terms of the DCO.
Using -s with git commit will automatically add this header.
PR Title and Classification
Only specific types of PRs will be reviewed. The PR title is prefixed appropriately to indicate the type of change. Please use one of the following:
[Attention]for new features or optimization in attention.[Communicator]for new features or optimization in communicators.[ModelRunner]for new features or optimization in model runner.[Platform]for new features or optimization in platform.[Worker]for new features or optimization in worker.[Core]for new features or optimization in the core vllm-ascend logic (such as platform, attention, communicators, model runner)[Kernel]for changes affecting compute kernels and ops.[Bugfix]for bug fixes.[Doc]for documentation fixes and improvements.[Test]for tests (such as unit tests).[CI]for build or continuous integration improvements.[Misc]for PRs that do not fit the above categories. Please use this sparingly.
:::{note} If the PR spans more than one category, please include all relevant prefixes. :::
Others
You may find more information about contributing to vLLM Ascend backend plugin on docs.vllm.ai. If you find any problem when contributing, you can feel free to submit a PR to improve the doc to help other developers.
:::{toctree} :caption: Index :maxdepth: 1 testing :::