[MoE Refactor] [NPU] Refactor Ascend MoE implementation to reduce code duplication and align with community design (#25663)

Co-authored-by: ronnie_zheng <zl19940307@163.com>
This commit is contained in:
Артем Савкин
2026-07-15 14:59:42 +03:00
committed by GitHub
co-authored by ronnie_zheng
parent c9b17403e7
commit 8ed82afcc8
54 changed files with 2851 additions and 2375 deletions
@@ -0,0 +1,45 @@
import os
import unittest
from sglang.test.ascend.gsm8k_ascend_mixin import GSM8KAscendMixin
from sglang.test.ascend.test_ascend_utils import QWEN3_30B_A3B_W8A8_WEIGHTS_PATH
from sglang.test.ci.ci_register import register_npu_ci
from sglang.test.test_utils import CustomTestCase
register_npu_ci(est_time=400, suite="per-commit-4-npu-a3")
class TestQwen330Bw8a8FuseEP(GSM8KAscendMixin, CustomTestCase):
"""Testcase: Verify that the inference accuracy of the Qwen/Qwen3-30B-A3B-w8a8 model on the GSM8K dataset is no less than 0.90.
[Test Category] Model
[Test Target] Qwen/Qwen3-30B-A3B-w8a8
"""
model = QWEN3_30B_A3B_W8A8_WEIGHTS_PATH
accuracy = 0.90
other_args = [
"--trust-remote-code",
"--mem-fraction-static",
0.8,
"--attention-backend",
"ascend",
"--cuda-graph-max-bs-decode",
128,
"--tp-size",
4,
"--moe-a2a-backend",
"ascend_fuseep",
"--fuseep-mode",
2,
]
env = {
**os.environ,
"SGLANG_PREFILL_DELAYER_MAX_DELAY_PASSES": "100",
"SGLANG_DEEPEP_NUM_MAX_DISPATCH_TOKENS_PER_RANK": "188416",
}
if __name__ == "__main__":
unittest.main()
@@ -1,28 +1,28 @@
import unittest
from sglang.test.ascend.gsm8k_ascend_mixin import GSM8KAscendMixin
from sglang.test.ascend.test_ascend_utils import QWEN3_30B_MODELSLIM_INT4_WEIGHTS_PATH
from sglang.test.ascend.test_ascend_utils import (
ECO_TECH_QWEN3_30B_A3B_W4A4_LAOS_WEIGHTS_PATH,
)
from sglang.test.ci.ci_register import register_npu_ci
from sglang.test.test_utils import CustomTestCase
register_npu_ci(est_time=400, suite="per-commit-2-npu-a2")
class TestQwen317BGPTQInt8(GSM8KAscendMixin, CustomTestCase):
class TestQwen330Bw4a4(GSM8KAscendMixin, CustomTestCase):
"""Testcase: Verify that the inference accuracy of the Eco-Tech/Qwen3-30B-A3B-w4a4-LAOS model on the GSM8K dataset is no less than 0.85.
[Test Category] Model
[Test Target] Qwen/Qwen3-1.7B-GPTQ-Int8
[Test Target] Eco-Tech/Qwen3-30B-A3B-w4a4-LAOS
"""
model = QWEN3_30B_MODELSLIM_INT4_WEIGHTS_PATH
model = ECO_TECH_QWEN3_30B_A3B_W4A4_LAOS_WEIGHTS_PATH
accuracy = 0.85
other_args = [
"--trust-remote-code",
"--mem-fraction-static",
0.8,
"--max-running-requests",
32,
"--attention-backend",
"ascend",
"--disable-cuda-graph",
@@ -30,7 +30,6 @@ MINIMAX_M2_5_HIGH_THROUGHPUT_ENVS = {
"ASCEND_USE_FIA": "1",
"SGLANG_SET_CPU_AFFINITY": "1",
"SGLANG_ENABLE_OVERLAP_PLAN_STREAM": "1",
"SGLANG_NPU_FUSED_MOE_MODE": "2",
"SGLANG_DEEPEP_NUM_MAX_DISPATCH_TOKENS_PER_RANK": "204800",
"PYTHONPATH": f"{MINIMAX_M2_5_EAGLE3_MODEL_PATH}:{os.environ.get('PYTHONPATH', '')}",
"SGLANG_EXTERNAL_MODEL_PACKAGE": "custom_eagle3",
@@ -68,8 +67,8 @@ MINIMAX_M2_5_HIGH_THROUGHPUT_OTHER_ARGS = [
20,
"--moe-a2a-backend",
"ascend_fuseep",
"--deepep-mode",
"auto",
"--fuseep-mode",
2,
"--quantization",
"modelslim",
"--speculative-algorithm",