Apply to my task
arXiv:2510.08731 ★ 78 Oct 9, 2025

Selective Reasoning: When to Turn On Chain of Thought in an LLM

Key result

The trick: Reasoning (step-by-step analysis) makes the model smarter at math. But on simple questions it just burns tokens for nothing. The Selective Reasoning method lets you turn on deep analysis only for complex tasks — math, logic, multi-step calculations. Classifying by intent determines the mode: facts → direct answer, complex task → chain of thought. Savings: -47% time, -48% tokens, +10% accuracy.

01

TL;DR

Selective Reasoning is a principle where classifying a request by intent determines the LLM's response strategy: a direct answer for facts and knowledge, chain of thought for math and logic. The classification happens automatically (in your infrastructure) or via a meta-prompt (in a chat).

Reasoning (CoT) is expensive — up to 150x more energy and tokens — yet it only pays off on math, logic and complex analysis. On questions about facts and knowledge it adds nothing and sometimes even hurts accuracy. And most LLM requests are exactly that: facts and simple tasks, where reasoning becomes pure overhead — the model overthinks a simple question.

IBM researchers built Semantic Router, a system that classifies requests by intent and decides whether reasoning is needed. If the request is about facts or knowledge, it gets a direct answer. If it's math, code or logic, it gets CoT. The result: +10.2% accuracy, -47% latency, -48% tokens compared with "always reason" or "never reason" modes.


Want this for your own case? Apply this study to your task: AI adapts its method to what you are working on and writes the prompt.

02

Method Blueprint

STEP 1: Classify the request → determine intent (knowledge vs reasoning)
STEP 2: Routing → choose a strategy (direct answer vs CoT)
STEP 3: Inference → execute with the chosen strategy

In infrastructure, every step is automatic. In a chat, you implement it manually via a meta-prompt or by splitting work across chats.


03

Example in Action

Task: A product manager at an Austin EdTech startup is evaluating a new feature — adaptive assignments for students. There's a mix of simple questions ("Which engagement metrics should we track?") and complex ones ("How do we measure the impact of adaptivity on retention, segmented by knowledge level?").

Prompt:

You are an assistant to a product manager in EdTech. Before answering a question:

1. Determine the task's complexity:
   - SIMPLE: a fact, a definition, a list of metrics, well-known information
   - COMPLEX: math, cause-and-effect, trade-offs, multi-step analysis

2. Choose the response mode:
   - For SIMPLE → a direct answer with no reasoning
   - For COMPLEX → chain of thought: break the problem into parts, analyze step by step, draw a conclusion

Question: How do we measure the impact of adaptive assignments on student retention, segmented by knowledge level?

Result: For the simple metrics question, the model will return a list (completion rate, time on task, progress speed) without unnecessary reasoning — fast and cheap. For the complex retention question, you get a step-by-step analysis: breaking retention down by segment (beginners/advanced), estimating the impact of adaptivity on each segment, calculating the net effect, accounting for confounding factors, and a final conclusion. Token savings on the simple requests, depth on the complex ones.


04

Why It Works

LLM weakness: By default, a model either always reasons (slow, expensive) or never does (losing accuracy on complex tasks). An LLM can't decide on its own when it needs depth and when it needs speed. The result: overpaying in tokens on simple questions or poor accuracy on complex ones.

LLM strength: Models are excellent at classifying intent and can follow conditional logic in a prompt. An LLM understands the difference between "the capital of France" (knowledge) and "optimizing a portfolio given correlations" (multi-step analysis). No fine-tuning required — just a clear instruction.

The workaround: By adding an explicit condition to the prompt — "if the task is complex, use CoT; if it's simple, answer directly" — we give the model a lever to pick its own strategy. The model classifies the request (its strength) and applies the right mode. It's like letting a driver choose between the highway and a back road depending on the destination.

Control levers:

  • Classification criteria: Spell out what counts as "complex" — add concrete patterns for your field to the prompt ("requires calculations," "many variables," "non-obvious relationships")
  • CoT depth: Specify the reasoning format — "a brief 3-step analysis" to save tokens or "a deep breakdown with justifications" for quality
  • Fallback strategy: Add "if you're unsure about the classification, use reasoning" as a safety net for edge cases

05

Prompt Template

You are a {role, e.g.: data analyst, developer assistant, marketer}.

Before answering a question:

