feat: Add 'none' reasoning effort to ChatCompletionRequest#20556
Merged
hnyls2002 merged 1 commit intosgl-project:mainfrom Mar 16, 2026
Merged
feat: Add 'none' reasoning effort to ChatCompletionRequest#20556hnyls2002 merged 1 commit intosgl-project:mainfrom
hnyls2002 merged 1 commit intosgl-project:mainfrom
Conversation
Contributor
|
Warning You have reached your daily quota limit. Please wait up to 24 hours and I will start processing your requests again! |
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
b35dbb2 to
3e344d0
Compare
Add support for reasoning_effort='none' in the chat completions API, matching the OpenAI Python SDK's ReasoningEffort type which includes 'none' (see openai-python: types/shared/reasoning_effort.py). When reasoning_effort='none': - Defaults thinking and enable_thinking to false in chat_template_kwargs (respects explicit user overrides via setdefault) - Harmony (GPT-OSS) path raises ValueError (not supported) This is useful for models like Qwen3.5 that have built-in reasoning but where callers want direct output without thinking tokens.
3e344d0 to
ec2a77f
Compare
Collaborator
|
/tag-and-rerun-ci |
Collaborator
|
All hit tests pass locally. |
Wangzheee
pushed a commit
to Wangzheee/sglang
that referenced
this pull request
Mar 21, 2026
0-693
pushed a commit
to 0-693/sglang
that referenced
this pull request
Mar 25, 2026
JustinTong0323
pushed a commit
to JustinTong0323/sglang
that referenced
this pull request
Apr 7, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Motivation
The OpenAI Python SDK's
ReasoningEfforttype includes"none"(source), and vLLM recently added support for it (vllm#36238). SGLang currently only accepts"low","medium","high".This is useful for models like Qwen3.5 that have built-in reasoning, so callers can disable thinking per-request via
reasoning_effort: "none"without requiring engine-level configuration like--default-chat-template-kwargs '{"enable_thinking": false}'.Modifications
protocol.py:"none"toreasoning_effortLiteral type andnormalize_reasoning_inputsvalidatorreasoning_effort="none", defaultthinkingandenable_thinkingtoFalseinchat_template_kwargsviasetdefault(user-provided values take precedence)serving_chat.py:reasoning_effort="none"in the harmony (GPT-OSS) path withValueErrortest_protocol.py:reasoning_effort="none"via top-level param and nestedreasoningdictChecklist
Review Process
/tag-run-ci-label,/rerun-failed-ci,/tag-and-rerun-ci