From 83e24e2eb434df20031c511230d849d4f27bafd3 Mon Sep 17 00:00:00 2001 From: Yan Ru Pei Date: Tue, 17 Feb 2026 19:14:22 -0800 Subject: [PATCH] Expose priority parameter in Engine.generate() and Engine.async_generate() (#18944) Signed-off-by: PeaBrane Co-authored-by: Cursor --- python/sglang/srt/entrypoints/EngineBase.py | 1 + python/sglang/srt/entrypoints/engine.py | 4 ++++ python/sglang/srt/entrypoints/http_server_engine.py | 2 ++ 3 files changed, 7 insertions(+) diff --git a/python/sglang/srt/entrypoints/EngineBase.py b/python/sglang/srt/entrypoints/EngineBase.py index 5d3162afd..4f4bd85e7 100644 --- a/python/sglang/srt/entrypoints/EngineBase.py +++ b/python/sglang/srt/entrypoints/EngineBase.py @@ -30,6 +30,7 @@ class EngineBase(ABC): bootstrap_room: Optional[Union[List[int], int]] = None, data_parallel_rank: Optional[int] = None, rid: Optional[Union[List[str], str]] = None, + priority: Optional[int] = None, ) -> Union[Dict, Iterator[Dict]]: """Generate outputs based on given inputs.""" pass diff --git a/python/sglang/srt/entrypoints/engine.py b/python/sglang/srt/entrypoints/engine.py index b5324d8b5..0335dbd8b 100644 --- a/python/sglang/srt/entrypoints/engine.py +++ b/python/sglang/srt/entrypoints/engine.py @@ -236,6 +236,7 @@ class Engine(EngineBase): external_trace_header: Optional[Dict] = None, rid: Optional[Union[List[str], str]] = None, session_params: Optional[Dict] = None, + priority: Optional[int] = None, ) -> Union[Dict, Iterator[Dict]]: """ The arguments of this function is the same as `sglang/srt/managers/io_struct.py::GenerateReqInput`. @@ -274,6 +275,7 @@ class Engine(EngineBase): external_trace_header=external_trace_header, rid=rid, session_params=session_params, + priority=priority, ) generator = self.tokenizer_manager.generate_request(obj, None) @@ -325,6 +327,7 @@ class Engine(EngineBase): external_trace_header: Optional[Dict] = None, rid: Optional[Union[List[str], str]] = None, session_params: Optional[Dict] = None, + priority: Optional[int] = None, ) -> Union[Dict, AsyncIterator[Dict]]: """ The arguments of this function is the same as `sglang/srt/managers/io_struct.py::GenerateReqInput`. @@ -364,6 +367,7 @@ class Engine(EngineBase): external_trace_header=external_trace_header, rid=rid, session_params=session_params, + priority=priority, ) generator = self.tokenizer_manager.generate_request(obj, None) diff --git a/python/sglang/srt/entrypoints/http_server_engine.py b/python/sglang/srt/entrypoints/http_server_engine.py index 9ab665a05..5faefa8de 100644 --- a/python/sglang/srt/entrypoints/http_server_engine.py +++ b/python/sglang/srt/entrypoints/http_server_engine.py @@ -108,6 +108,7 @@ class HttpServerEngineAdapter(EngineBase): token_ids_logprob=None, lora_path=None, custom_logit_processor=None, + priority=None, ): payload = { "text": prompt, @@ -120,6 +121,7 @@ class HttpServerEngineAdapter(EngineBase): "token_ids_logprob": token_ids_logprob, "lora_path": lora_path, "custom_logit_processor": custom_logit_processor, + "priority": priority, } # Filter out None values payload = {k: v for k, v in payload.items() if v is not None}