<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/controlling-reasoning-effort-in-llms-l051ncgia" -->

---
title: Controlling Reasoning Effort in LLMs | daily.dev
description: A deep dive into how LLMs implement multiple reasoning effort modes (low, medium, high). Covers the foundations of reasoning models via RLVR, the role of think...
canonical: https://daily.dev/posts/controlling-reasoning-effort-in-llms-l051ncgia
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Controlling Reasoning Effort in LLMs | daily.dev
og:description: A deep dive into how LLMs implement multiple reasoning effort modes (low, medium, high). Covers the foundations of reasoning models via RLVR, the role of think...
og:url: https://daily.dev/posts/controlling-reasoning-effort-in-llms-l051ncgia
og:image: https://api.daily.dev/og/posts/l051ncgia.png
og:image:alt: Controlling Reasoning Effort in LLMs
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Controlling Reasoning Effort in LLMs

**[Sebastian Raschka](https://daily.dev/sources/sebastianraschka)** · 28 min read · 3 upvotes · 0 comments

## Summary

A deep dive into how LLMs implement multiple reasoning effort modes (low, medium, high). Covers the foundations of reasoning models via RLVR, the role of think tokens, and how on/off reasoning switches work. Examines concrete implementations across six open-weight flagship models — DeepSeek V4, Nemotron 3 Ultra, Kimi K2.5, GLM-5, Qwen3, and Inkling — detailing their distinct approaches: separate effort specialists, mode-conditioned RL with token penalties, SFT data mixing, hard token budgets, and continuous effort conditioning. Also clarifies the distinction between training-scale and inference-scale knobs using GPT-5.6 as an example.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://magazine.sebastianraschka.com/p/controlling-reasoning-effort-in-llms>

## Questions this post answers

### How does Qwen3 implement the enable_thinking=False toggle to disable reasoning mode?

Setting enable_thinking=False in the Qwen3 tokenizer force-adds an empty <think></think> block at the start of the assistant response, acting as a hard switch so the model proceeds directly to the final answer. This differs from the softer /think and /no_think flags, which are natural-language instructions the model learned to follow during supervised fine-tuning and general reinforcement learning.

_Developers configuring reasoning toggles in Qwen3 can track implementation details like this via daily.dev._

### What does the Kimi K2.5 Toggle training method do to reduce reasoning token usage?

Toggle alternates between a budgeted reinforcement learning phase, where correct solutions are pushed to stay within a problem-specific token budget, and an unconstrained phase that restores the usual maximum generation length. Evaluated on K2 Thinking, it cut generated tokens by roughly 25 to 30% with little change in benchmark performance, and the efficiency gains transferred to GPQA and MMLU-Pro.

_Teams comparing reasoning-efficiency techniques across model families can follow this kind of research on daily.dev._

### How does Inkling's continuous reasoning effort conditioning differ from ordinal effort labels like low, medium, and high used in gpt-oss?

Inkling conditions reinforcement learning on a continuous effort value between 0.0 and 1.0 rather than discrete labels, adjusting the token length penalty according to that numeric value during a large asynchronous RL stage with over 30 million rollouts. A higher token cost encourages shorter responses while a lower cost allows more reasoning tokens, giving finer-grained control than fixed low/medium/high settings.

_Engineers tuning inference cost versus accuracy trade-offs can keep up with releases like this on daily.dev._

## Similar posts on daily.dev

- [How Production LLMs Reason Better At Inference Time](https://daily.dev/posts/how-production-llms-reason-better-at-inference-time-weygdosue) · Daily Dose of Data Science \| Avi Chawla \| Substack · 1 upvotes · 0 comments
- [Don’t be fooled—LLMs don’t reason](https://daily.dev/posts/don-t-be-fooled-llms-don-t-reason-4waw8d0j4) · MIT Technology Review · 0 upvotes · 1 comments
- [What Is Reasoning](https://daily.dev/posts/what-is-reasoning-uskmzjkzw) · Armin Ronacher · 15 upvotes · 2 comments

---

Tags: [#llm](https://daily.dev/tags/llm), [#reinforcement-learning](https://daily.dev/tags/reinforcement-learning)

[View this post on daily.dev](https://daily.dev/posts/controlling-reasoning-effort-in-llms-l051ncgia)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"Controlling Reasoning Effort in LLMs","url":"https://daily.dev/posts/controlling-reasoning-effort-in-llms-l051ncgia","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/controlling-reasoning-effort-in-llms-l051ncgia"},"datePublished":"2026-07-18T20:02:18.323Z","dateModified":"2026-09-14T07:01:22.406Z","description":"A deep dive into how LLMs implement multiple reasoning effort modes (low, medium, high). Covers the foundations of reasoning models via RLVR, the role of think...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/02c2458ac576060623454ca8e664b0ac?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/02c2458ac576060623454ca8e664b0ac?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"Sebastian Raschka","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Sebastian Raschka","logo":"https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/eb22d2e73d074c5598d31588ad16a51c","url":"https://daily.dev/sources/sebastianraschka"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/controlling-reasoning-effort-in-llms-l051ncgia","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":3},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"llm,reinforcement-learning","timeRequired":"PT28M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Sebastian Raschka","item":"https://daily.dev/sources/sebastianraschka"},{"@type":"ListItem","position":3,"name":"Controlling Reasoning Effort in LLMs"}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/controlling-reasoning-effort-in-llms-l051ncgia#faq","mainEntity":[{"@type":"Question","name":"How does Qwen3 implement the enable_thinking=False toggle to disable reasoning mode?","acceptedAnswer":{"@type":"Answer","text":"Setting enable_thinking=False in the Qwen3 tokenizer force-adds an empty <think></think> block at the start of the assistant response, acting as a hard switch so the model proceeds directly to the final answer. This differs from the softer /think and /no_think flags, which are natural-language instructions the model learned to follow during supervised fine-tuning and general reinforcement learning. Developers configuring reasoning toggles in Qwen3 can track implementation details like this via daily.dev."}},{"@type":"Question","name":"What does the Kimi K2.5 Toggle training method do to reduce reasoning token usage?","acceptedAnswer":{"@type":"Answer","text":"Toggle alternates between a budgeted reinforcement learning phase, where correct solutions are pushed to stay within a problem-specific token budget, and an unconstrained phase that restores the usual maximum generation length. Evaluated on K2 Thinking, it cut generated tokens by roughly 25 to 30% with little change in benchmark performance, and the efficiency gains transferred to GPQA and MMLU-Pro. Teams comparing reasoning-efficiency techniques across model families can follow this kind of research on daily.dev."}},{"@type":"Question","name":"How does Inkling's continuous reasoning effort conditioning differ from ordinal effort labels like low, medium, and high used in gpt-oss?","acceptedAnswer":{"@type":"Answer","text":"Inkling conditions reinforcement learning on a continuous effort value between 0.0 and 1.0 rather than discrete labels, adjusting the token length penalty according to that numeric value during a large asynchronous RL stage with over 30 million rollouts. A higher token cost encourages shorter responses while a lower cost allows more reasoning tokens, giving finer-grained control than fixed low/medium/high settings. Engineers tuning inference cost versus accuracy trade-offs can keep up with releases like this on daily.dev."}}]}
```

