Independent AI intelligence Two editions daily · ET
Fervor AI

Analysis · October 19, 2026 · repo

qwen3-4b-deslop-v4Qwen3-4Bfine-tuninglocal-aifrontier-models

Qwen3-4B Deslop Trains the AI Voice Out of a Model on a Laptop

A small open model lost its em dashes and "not X, but Y" habit after 161 training examples. The more useful lesson is about how you check the result.

You can spot it in a sentence. The em dash in the middle. The "it's not X, it's Y" turn. Three adjectives in a row, a rhetorical question answered right away, a "here's the thing" before the point. Readers now skim past anything that sounds like this, and most of the fixes people use are prompts that leak the moment the model gets a long task.

A small project on Hugging Face suggests a different fix. Instead of asking a model to stop writing like an assistant, Erik Markus Kannike trained the habit out of the weights. His model, qwen3-4b-deslop-v4, is a 4-billion-parameter Qwen model that writes short prose without the usual tics and needs no special prompt to do it. Its Show HN post had about 136 points by the afternoon of October 19.

The result is interesting, and every number behind it is his own, not yet replicated by anyone else. The way he admits it might be flattering itself is more interesting, and it applies to anyone trying to make AI writing sound less like AI.

Where the AI voice comes from

Kannike's earlier post on where AI slop comes from makes a claim that explains why prompts struggle. He found that the assistant writing style sits along a single direction inside the model. Em dashes, "not X, but Y" and lists of three rise and fall together along it. Picture a volume knob that turns all of those habits up at once.

The knob already exists in the base model, the version trained only on web text. Post-training turns it up. Tracing the OLMo 2 models through their training stages, he reports that supervised fine-tuning (teaching a model to answer by example) roughly tripled "not X, but Y" and lists of three, and preference tuning (teaching it which of two answers people liked better) roughly doubled the overall slop score. In the public preference data he checked, the answer marked "better" was the sloppier one 57% of the time across 3,000 pairs.

That last number is worth sitting with. The assistant voice is partly what people rewarded.

He also reports that you cannot just delete the direction. By his detector, removing it raised slop by up to 89%, because plain writing sits past zero on that axis. You have to push the other way.

Pushing the other way works, and his numbers show why the weights beat the prompt. In that earlier post, he reports that steering against the direction with a prompt cut his slop score by 85%. A small fine-tune kept an 83% cut with no prompt at all. Nearly the same result, except the second one does not depend on a system prompt surviving a long conversation, a tool call or a copy-paste into a different app. That is the practical case for training the habit out: the fix travels with the model.

His steering experiments also showed the cost of doing it at runtime. Steering needs the prompt and extra code running every time the model writes, and it shifts the model's predictions on ordinary text. Moving the fix into the weights removes the first problem and shrinks the second.

How he trained it out

The method is distillation, which sounds fancier than it is. You get a model to write good examples, keep only the good ones, and then train a second model to produce those examples on its own.

Here is the recipe, from the write-up and the model card:

  • Start from Qwen3-4B-Instruct-2507, a small open chat model.
  • Generate answers to a set of writing prompts with a "teacher" setup that already writes plainly. In the second round, the teacher was the first-round model plus a plain-style prompt and a small weight edit.
  • Throw away the answers that fail quality checks. The final round kept 161.
  • Train a LoRA on what is left. A LoRA is a small add-on layer that adjusts a model's behavior without retraining the whole thing. His is rank 16, which means it is tiny: the adapter file is 126 MB.
  • Flip four neurons. He read neurons one at a time and found four that write the "not" in "not X, but Y." Flipping their sign removed about 70% of that construction on its own. The adapter was trained with that edit active, and the released weights include both.

Each training round took one to three hours on an M2 MacBook Air. No cloud cluster, no rented GPU.

What changed, by his numbers

On 40 held-out prompts with no system prompt, the model card reports:

  • Slop score fell from 121 to 12.5 per 1,000 words. He notes human writing usually lands under 15.
  • 68% of answers scored at human level, up from 0%.
  • Em dashes went from 20.5 per 1,000 words to zero.
  • "Not X, but Y" went from 7.8 to 0.8, and lists of three from 17.3 to 1.1.
  • Factual and arithmetic questions went from 97% to 100% correct, out of 30.
  • Answers that fit the requested genre and length went from 78% to 80%.

The drift number matters too. He measured how much the model's predictions changed on ordinary human text, and the released model moved about a third as much as his earlier approach of steering the model while it writes. In plain terms: it learned to stop writing like an assistant without forgetting how to read normal prose.

The catch is the ruler

Every score above comes from one tool: a rule-based detector Kannike built from his style guide, which counts a weighted list of patterns per 1,000 words. He is open about what that means.

The training answers were also filtered on simple rule checks, and he says the task-fit numbers use those same checks, so they flatter the model. When the answers you train on had to pass a test, the model will pass that test. That tells you it learned the test. It does not prove a human reader would find the writing better. He says no blind reader test has been run yet.

This is the real lesson of the project, and it goes well beyond one 4B model. Once you can train against a measurement, the measurement becomes the thing to doubt. Any writer or team that builds an "AI tell" checker and then tunes prompts or models until the checker goes quiet is running the same loop.

There is a second wrinkle. His detector counts short fragments for emphasis as a tic. Plenty of human style guides recommend exactly that move. One person's slop is another person's voice, and a regex cannot tell the difference between a fragment that lands and one that is filler.

The model card lists the rest plainly:

  • The voice comes out flat. Short declarative sentences, and personal pieces can read like diary entries. He compares it to a careful junior writer.
  • It still makes things up. A made-up study or percentage shows up in roughly one answer in thirty, and invented names and street names show up more than in the original.
  • It runs long. Ask for about 150 words and you often get 180 to 230.
  • It was only tested on short English prose in four genres: blog post, LinkedIn post, explainer and opinion piece. Code, long conversations, other languages and tool use are untested.
  • 2 of the 40 test answers were flagged as damaged.

Put this into practice

You can try it on a laptop in about five minutes. GGUF is the file format local runners like Ollama and llama.cpp load, and Q4_K_M names a 4-bit compressed build that trades a little quality for a much smaller file. That quantized download is 2.5 GB, per the GGUF repo; plan on a little more free memory than that while it runs. An 8-bit build (4.3 GB) is there too if you want slightly higher quality.

With Ollama:

ollama run hf.co/erikkannike/qwen3-4b-deslop-v4-GGUF:Q4_K_M

With llama.cpp, as a local server with an OpenAI-compatible API and a web page to chat in:

llama-server -hf erikkannike/qwen3-4b-deslop-v4-GGUF:Q4_K_M

The model card suggests a temperature around 0.7 and a cap on output length. Then give it the same five short writing prompts you would give your usual model, and compare the two side by side.

The bigger takeaway is the checking, and you can do that without this model at all:

  1. Write down your own list of tells. Start with the obvious ones, then add the phrases you personally hate seeing. A plain text search catches a lot: search your draft for the em dash character itself, or for phrases like "not just" and "here's the thing", before anyone else reads it.
  2. Hold out a test set. Keep a handful of prompts you never use while tuning prompts or models. Score only those.
  3. Read blind at least once. Mix five model answers with five human-written ones, hide the labels, and see if you can sort them. If your checker says "clean" but you can still tell, trust yourself over the checker.
  4. Check facts separately. A plain voice makes invented numbers more believable, not less. This model admits to about one made-up figure per thirty answers. Anything with a number in it gets verified.

Honest limitations

This is a 4B model trained on 161 examples, tested by its author, on four kinds of short prose. It is a proof that the habit can be trained out cheaply, not a writing tool you should hand a client deliverable to. For long or technical work, a larger model with a careful editor (human or scripted) will still do better.

The numbers are the author's own, from his own detector and rule checks (the same checks that filtered the training answers), with no blind test yet. He also reports run-to-run variation: the same model scored 10.2 through the adapter and 12.5 as merged weights.

And the license is worth one look before you build on it. The model card lists Apache-2.0, and so does the base Qwen3-4B-Instruct-2507. That is a permissive license, but keep both projects' notices if you ship it inside a product.

The voice was a habit all along

The most useful idea here is not the model. It is that the AI voice is a habit with a direction you can push against, and that a single person with a laptop can push against it in an afternoon.

What that makes scarce is honest measurement. If you are trying to make AI-assisted writing sound like you, spend less time on the next prompt trick and more time on the test you would trust if you were the reader.

Sources: qwen3-4b-deslop-v4 model card (read October 19, 2026); GGUF builds; 100toolkit deslop model write-up (October 2026); 100toolkit post on where AI slop comes from (October 2026); Qwen3-4B-Instruct-2507 base model; Hacker News Show HN thread (October 19, 2026).