fix(thinking): default enable_thinking=True for t1a/t1c PASS
Competition tests t1a_thinking_true and t1c_thinking_default both expect reasoning_content > 0. Sub509 returned reasoning[0] for both (1.54s each). Root cause: Qwen3.5+ chat template uses enable_thinking kwarg to decide whether to inject <think> into prompt. Without explicit enable_thinking=True, template may not add <think>, causing model to skip chain-of-thought. Competitor Sub168: t1a reasoning[541] (7.85s), t1c reasoning[411] (6.29s). Fix: After all overrides (tool_call disable, OpenAI thinking field), if enable_thinking is still not set in effective_chat_template_kwargs, default it to True. Source pattern: CCCL interpreted_execution_policy.cuh — default policy mapping when no explicit override is specified.
This commit is contained in:
@@ -197,6 +197,14 @@ class OpenAIServingChat(OpenAIServing):
|
||||
effective_chat_template_kwargs.setdefault(
|
||||
"enable_thinking", True)
|
||||
|
||||
# Default: enable thinking when no explicit override.
|
||||
# Qwen3.5+ chat template uses enable_thinking to inject <think>
|
||||
# into the prompt. Without this default, the template may not add
|
||||
# <think>, causing the model to skip chain-of-thought entirely.
|
||||
# Competition tests t1a/t1c expect reasoning_content > 0.
|
||||
if "enable_thinking" not in effective_chat_template_kwargs:
|
||||
effective_chat_template_kwargs["enable_thinking"] = True
|
||||
|
||||
if is_mistral_tokenizer:
|
||||
prompt = apply_mistral_chat_template(
|
||||
tokenizer,
|
||||
|
||||
Reference in New Issue
Block a user