本仓库为SGLang提供MindSpore模型支持。您需要准备Python 3.11环境,并安装SGLang和本仓库。
| 模型 | Ascend 910B/910C | Ascend 310P |
|---|---|---|
| Qwen-3 Dense | ✅ | ✅ |
| Qwen-3 MoE | ✅ | ✅ |
| DeepSeek V3 | ✅ |
我们会一步步指引,帮助您在SGLang中运行MindSpore模型。
请安装CANN 8.5社区版。需要安装的软件包包括toolkit, kernels和nnal。如果您使用CANN 8.3且不希望更换版本,也可以选择MindSpore 2.7.1每日构建版。详情请参考第4节。
git clone https://github.com/sgl-project/sglang.git
cd sglang
cp python/pyproject_other.toml python/pyproject.toml
pip install -e "python[all_npu]"
首先下载并解压安装包:
# 910B 或 310P
wget https://github.com/sgl-project/sgl-kernel-npu/releases/download/2026.01.21/sgl-kernel-npu_2026.01.21_8.5.0_910b.zip -O tmp.zip && unzip tmp.zip && rm -f tmp.zip
# A3 (910C)
wget https://github.com/sgl-project/sgl-kernel-npu/releases/download/2026.01.21/sgl-kernel-npu_2026.01.21_8.5.0_a3.zip -O tmp.zip && unzip tmp.zip && rm -f tmp.zip
然后安装:
pip install output/*.whl
如果您在运行SGLang时遇到类似version GLIBCXX_3.4.29 not found的报错,表示您系统的GLIBCXX版本低于编译环境的版本。这种情况下建议从源码构建:
git clone https://github.com/sgl-project/sgl-kernel-npu.git
cd sgl-kernel-npu
bash build.sh -a kernels
pip install output/*.whl
git clone https://github.com/mindspore-lab/sgl-mindspore.git
cd sgl-mindspore
pip install -e .
该命令会安装MindSpore 2.8.0。如果您使用CANN 8.3且不希望更换版本,请安装MindSpore 2.7.1每日构建版:
pip install http://repo.mindspore.cn/mindspore/mindspore/version/202512/20251211/master_20251211010018_65a9c09590c14021cbe38cb8720acb5dad022901_newest/unified/aarch64/mindspore-2.7.1-cp311-cp311-linux_aarch64.whl
运行前请设置以下环境变量:
export ASCEND_RT_VISIBLE_DEVICES=0 # 指定你想使用的NPU设备ID
export PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python # 避免protobuf版本不匹配
python examples/offline_infer.py --model-path /path/to/your/model
要启用数据或张量并行,请修改以上脚本中的 dp_size 和 tp_size。
此脚本使用Python启动SGLang server,并发送一个样例请求。
python examples/server_infer.py --model-path /path/to/your/model
也可以使用bash脚本启动服务,并使用curl命令发送请求:
bash examples/start_server.sh
请求格式请参阅SGLang官方文档.
测试单个batch的推理性能:
bash examples/bench_one_batch.sh
测试服务化推理性能,请先启动服务,然后运行
bash examples/bench_serving.sh
host和port参数必须和启动服务时的参数匹配。
可以在脚本内修改测试参数。
昇腾310P不支持Triton。直接运行代码会导致triton编译错误。请根据您的SGLang安装目录应用补丁:
cd /path/to/sglang
git apply --3way /path/to/sgl-mindspore/patches/310p.patch
如果您需要更新SGLang的代码,请先丢弃补丁,拉取最新代码,然后重新应用补丁。
Apache License 2.0