1. Determine the task's complexity:
   - SIMPLE: a fact, a definition, a list, well-known information, a standard process
   - COMPLEX: math, logic, cause-and-effect, trade-offs, multi-step analysis, non-obvious patterns

2. Choose the response mode:
   - For SIMPLE → give a direct answer with no reasoning
   - For COMPLEX → use chain of thought:
     a) break the problem into parts
     b) analyze each part
     c) synthesize a conclusion

Question: {user_question}

What to fill in:

  • {role} — the context the model works in (analyst, developer, consultant, copywriter)
  • {user_question} — your request

Boosting the prompt: Add concrete classification examples for your field. For marketing, say: "SIMPLE — picking social media channels, COMPLEX — conversion attribution in a multi-touch funnel."


06

Limitations

⚠️ Manual overhead: In a chat, classification happens on every request — the model spends a few tokens figuring out the complexity. For one-off questions that's overhead. In the infrastructure solution (Semantic Router), classification lives in a separate fast module.

⚠️ A blurry line: Medium-difficulty tasks (for example, "Explain why rising inflation affects tech stocks") can be classified either way. The model may pick the wrong mode — using CoT where it isn't needed, or vice versa.

⚠️ No automation: Unlike Semantic Router (optimization built in at the infrastructure level), in a chat the user steers the logic through the prompt by hand. It works, but it takes awareness and tuning to your own tasks.


07

How They Tested It

The IBM team took 12,000 queries from the MMLU-Pro benchmark — 14 knowledge domains from math to history — and ran them through several modes: (1) always CoT, (2) never CoT, (3) Semantic Router with classification. They measured three metrics: answer accuracy, latency (time to answer) and token count.

The results were surprising: on knowledge tasks (history, business, economics), reasoning not only didn't help but sometimes hurt — the model overthought a simple question and got it wrong. Accuracy dropped by 5-10%. On math and physics, though, CoT delivered +20-30% accuracy — without a step-by-step breakdown the model couldn't cope.

The main insight: most requests (60-70%) don't need reasoning, and on those we overpay up to 150x in energy and nearly double in tokens. Applying CoT selectively saved 48% of tokens and cut latency in half, while overall accuracy rose by 10% — because the model stopped getting simple questions wrong by overthinking them.


08

Adaptations and Extrapolations

💡 Adaptation for personal chats:

Set up two permanent chats in Claude/ChatGPT for different kinds of tasks:

Chat 1: "Quick Answers"

System prompt: Answer briefly and to the point, with no extra reasoning.
You are a knowledge base: facts, definitions, lists, standard processes.

Chat 2: "Deep Analysis"

System prompt: Use chain of thought for every answer.
Break the problem into parts, analyze step by step, justify your conclusions.

Route tasks between the chats by hand. You save tokens on your subscription and get speed on simple questions.


🔧 Technique: Two-step request → explicit classification

Instead of automatic classification inside one prompt, split it into two requests for more precision:

Request 1 (classification):

Determine the task's complexity using these criteria:
- SIMPLE: a fact, a definition, a list, well-known information
- COMPLEX: requires calculations, causal analysis, trade-offs, multi-step logic

Task: {your task}

Answer with one word: SIMPLE or COMPLEX

Request 2a (if SIMPLE):

Answer the question briefly: {your task}

Request 2b (if COMPLEX):

Analyze the task step by step using chain of thought: {your task}

Downside: Two requests instead of one — overhead.
Upside: Fully transparent classification, fewer errors, and you can reuse the classification result for similar tasks.


09

Resources

When to Reason: Semantic Router for vLLM
Chen Wang, Yue Zhu, Xunzhuo Liu, Xiangxi Mo, Yuhan Liu, Junchen Jiang, Huamin Chen
IBM Research, UC Berkeley, University of Chicago, Red Hat
NeurIPS 2025 Workshop: MLForSys
Open-source: https://vllm-semantic-router.netlify.app/

Related work:

  • FrugalGPT (Chen, Zaharia, Zou, 2023) — cascade routing between models
  • RouteLLM (Ong et al., 2025) — model selection based on preference data
  • Chain-of-Thought Prompting (Wei et al., 2022) — the original CoT paper

Research digest

Key result

