### What this PR does / why we need it? This PR introduces support for adding custom CANN `aclnn` ops to `vllm-ascend`, allowing users to define and use their own custom operators. Key changes include: - Building and installing custom ops into the `vllm-ascend`-specified directory - Binding the `aclnn` op interface to the `torch.ops._C_ascend` module - Enabling invocation of these ops within `vllm-ascend` This PR includes a sample custom op: `aclnnGroupedMatmulSwigluQuantWeightNzTensorList`, which is adapted from the CANN operator [`aclnnGroupedMatmulSwigluQuantWeightNZ`](https://www.hiascend.com/document/detail/zh/canncommercial/83RC1/API/aolapi/context/aclnnGroupedMatmulSwigluQuantWeightNZ.md). Its input parameters `weight` and `weight_scale` now accept `list[torch.Tensor]` (i.e., `at::TensorList`). ### Does this PR introduce _any_ user-facing change? No. - vLLM version: v0.11.2 --------- Signed-off-by: QianChenxi <chenxi.qian.cq@outlook.com>
43 lines
1.1 KiB
TOML
43 lines
1.1 KiB
TOML
[build-system]
|
|
# Should be mirrored in requirements.txt
|
|
requires = [
|
|
"attrs",
|
|
"cmake>=3.26",
|
|
"decorator",
|
|
"einops",
|
|
"googleapis-common-protos",
|
|
"numpy<2.0.0",
|
|
"packaging",
|
|
"pip",
|
|
"pybind11",
|
|
"pyyaml",
|
|
"scipy",
|
|
"pandas",
|
|
"pandas-stubs",
|
|
"psutil",
|
|
"setuptools>=64",
|
|
"setuptools-scm>=8",
|
|
"transformers<=4.57.1",
|
|
"torch-npu==2.7.1",
|
|
"torch==2.7.1",
|
|
"torchvision",
|
|
"wheel",
|
|
"msgpack",
|
|
"quart",
|
|
"numba",
|
|
"opencv-python-headless<=4.11.0.86", # Required to avoid numpy version conflict with vllm
|
|
"compressed_tensors>=0.11.0"
|
|
]
|
|
build-backend = "setuptools.build_meta"
|
|
|
|
[tool.pymarkdown]
|
|
plugins.md004.style = "sublist" # ul-style
|
|
plugins.md007.indent = 4 # ul-indent
|
|
plugins.md007.start_indented = true # ul-indent
|
|
plugins.md013.enabled = false # line-length
|
|
plugins.md041.enabled = false # first-line-h1
|
|
plugins.md033.enabled = false # inline-html
|
|
plugins.md046.enabled = false # code-block-style
|
|
plugins.md024.allow_different_nesting = true # no-duplicate-headers
|
|
plugins.md029.enabled = false # ol-prefix
|