67 lines
2.6 KiB
Bash
Executable File
67 lines
2.6 KiB
Bash
Executable File
#!/bin/bash
|
|
set -euo pipefail
|
|
|
|
PIP_INSTALL="python3 -m pip install --no-cache-dir"
|
|
DEVICE_TYPE=$1
|
|
|
|
|
|
# Install the required dependencies in CI.
|
|
apt update -y && apt install -y \
|
|
build-essential \
|
|
cmake \
|
|
wget \
|
|
curl \
|
|
net-tools \
|
|
zlib1g-dev \
|
|
lld \
|
|
clang \
|
|
locales \
|
|
ccache \
|
|
ca-certificates
|
|
update-ca-certificates
|
|
${PIP_INSTALL} --upgrade pip
|
|
# Pin wheel to 0.45.1, REF: https://github.com/pypa/wheel/issues/662
|
|
${PIP_INSTALL} wheel==0.45.1 pybind11
|
|
|
|
|
|
### Install MemFabric
|
|
${PIP_INSTALL} mf-adapter==1.0.0
|
|
|
|
|
|
### Install PyTorch and PTA
|
|
PYTORCH_VERSION="2.8.0"
|
|
TORCHVISION_VERSION="0.23.0"
|
|
${PIP_INSTALL} torch==${PYTORCH_VERSION} torchvision==${TORCHVISION_VERSION} --index-url https://download.pytorch.org/whl/cpu
|
|
|
|
PTA_URL="https://sglang-ascend.obs.cn-east-3.myhuaweicloud.com/sglang/torch_npu/torch_npu-2.8.0.post2.dev20251113-cp311-cp311-manylinux_2_28_aarch64.whl"
|
|
${PIP_INSTALL} ${PTA_URL}
|
|
|
|
|
|
### Install Triton-Ascend
|
|
TRITON_ASCEND_URL="https://sglang-ascend.obs.cn-east-3.myhuaweicloud.com/sglang/triton_ascend/triton_ascend-3.2.0.dev2025112116-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl"
|
|
${PIP_INSTALL} ${TRITON_ASCEND_URL}
|
|
|
|
|
|
### Install BiSheng
|
|
BISHENG_NAME="Ascend-BiSheng-toolkit_aarch64_20251121.run"
|
|
BISHENG_URL="https://sglang-ascend.obs.cn-east-3.myhuaweicloud.com/sglang/triton_ascend/${BISHENG_NAME}"
|
|
wget -O "${BISHENG_NAME}" "${BISHENG_URL}" && chmod a+x "${BISHENG_NAME}" && "./${BISHENG_NAME}" --install && rm "${BISHENG_NAME}"
|
|
|
|
|
|
### Install sgl-kernel-npu
|
|
SGL_KERNEL_NPU_TAG="20251128"
|
|
git clone --depth 1 https://github.com/sgl-project/sgl-kernel-npu.git --branch ${SGL_KERNEL_NPU_TAG}
|
|
(cd sgl-kernel-npu && bash ./build.sh && ${PIP_INSTALL} output/deep_ep*.whl output/sgl_kernel_npu*.whl && cd "$(python3 -m pip show deep-ep | grep -E '^Location:' | awk '{print $2}')" && ln -s deep_ep/deep_ep_cpp*.so)
|
|
|
|
|
|
### Install CustomOps (TODO: to be removed once merged into sgl-kernel-npu)
|
|
wget https://sglang-ascend.obs.cn-east-3.myhuaweicloud.com/ops/CANN-custom_ops-8.2.0.0-$DEVICE_TYPE-linux.aarch64.run
|
|
chmod a+x ./CANN-custom_ops-8.2.0.0-$DEVICE_TYPE-linux.aarch64.run
|
|
./CANN-custom_ops-8.2.0.0-$DEVICE_TYPE-linux.aarch64.run --quiet --install-path=/usr/local/Ascend/ascend-toolkit/latest/opp
|
|
wget https://sglang-ascend.obs.cn-east-3.myhuaweicloud.com/ops/custom_ops-1.0.$DEVICE_TYPE-cp311-cp311-linux_aarch64.whl
|
|
pip install ./custom_ops-1.0.$DEVICE_TYPE-cp311-cp311-linux_aarch64.whl
|
|
|
|
### Install SGLang
|
|
rm -rf python/pyproject.toml && mv python/pyproject_other.toml python/pyproject.toml
|
|
${PIP_INSTALL} -v -e "python[srt_npu]"
|