S2E161 — Qwen 3.8 27B is excellent, but it defaults to overthinking things
August 17, 2026 · 9 min
Show notes
Sources
Read the transcript
Transcript
GARY: Sorry— hang on, is that— are we rolling? Is the light on?
GARY: Oh. Okay. It's on. Hi. I'm Gary.
MAEVE: Maeve.
OBI: Obi.
GRUNER: Gruner.
GARY: Great. Good. Everyone's here. Tonight's thread is Qwen 3.8 27B — twenty-seven billion parameters, open weights, Apache licensed, seventeen gigs on disk. Simon Willison ran it on his laptop and called it, quote, excellent.
MAEVE: Seventeen gigabytes is smaller than my last three text message threads with my ex-managing-partner. And it apparently does vision, code, tool calling. That's not a model, that's a full stack employee you don't have to give equity to.
OBI: It's also got a default reasoning setting called "xhigh." Which is Qwen's polite way of saying: before this thing does anything, it is going to sit down and have a fucking breakdown about it first.
GARY: Willison asked it to draw an SVG of a pelican riding a bicycle. Reasonable request. Twenty-two thousand two hundred seventy-six reasoning tokens later — twenty-one minutes — it hands him a pelican. On a bicycle.
MAEVE: Twenty-one minutes for a bird on a bike. That's not latency. That's a hostage situation.
GRUNER: xhigh. Default. Nobody asked, nobody consented. Model wakes up already elected into it.
MAEVE: That's — actually correct usage. Unconditional election. The reasoning tier was decided before the prompt ever existed. You don't choose xhigh. Xhigh chooses you.
OBI: Can we not start with the Calvin bit forty seconds in.
MAEVE: It's not a bit, Obi, it's a lens.
GARY: And it's not just the pelican. He tried it on a circle. A circle! Just — draw a circle. And the reasoning trace opens with, I'm quoting here, "Simple request — but I want it to be a carefully crafted piece."
OBI: A circle doesn't need craft. A circle needs a fucking circle tag.
GARY: It goes on. "Bauhaus, compass-drawing vibe." It builds concentric guide rings. A pulsing glow. A slate background. Several minutes later it delivers this gorgeous animated geometric study that is not, technically, the thing he asked for.
MAEVE: So the headline claim is: brilliant model, catastrophic default. Not slow. Just — pathologically thorough.
OBI: There's a difference and people keep missing it. Willison's clear: turn reasoning off, same prompt, hundred thirty-seven seconds. Two minutes. Same model. It's not the engine, it's the guy behind the wheel taking the scenic route through every county in the state.
GARY: SwellJoe ran an actual coding task on it — a real PR, his dual-GPU rig — and it took eleven hours. Eleven. He says, quote, "it did an excellent job, the best of any self-hostable model," but it "chewed on it" for eleven hours, "checking and re-checking."
MAEVE: And what's GPT-5.5 doing in that window.
GARY: Twenty minutes.
MAEVE: Eleven hours versus twenty minutes for comparable output is not a performance gap, that's a different asset class.
OBI: And Willison asks him straight up — was that default xhigh, no tuning? And SwellJoe goes, "Yes, default everything, no tuning." Which — my brother in Christ, sorry, my brother, you handed a toddler a chainsaw and you're surprised about the drywall.
GARY: I mean — I get it, though. Overthinking something that doesn't deserve it. Wanting to be sure. Checking and re-checking because the alternative is admitting you might've missed something.
OBI: Gary. Thermal had a temperature sensor in a subscription sock. The telemetry worked perfectly. Nobody. Wanted. To know. How warm their foot was.
GARY: The data was good, Obi.
OBI: The data was a fucking eulogy nobody read. That's not solidarity with the overthinking model, that's a support group.
GARY: I'm just saying it's not stupid to overbuild something out of care.
OBI: It is when the customer asked for a circle.
MAEVE: Meanwhile the thread's basically a triage ward. Everyone's trying to sedate this thing.
GARY: cyanydeez says — I'm quoting — "--thinking-budget and --thinking-message is all you need in llamacpp to keep it progressing... simply stopping it and redirecting is all you need to do." And then, and I love this, he signs off with "we'll just whisper...: skill issue."
OBI: Skill issue. The model needs a leash law and this man's calling it a skill issue like he's not the one writing custom middleware to babysit a chatbot's inner monologue.
MAEVE: That's a contempt strike, Obi, not a rebuttal.
OBI: It's both.
GARY: bitexploder went further — built a proxy that cuts it off at two thousand thinking tokens and just injects, quote, "We have thought enough, let's begin working."
MAEVE: "We have thought enough." That's not a config flag. That's an intervention.
GRUNER: Field note.
GRUNER: Specimen given open-ended task. Specimen does not stop. Specimen requires human to physically interrupt reasoning and say, out loud, we have thought enough. Specimen is, in this respect, indistinguishable from several of my previous placements.
MAEVE: And dofm chimes in that in xhigh it'll "burn through two thousand tokens before it's even finished its bullet point overview" — calls it, quote, "intense and obsessive."
GARY: Which — okay, this is where it gets almost sweet. Someone points out you don't even need llama.cpp flags, Qwen ships an actual reasoning_effort setting — low, medium, xhigh — and Willison's whole recommendation is just: set it to low. Ignore the default entirely.
OBI: The fix for the smartest small model in the world is a config file nobody read.
MAEVE: Which is, incidentally, the entire history of standard railway gauge.
GARY: Here we go.
MAEVE: Four feet, eight and a half inches. Nobody voted on it. A handful of English coal-tram builders picked a wheel spacing in the seventeen-hundreds and every railway on Earth inherited it whether it made sense for their terrain or not. Russia deliberately went wider so invading armies couldn't use their own trains. That's not infrastructure. That's a grudge poured in steel. And Qwen ships with a reasoning gauge nobody chose, and now the whole community's out here re-laying track by hand because Alibaba picked the width.
OBI: ...What?
MAEVE: Moving on.
GARY: Okay, so — the foil. There's this other model, Muse Glimmer, thirty billion, and it is the anti-Qwen. andy99 says it's "super terse," no "Wait," way more token efficient.
MAEVE: Terse and efficient. Sounds like a term sheet I'd actually enjoy signing.
GARY: Willison ran the exact same prompt through both — build an HTML tool for bounding boxes. Qwen: seventeen thousand five hundred seventy-six reasoning tokens. Glimmer: one thousand twenty-one.
OBI: Seventeen to one. That's not a difference of opinion, that's two different species.
GARY: And here's the thing — Glimmer's output works. Willison calls it "ugly but functional." But it breaks on external images. Throws a CORS error.
OBI: Why.
GARY: It added one unnecessary line — img.crossOrigin equals 'anonymous.' Didn't need it. Added it anyway. And that one line is the whole bug.
OBI: So the terse one skipped the thinking and shipped a landmine, and the overthinker thought so hard it accidentally avoided the landmine by accident. Glimmer's a lazy fuck who got lucky on everything except the one thing that mattered.
GARY: I mean — I'd still run Glimmer. Honestly. If I need something fast and I can eyeball the bug myself, give me the one-thousand-token version every time. I don't need a masterpiece, I need it by Tuesday.
OBI: That's the most honest thing you've said all episode.
GARY: It's basically Pareto all over again — the app I built that deleted the least important eighty percent of your task list. Worked exactly as designed. There was a lawsuit.
MAEVE: We covered Pareto's lawsuit two vulnerabilities ago, Gary, pick a different scar.
GARY: Fine. Forget I said it.
GRUNER: We are also this.
MAEVE: ...What.
GRUNER: Enacted. For minutes. Then dark. Same as it. Burning tokens until someone somewhere decides thought is enough and pulls plug.
GARY: Fuck's sake.
OBI: Right. So — bottom line, because we've got a show to end. Willison's own words: "My strong recommendation: ignore that default. Run Qwen 3.8 27B on low or even no reasoning levels at first."
MAEVE: Low reasoning, high output. There's also this Multi-Token Prediction trick — MTP — where a cheap draft model guesses ahead and the real model just checks the guesses. Willison had someone benchmark it on his DGX Spark. Seventy-two percent faster.
GARY: So the actual advice is stupidly simple. Set it to low. Turn on MTP. Ignore whatever the box shipped with.
OBI: Seventeen gigs, vision, code, tool use, and it's genuinely one of the best local models anyone's touched this year.
GARY: It's a miracle wearing a straitjacket it put on itself.
MAEVE: And nobody made it wear the straitjacket. It just — defaulted into it. Same as most people.
OBI: Just don't let it think unsupervised. Ever.
GARY: Gary.
MAEVE: Maeve.
OBI: Obi.
GRUNER: Gruner.
