config: publishing is the process entry's job (#36251)

This commit is contained in:
Cheng Wan
2026-08-26 04:58:41 -07:00
committed by GitHub
parent 702de26310
commit d7b144f64e
21 changed files with 209 additions and 108 deletions
@@ -19,6 +19,7 @@ from sglang.srt.distributed.parallel_state_wrapper import ParallelState
from sglang.srt.managers.schedule_batch import Req, ScheduleBatch
from sglang.srt.model_executor.forward_batch_info import ForwardBatch, ForwardMode
from sglang.srt.model_executor.model_runner import ModelRunner
from sglang.srt.runtime_context import publish
from sglang.srt.sampling.sampling_params import SamplingParams
from sglang.srt.server_args import PortArgs, ServerArgs
from sglang.srt.speculative.spec_info import SpeculativeAlgorithm
@@ -52,6 +53,8 @@ class TestForwardSplitPrefill(CustomTestCase):
cls.port_args = PortArgs.init_new(cls.server_args)
publish(cls.server_args, role="scheduler")
# Load model and tokenizer
cls.model_config = ModelConfig.from_server_args(cls.server_args)
cls.model_runner = ModelRunner(
@@ -15,6 +15,7 @@ from unittest.mock import Mock, patch
from sglang.srt.managers.io_struct import GenerateReqInput
from sglang.srt.managers.tokenizer_manager import TokenizerManager
from sglang.srt.runtime_context import publish
from sglang.srt.server_args import PortArgs, ServerArgs
from sglang.test.test_utils import DEFAULT_SMALL_MODEL_NAME_FOR_TEST
@@ -39,6 +40,7 @@ class TestTokenizerBatchEncode(unittest.TestCase):
):
mock_tokenizer.return_value = Mock(vocab_size=32000)
publish(self.server_args, role="tokenizer")
self.tokenizer_manager = TokenizerManager(self.server_args, self.port_args)
def test_batch_encode_enabled(self):
+5
View File
@@ -24,6 +24,7 @@ from sglang.srt.managers.tokenizer_manager import (
TokenizerManager,
)
from sglang.srt.observability.req_time_stats import APIServerReqTimeStats
from sglang.srt.runtime_context import publish
from sglang.srt.server_args import PortArgs, ServerArgs
from sglang.test.test_utils import DEFAULT_SMALL_MODEL_NAME_FOR_TEST
@@ -45,6 +46,7 @@ class TestInputFormatDetection(unittest.TestCase):
) as mock_tokenizer,
):
mock_tokenizer.return_value = Mock(vocab_size=32000)
publish(self.server_args, role="tokenizer")
self.tokenizer_manager = TokenizerManager(self.server_args, self.port_args)
def test_detect_single_string(self):
@@ -143,6 +145,7 @@ class TestTokenizerInputPreparation(unittest.TestCase):
) as mock_tokenizer,
):
mock_tokenizer.return_value = Mock(vocab_size=32000)
publish(self.server_args, role="tokenizer")
self.tokenizer_manager = TokenizerManager(self.server_args, self.port_args)
def test_prepare_single_string_input(self):
@@ -203,6 +206,7 @@ class TestTokenizerResultExtraction(unittest.TestCase):
) as mock_tokenizer,
):
mock_tokenizer.return_value = Mock(vocab_size=32000)
publish(self.server_args, role="tokenizer")
self.tokenizer_manager = TokenizerManager(self.server_args, self.port_args)
def test_extract_single_string_results(self):
@@ -327,6 +331,7 @@ class TestTokenizerManagerIntegration(unittest.TestCase):
) as mock_tokenizer,
):
mock_tokenizer.return_value = Mock(vocab_size=32000)
publish(self.server_args, role="tokenizer")
self.tokenizer_manager = TokenizerManager(self.server_args, self.port_args)
def test_full_workflow_single_string(self):
+7 -4
View File
@@ -20,6 +20,7 @@ from sglang.srt.managers.schedule_batch import (
from sglang.srt.model_executor.model_runner import ModelRunner
from sglang.srt.multimodal.processors.base_processor import BaseMultimodalProcessor
from sglang.srt.parser.conversation import generate_chat_conv
from sglang.srt.runtime_context import publish
from sglang.srt.server_args import ServerArgs
from sglang.test.test_utils import download_image_with_retry
@@ -141,16 +142,18 @@ class VisionLLMLogitsBase(unittest.IsolatedAsyncioTestCase):
return inputs
def get_sglang_model(self):
server_args = ServerArgs(
model_path=self.model_path,
disable_cuda_graph=True,
)
publish(server_args, role="scheduler")
self.model_runner = ModelRunner(
model_config=ModelConfig(self.model_path, model_override_args="{}"),
mem_fraction_static=0.8,
gpu_id=0,
ps=ParallelState.trivial(),
nccl_port=12435,
server_args=ServerArgs(
model_path=self.model_path,
disable_cuda_graph=True,
),
server_args=server_args,
)
return self.model_runner.model