From 1da5cd638f38289e94d61aaa59c248fdcb71a2fc Mon Sep 17 00:00:00 2001 From: Muqi Li Date: Tue, 16 Dec 2025 11:40:10 +0800 Subject: [PATCH] [Bugfix][Tool Call] Add null system prompt to support tool system prompt (#15092) Signed-off-by: Muqi Li --- python/sglang/srt/entrypoints/openai/serving_chat.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/python/sglang/srt/entrypoints/openai/serving_chat.py b/python/sglang/srt/entrypoints/openai/serving_chat.py index 0a928e16c..d7eea9d7b 100644 --- a/python/sglang/srt/entrypoints/openai/serving_chat.py +++ b/python/sglang/srt/entrypoints/openai/serving_chat.py @@ -293,6 +293,10 @@ class OpenAIServingChat(OpenAIServingBase): ) messages = request.messages messages = [msg.model_dump() for msg in messages] + + if messages[0]["role"] != "system": + # insert an empty system prompt to help render tool system prompt + messages.insert(0, {"role": "system", "content": ""}) if request.tools: messages[0]["tools"] = [tool.model_dump() for tool in request.tools] real_input = encode_messages(messages, thinking_mode=thinking_mode)