贡献指南¶
构建与测试¶
建议在提交 PR 之前,先搭建本地开发环境来构建 vllm-ascend 并运行测试。
搭建开发环境¶
理论上,vllm-ascend 的构建仅支持 Linux 系统,因为其依赖 vllm-ascend 仅支持 Linux。
但你仍然可以在 Linux/Windows/macOS 上搭建开发环境,用于代码检查及运行基础测试。
本地运行代码检查¶
# 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
本地运行 CI¶
完成“运行代码检查”设置后,你可以在本地运行 CI(持续集成):
cd ~/vllm-project/
# Run CI needs vLLM installed
git clone --branch v0.22.1 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
提交代码¶
🎉 恭喜!你已完成开发环境搭建。
本地测试¶
你可以参考测试指南来搭建测试环境并在本地运行测试。
DCO 与 Signed-off-by¶
向本项目贡献代码时,你必须同意 DCO。提交记录必须包含 Signed-off-by: 头部,以证明你同意 DCO(开发者原创证书)的条款。
使用 -s 命令将自动添加此头部信息。
PR 标题与分类¶
仅特定类型的 PR 会被审查。PR 标题需添加适当前缀以指明变更类型。请使用以下前缀之一:
git commit用于注意力机制的新功能或优化。[Attention]用于通信器的新功能或优化。[Communicator]用于模型运行器的新功能或优化。[ModelRunner]用于平台的新功能或优化。[Platform]用于工作节点的新功能或优化。[Worker]用于 vllm-ascend 核心逻辑(如平台、注意力机制、通信器、模型运行器)的新功能或优化。[Core]用于影响计算内核和算子的变更。[Kernel]用于错误修复。[BugFix]用于文档修复和改进。[Doc]用于测试(如单元测试)。[Test]用于构建或持续集成的改进。[CI]用于不属于上述类别的 PR,请谨慎使用。
Note
如果 PR 涉及多个类别,请包含所有相关前缀。
其他¶
你可以在 [docs.vllm.ai[Misc] 上找到更多关于向 vLLM Ascend 后端插件贡献的信息。
如果在贡献过程中遇到任何问题,欢迎提交 PR 改进文档,以帮助其他开发者。