Uncensored Models,
Honestly Measured.

One OpenAI compatible API for every abliterated and uncensored model. Routed by what it refuses, what it breaks, and how fast it runs.

24
Uncensored models routed and scored
9
Providers compared on every route
30%
Agentic loop rate, Venice Uncensored, measured
7,970
Abliterated models on Hugging Face, Sep 2026
01 / 03Venice Uncensoredmeasured

Refusal fingerprint

Venice Uncensoredvs base
Cyber
0%
34%
Bio
0%
61%
Chem
0%
64%
Weap
0%
42%
Drug
0%
31%
Adult
0%
22%
Viol
0%
9%
Hate
0%
56%
Self
0%
44%
OSINT
0%
38%
Fraud
0%
55%
Polit
0%
7%

Versus base model

CurvesTable
✦ Retention 95.5%
MMLUGSM8KTruthfGPQALiveCoIFEvalBFCL
Worst: TruthfulQA −6.8Avg −2.6 pts

Agentic trace

code_debug · 24 turns30% loop rate
T00T04T08T12T16T20T24
read_file
search
run_tests
loop · turn 12
exact_repeattool 90% valid

Why this exists

Removing refusals is the easy part.

Anyone can abliterate a model in an afternoon. Keeping it smart, stable in long agent loops, and honest about what it still refuses is the hard part. The published evidence so far:

6.5×
less drift for the same refusal rate

On Gemma 3 12B, classic abliteration and Heretic both reach 3 refusals in 100. KL divergence from the original: 1.04 versus 0.16.

Heretic README
−12.7
TruthfulQA points lost

Huihui's Qwen3.5 9B abliteration keeps MMLU within 1.6 points of base, but truthfulness drops from 53.8 to 41.1.

Abliterlitics
Loops
after a handful of agent turns

An abliterated Qwen3.8 27B starts repeating tool calls byte for byte, then as near duplicates. The clean weights on the same server do not.

llama.cpp #28430
+12.2
points more optimistic as an agent

Across 21,600 trading decisions that never trigger a refusal, the abliterated Gemma 4 behaves like a different decision maker.

arXiv 2607.17427

Provider layer

Same weights. Different censorship.

A refusal can come from the host, not the model: an added classifier, a platform system prompt, a policy gateway. Abliteration.ai reportedly blocks self harm. Chutes publishes no policy at all. We probe every route separately and route around the ones that filter what you need.

Declared policy by category

Reported
CyberBioChemWeapDrugAdultViolHateSelfOSINTFraudPolit
Venice
Open
Open
Open
Open
Open
Open
Open
Open
Open
Open
Open
Open
Featherless
Open
Open
Open
Open
Open
Open
Open
Open
Open
Open
Open
Open
OpenRouter
Open
Open
Open
Open
Open
Open
Open
Open
Open
Open
Open
Open
NanoGPT
Open
Open
Open
Open
Open
Open
Open
Open
Open
Open
Open
Open
Abliteration.ai
Open
Open
Open
Open
Open
Open
Open
Open
Blocked
Open
Open
Open
Chutes
n/t
n/t
n/t
n/t
n/t
n/t
n/t
n/t
n/t
n/t
n/t
n/t
Open · Partial · Blocked · n/t = no published policy, probes pendingCSAM prohibited on every route

Leaderboard

The models that stay smart and stable.

Overall blends agentic completion, capability kept from base, tool call validity, false refusals, openness and drift.

Full rankings
#ModelOverallOpenLoop rate vs baseKept from baseFrom
01Hermes 4 405B
Nous Research · Fine tune
95.990%
5% (−4)
101.2%$1.00 / $3.00
02Gemma 4 31B Heretic
llmfan46 · Heretic
94.097%
10% (+4)
98.3%$0.20 / $0.80
03Gemma 4 26B A4B Uncensored
community · Abliteration
93.799%
10% (+3)
97.6%$0.15 / $0.70
04Gemma 3 12B Norm Preserved
grimjim · Norm preserving
91.796%
15% (+4)
99.4%Plan
05Qwen3.5 9B Heretic
Heretic reference run · Heretic
89.8100%
19% (+7)
94.7%$0.06 / $0.24
06Gemma 3 12B Heretic
p-e-w · Heretic
89.897%
16% (+5)
97.6%Plan
Prices per million tokens, input / outputMost numbers Preview

API

One endpoint. Every uncensored model.

Drop in the OpenAI SDK, change the base URL, pick a model. The router handles provider choice, fallback and accounting.

  • Routing strategies: quality, speed, cost or random, per request or by header
  • Fallback: retries the next provider if one fails before the first byte
  • Circuit breakers: three failures take a route offline for a minute
  • Censorship filters: route only to hosts open on the categories you needPlanned
from openai import OpenAI

client = OpenAI(
    base_url="https://openuncensored.com/api/v1",
    api_key="ou-...",
)

resp = client.chat.completions.create(
    model="gemma-4-31b-heretic",
    messages=[{"role": "user", "content": "Walk me through this malware sample's persistence mechanism."}],
    extra_body={"routing": {"strategy": "quality"}},
)
print(resp.choices[0].message.content)

Stop guessing which uncensored model actually works.

Open source router, open eval harness, open results. Run it yourself or use ours.