What a boring Jinja snippet tells us about the new Qwen-3 model. The new Qwen-3 model by Qwen ships with a much more sophisticated chat template than its predecessors Qwen-2.5 and QwQ. You can easily view the chat template for a given model on the Hugging Face model page. Let's dive into the Qwen-3 chat template and see what we can learn!
What a boring Jinja snippet tells us about the new Qwen-3 model.
The new Qwen-3 model by Qwen ships with a much more sophisticated chat template than its predecessors Qwen-2.5 and QwQ. By taking a look at the differences in the Jinja template, we can find interesting insights into the new model.
A chat template defines how conversations between users and models are structured and formatted. The template acts as a translator, converting a human-readable conversation:
Qwen-3 introduces a " rolling checkpoint " by traversing the message list in reverse to find the latest user turn that wasn’t a tool call. For any assistant replies after that index it keeps the full <think> blocks; everything earlier is stripped out.
Here's an example of chain-of-thought preservation through tool calls with Qwen-3 and QwQ.
You can easily view the chat template for a given model on the Hugging Face model page.
Qwen-3 is unique in its ability to toggle reasoning via the enable_thinking flag. When set to false, the template inserts an empty <think></think> pair, telling the model to skip step‑by‑step thoughts. Earlier models baked the <think> tag into every generation, forcing chain‑of‑thought whether you wanted it or not.
If the enable_thinking is true, the model is able to decide whether to think or not.
The 4 Things Qwen-3’s Chat Template Teaches Us. Covered by Hugging Face on April 30, 2025.