这篇适合谁,读完能做到什么
适合想搞清楚「Qwen3 的思考模式到底怎么回事」的读者,尤其是想在自己的程序里控制模型是否思考、思考多久的开发者。读完你能说出 Qwen3 的两种模式各适合什么场景,理解「思考预算」是怎么限制思考长度的,并知道模板里的 enable_thinking 是怎么让模型跳过或进入思考阶段的。
Qwen3 的思考模式是什么
Qwen3 把两种模式放在同一个模型里:思考模式下它会先深思熟虑,非思考模式下则快速给出回答[1]。这意味着你不用为了快和准分别部署两个模型,而是根据任务来选。
两种模式结合之后,Qwen3 能够比较稳定地控制「思考预算」。这让用户可以按任务难度分配预算:简单的问题少想一点,难的问题多想一点,在速度和效果之间找平衡[1]。另外,随着分配的思考预算增加,模型在评测集上的得分也会逐步提高[1]。
思考预算是怎么限制的
在 Qwen Chat 网页版(chat.qwen.ai)上,深度思考的预算可以调节,粒度是 1024 个 token,最大可以到 38912 个 token,也就是 38 × 1024[1]。
用 Qwen3-235B-A22B 做了一个实验:在 1024 个 token 的思考预算下,让模型回答一个马尔科夫链相关的问题,为了让它的思考长度能达到 1024 个 token 以上,题目特意选了一个需要较多推理的问题。结果显示,模型的思考在达到预算上限时突然停止[1]。
据此推断,预算的实现方式是:统计 <think> 之后输出的 token 数,达到上限时立刻强行截断,补上 </think>,让模型进入输出阶段[1]。这是一个从现象出发的推断,不是官方的实现说明。读者在自己的部署中,要以实际框架的文档为准。
一个直观的理解是:思考预算不是让模型「自己觉得想够了」,而是外部机制在计数,到了上限就替它收尾。所以预算设得太小,推理可能还没完成,回答会显得仓促。
模式切换靠的是对话模板
Qwen3 的思考模式切换,在 tokenizer_config.json 的 chat_template 字段里就能看到。把它拆开讲,其中最关键的是最后一段,也就是 add_generation_prompt 部分:
{%- if add_generation_prompt %}
{{- '<|im_start|>assistant\n' }}
{%- if enable_thinking is defined and enable_thinking is false %}
{{- '<think>\n\n</think>\n\n' }}
{%- endif %}
{%- endif %}这段代码的意思是:只要传入了 enable_thinking,并且它的值为 false,模板就会在 <|im_start|>assistant\n 后面补上 <think>\n\n</think>\n\n。空的思考块告诉模型「思考阶段已经结束」,于是模型直接进入输出阶段[1]。
作为对比,也给出了 QwQ 的模板。QwQ 的做法是在生成提示之后补上一个 <think>,强制模型进入思考阶段[1]:
{%- if add_generation_prompt %}
{{- '<|im_start|>assistant\n<think>\n\n' }}
{%- endif %}两者的区别在于:QwQ 用「打开」思考来控制,Qwen3 则用「放入一个空的思考块」来控制。Qwen3 不需要靠模型自己决定要不要想,只要模板里写好了一个已经结束的思考块,模型就直接回答[1]。这也解释了同一个模型为什么能切换两种模式:模型本身没有变,变的只是模板在生成提示里放了什么。
常见问题
**enable_thinking 设成 False 后,模型还会输出 <think> 吗?** 按照模板的写法,生成提示里已经包含一个空的 <think>\n\n</think>\n\n,模型会直接进入输出阶段[1]。
为什么思考被打断后回答不完整? 预算达到上限后思考会被强行截断,然后补上 </think>。如果预算太小,推理还没完成,回答就可能不完整[1]。
思考预算的粒度是多少? 网页版的粒度是 1024 个 token,最大是 38912 个 token[1]。
限制
这里有两个前提:一是分析来自网页版的表现和模板文件,二是预算的实现机制是推断。这里也没有给出具体的评测数字,所以文中「得分会随预算提高」只是描述趋势。如果你要在生产环境里依赖这些行为,应该以具体推理框架的参数说明和实际测试结果为准。
下一步
想动手试试不同的模式,可以参考本站关于 vLLM 部署 Qwen3 的实践文章,里面演示了 enable_thinking 和 --enable-reasoning 的用法。想了解 Qwen3 的整体设计,可以查看本站关于 Qwen3 的条目。
本文改编自 Datawhale 开源项目 self-llm 的《Qwen3 Think 解密》文章[1],原文以 Apache-2.0 许可证发布。
来源
- 1Qwen3 Think 解密Datawhale self-llm (Apache-2.0)
引用本页: Qwen3 思考模式怎么开关. TellWorld, https://www.tellworld.net/zh/practice/practice-qwen3-thinking-mode. 更新于 2026-11-14