The trick: Reasoning (step-by-step analysis) makes the model smarter at math. But on simple questions it just burns tokens for nothing. The Selective Reasoning method lets you turn on deep analysis only for complex tasks — math, logic, multi-step calculations. Classifying by intent determines the mode: facts → direct answer, complex task → chain of thought. Savings: -47% time, -48% tokens, +10% accuracy.

Principle

The model gets a condition: first determine the task's complexity, then choose a response mode. Simple question (fact, definition, list) → a direct answer with no reasoning. Complex task (math, cause-and-effect, multi-step analysis) → chain of thought. The classification happens automatically — the model decides for itself what it's dealing with.

Why it works

LLMs are excellent at classifying intent. They understand the difference between "the capital of France" (fact) and "portfolio optimization" (analysis). But they can't choose their mode of work on their own. The model either always reasons (expensive) or never does (losing accuracy on complex tasks). An explicit condition in the prompt gives it a lever to choose for itself. CoT costs 150x more than a direct answer — on simple questions that's pure waste.

When to apply

Product analytics, tech support, assistants → anywhere with a mix of simple and complex requests. Especially useful when 90% of questions are simple (metrics, definitions, lists) but 10% need depth (calculations, trade-offs, multi-factor analysis). NOT a fit if all tasks are the same type — easier to set the mode once and for all.

Mini recipe

1. Add a condition to the system prompt: "Before answering, determine complexity: SIMPLE (fact, list, definition) → direct answer, COMPLEX (math, logic, trade-offs) → chain of thought" 2. Spell out criteria for your field: For marketing, say: "SIMPLE — social media channels, COMPLEX — conversion attribution in a multi-touch funnel" 3. Add a safety net: "If you're unsure about the classification, use reasoning" (protection for edge cases)

Examples

[BAD]: `Which metrics should we track for student engagement in an online course?` — if CoT is always on, the model will spend 300 tokens reasoning about an obvious list [GOOD]: `Determine the question's complexity: simple (fact/list) → direct answer, complex (calculations/analysis) → CoT. Question: Which engagement metrics should we track?` — the model classifies it as simple and returns a list (completion rate, time on task, progress speed) in 50 tokens with no unnecessary reasoning

In plain words

Here's the deal: modern models are like wildly gifted but completely disorganized employees. They have no sense of the value of time and resources: ask them what two plus two is, and they may start building a three-page chain of logic, then answer a quantum physics question with one sentence that gets everything wrong. The problem is that LLMs have no built-in Selective Reasoning switch. The model either overthinks the simple stuff or breezes past the hard stuff, because it can't choose its own mode of work.

It's like hiring a math professor as a delivery guy. When all he needs to do is carry a box from point A to point B, he starts calculating air resistance, the curvature of the pavement and the optimal angle of his torso. Sure, he's trying hard, but the pizza is cold and you're paying him a PhD's hourly rate. A semantic router solves exactly this problem: it sits at the entrance and immediately decides whether this calls for full brainpower or whether it's enough to just pull a ready fact from memory.

It works by strictly sorting requests into two camps: knowledge and reasoning. If you ask "what kinds of engagement metrics are there," the router knows it's pure knowledge and tells the model to answer right away, no deliberation. But when a task like "calculate the feature's impact on retention, accounting for segmentation" comes in, chain-of-thought mode kicks in. The model reasons step by step, spends more time and tokens, but delivers a solid result instead of back-of-the-napkin hallucinations.

Although the method was tested on tasks for product managers and developers, the principle is universal for any business that uses AI. If you run customer support, you don't need the bot to "ponder" for five minutes over a question about office hours, but you definitely want deep logic when a customer asks for a personalized plan to get an insurance refund. Automatic intent classification saves a ton of money on tokens and, more importantly, keeps the model from turning into a slow, expensive idiot.

Bottom line: stop feeding the model expensive prompts where they aren't needed. The study's key takeaway: efficiency isn't about the model being smart, it's about the model being smart at the right time. A semantic router lets you squeeze the most out of your infrastructure without choosing between speed and quality. Either you teach your system to filter the noise at the door, or you keep burning budget on AI "reasoning" about the obvious.

AI lab assistant

Apply this study to your task

Describe what you're working on. AI takes the method and the measured results from this paper and adapts them to your case, or writes a ready prompt built on them.

Based on Selective Reasoning: When to Turn On Chain of Thought in an LLM arXiv:2510.08731

Sign in to apply this study New accounts get 50 free credits.