[DSPARK] Grammar-constrained decoding, incl. tool_choice=auto (#31753)

Co-authored-by: shanemort1982 <shanemort1982@users.noreply.github.com>
Co-authored-by: hnyls2002 <lsyincs@gmail.com>
This commit is contained in:
shanemort1982
2026-07-25 05:20:25 -07:00
committed by GitHub
co-authored by shanemort1982 hnyls2002
parent a678a42033
commit e943e609dc
6 changed files with 51 additions and 25 deletions
@@ -7,6 +7,8 @@ from sglang.test.kits.basic_decode_correctness_kit import BasicDecodeCorrectness
from sglang.test.kits.basic_scheduler_stress_kit import BasicSchedulerStressMixin
from sglang.test.kits.eval_accuracy_kit import GSM8KMixin
from sglang.test.kits.fwd_occupancy_kit import FwdOccupancyMixin
from sglang.test.kits.json_constrained_kit import JSONConstrainedMixin
from sglang.test.kits.spec_server_kits import SpecGrammarKit
from sglang.test.test_utils import (
DEFAULT_TIMEOUT_FOR_SERVER_LAUNCH,
DEFAULT_URL_FOR_TEST,
@@ -14,7 +16,7 @@ from sglang.test.test_utils import (
popen_launch_server,
)
register_cuda_ci(est_time=120, stage="base-b", runner_config="1-gpu-large")
register_cuda_ci(est_time=180, stage="base-b", runner_config="1-gpu-large")
TARGET_MODEL = "Qwen/Qwen3-14B"
DRAFT_MODEL = "deepseek-ai/dspark_qwen3_14b_block7"
@@ -34,6 +36,8 @@ class TestBasicSanityDSpark(
BasicSchedulerStressMixin,
FwdOccupancyMixin,
GSM8KMixin,
JSONConstrainedMixin,
SpecGrammarKit,
CustomTestCase,
):
served_model_name = TARGET_MODEL
@@ -84,6 +88,10 @@ class TestBasicSanityDSpark(
},
)
@unittest.skip("DSPARK rejects return_logprob at admission")
def test_grammar_logprob_count_matches_completion_tokens(self):
pass
@classmethod
def tearDownClass(cls):
if cls.process is not None: