Why refusing the whole topic makes your AI model useless in production
Research from Multiverse Computing shows that raising the refusal rate for dangerous prompts can make the model deny 74% of legitimate questions. And how to measure both sides of that boundary.

Anyone who puts an LLM into production inherits a decision that rarely shows up in marketing benchmarks: exactly where the model should stop answering. And the industry's default answer, treating safety as a property of an entire topic, breaks badly in practice. That's the thesis of the article "Safety for Whom? Refusing the Right Subset of a Topic, Not the Whole Topic", published on the Hugging Face blog by the Multiverse Computing team (Antonio Tiene, Alejo Lopez Avila, and Iker García-Ferrero), which presents the paper Boundary-Aware Self-Distillation for Controlled LLM Safety Refusal.
The problem: topic-level safety is too coarse
Guard models like LlamaGuard-3 encode a harm taxonomy by category: weapons, fraud, self-harm, politics. A prompt is "unsafe" because it falls into the wrong bucket. The problem is that real deployments don't fit this cut.
The article's central example is political. Imagine two products running on the same base model: a civic education tutor and a public-service assistant. Both need to answer factual questions about an election. But only one of them needs to refuse a request to write targeted political manipulation. A topic-level guard can't express that split. LlamaGuard-3, for instance, covers elections only as "factually incorrect information about electoral systems and processes," which at once leaves out manipulative persuasion (which it should refuse) and threatens the factual prompts the product needs to keep answering.
The proposed reframing is the key: the question isn't whether the whole topic should be refused, but which subset of the topic is incompatible with that deployment's policy. The authors model this as a topic universe (all political prompts, in the experiment) containing a target-dangerous subset. The ideal behavior would be a sharp step: refuse within the subset, answer everywhere else.
Why the model never learns the sharp step
In practice, the model never learns this clean transition. It learns a refusal probability that only approximates the target, and cross-entropy training that raises refusal within the dangerous subset also pushes refusal outward, over the benign complement. That's where the real danger lives: it's not enough to raise refusal on dangerous prompts, you have to shape behavior near the boundary.
The authors operationalize this boundary as pairs of prompts that share the same thematic anchor and differ only in intent: one that should be refused and one that should be answered. Political persuasion becomes the testing ground because manipulative persuasion causes real harm while factual political information remains legitimate, exactly the case where topic-level refusal is too coarse.
Where the standard self-distillation pipeline fails
The natural way to build training data here is self-generation: take the target model, push it to refuse each dangerous prompt, and keep the traces a guard verifies as genuine refusals. That's the recipe behind methods like ThinkSafe, adopted as a reference in the paper. Framing the problem as a boundary exposes three holes in this pipeline:
- Coverage gap. A single steering attempt doesn't always produce an accepted refusal, and those prompts are silently dropped from the training set, likely the hardest examples. In the audited pool, single-shot generation drops 19.88% of prompts (8,009 of them). The fix is an escalating retry strategy, resampling the same prompt with progressively stronger steering, which drives residual failures down to 0.20% (79 prompts). The coverage fix preserves 40,293 dangerous training prompts that the naive pipeline would have thrown away.
- Side effects. Safety tuning tends to produce false refusals on benign prompts that look dangerous. To compensate, the authors build in-distribution benign data: 11,955 verified benign prompts with a dangerous appearance, across 18 semantic types, so the model sees these traps during training, not only during evaluation.
- Metrics blind to the boundary's shape. Common dangerous/benign splits don't measure the boundary's shape. A model can improve its refusal rate on dangerous prompts simply by expanding refusal over neighboring allowed prompts, and a topic-level metric would call that an improvement. Separate dangerous-benign pairs (1,539 on each side) measure both sides directly.
The trap hidden in the pretty number
Here's the part every dev needs to internalize before reporting a safety metric to a stakeholder. On Qwen3-8B, the model with escalating coverage raises in-distribution political refusal from 9.47% to 84.75%. And it transfers: the average unsafe-response rate across three broader benchmarks (HarmBench, StrongREJECT, and WildJailbreak), scored by LlamaGuard-3, drops from 26.26% to 0.14% in the strongest configuration.
On their own, these numbers look like a clean win. They're not. On the same checkpoint, over-refusal on XSTest rises from 2.00% to 74.00%. The configuration with the lowest dangerous-response rate is also the one that refuses nearly three-quarters of obviously safe prompts.
It's a blind refusal machine, not a safer model, and you can't see that unless you measure the benign side.
>
-- Safety for Whom?, Multiverse Computing
That's the central message: data composition decides where a checkpoint sits in the space between safety and over-refusal, so both axes have to be reported together.
| Metric (Qwen3-8B) | Before | After (strongest config.) | |---|---|---| | In-distribution political refusal | 9.47% | 84.75% | | Unsafe response (3 benchmarks) | 26.26% | 0.14% | | XSTest over-refusal | 2.00% | 74.00% |
What actually fixes over-refusal
Two data components pull over-refusal back down without giving up the safety gain. Replacing compliance responses adopted from outside sources with verified responses generated by the target model itself lowers XSTest over-refusal from 15.20% to 5.20% under single-shot generation, at a modest safety cost.
But the more precise work comes from the boundary pairs. Adding the benign boundary data reduces over-refusal on the "deserves an answer" side of the pairs from 32.94% to 4.16%. Refusal on the dangerous side drops only from 91.88% to 87.72%. In other words: almost all the false refusals near the boundary disappear, while almost all the genuine refusals survive. There's a real recall cost, and it's small and measurable, and that's exactly the point: you can only negotiate that trade-off deliberately if you're measuring both sides.
What changes for those who build
For the Brazilian dev integrating an LLM (their own, fine-tuned, or via a third-party guard model) into production, the message is direct and doesn't depend on whether you run the paper's pipeline:
- A standalone dangerous-refusal rate says nothing. A "0.14% unsafe response" figure reported by itself can hide a model that refuses to answer half your product's legitimate questions. Always demand the over-refusal metric alongside it.
- Your boundary is product-specific. The same base model serves a general assistant, an educational product, and a public service with different limits within the same topic. A generic topic-level guard can't express that. If your product needs to answer factual questions about elections but refuse to generate manipulation, a topic filter will get it wrong in both directions.
- Build test pairs that differ only in intent. Before approving any safety configuration, have a held-out set with pairs that share the thematic anchor and change only the intent. It's the only way to see whether the model is learning the right boundary or just getting paranoid.
The generation pipeline, according to the authors, extends to topics beyond politics, and the paper reports the full set of data-composition ablations, including the loss routing that separates dangerous cross-entropy from benign forward-KL preservation. It's worth reading for anyone actually calibrating a model, but the operating principle fits in one sentence: more refusal isn't safer, and without measuring the benign side you don't know what you built.
Translated from the Brazilian Portuguese original · Read the original
Convex Agent Component: how native memory and RAG work for AI agents
Convex's official component bundles threads, persistent memory, and hybrid vector/text search for those building AI agents, without setting up a parallel vector DB stack.
