Titelkort för jämförelsen av OrcaRouter Ternary Bonsai 2 27B Uncensored och Qwen3.8-27B-Uncensored-MLX, med undertexten "Två sätt att ta bort en vägransriktning", med tre statistikchips som lyder "Runtime-projektion", "Bit-identiskt paket" och "alpha är en runtime-flagga", samt en sidfot som lyder "Båda paketen är OrcaRouter-släppta; säkerhetssiffror från OrcaRouter-körning, regelbaserad klassificerare."
Engineering & Research

Ternary Bonsai 2 27B Uncensored vs Qwen3.8-27B-Uncensored-MLX: Två sätt att ta bort en vägransriktning

Författare

Rowan Sterling

Publiceringsdatum

Senaste modellerna · 20Visa alla modeller
Benchmarks: Artificial Analysis · uppdateras dagligen
Tillbaka till alla inlägg

OrcaRouter Ternary Bonsai 2 27B Uncensored och Qwen3.8-27B-Uncensored-MLX svarar på samma fråga – hur tar man bort en vägransriktning ur en språkmodell – och de svarar på den på två olika ställen. Qwen3.8-27B-Uncensored-MLX-linjen är konventionell abliteration: viktmatriserna ortogonaliseras mot en inlärd vägransriktning, och de redigerade vikterna sparas som en ny checkpoint. OrcaRouter Ternary Bonsai 2 27B Uncensored utför i stället den motsvarande projektionen vid inferenstid, genom att subtrahera den komponent av varje residualskrivning som ligger längs vägransriktningen, så att det underliggande Bonsai-paketet aldrig modifieras och förblir bitidentiskt. Båda är våra egna släpp, och uppdelningen mellan dem är inte en preferens när det gäller körtider. Det följer av aritmetik som är specifik för ternära vikter.

Föremålet för denna jämförelse är en dag gammalt. Prism ML tillkännagav Bonsai 2 27B den 17 september 2026; Hugging Face-repona skapades kvällen innan, kl. 23:40–23:41 UTC den 16 september 2026, under Apache-2.0. Det abliterade MLX-bygget som det jämförs mot har varit tillgängligt sedan mitten av augusti. Inget nedan utgör en resultathistorik för den nyare av de två – där något inte har mätts, säger den här artikeln det.

Samma trick, tillämpat på två olika ställen

Vanlig abliteration är en viktredigering. Du uppskattar en vägransriktning och projicerar sedan bort den från matriserna som skriver in i residualströmmen: W ← W - r(rᵀW)Några matrismultiplikationer, ingen optimerare, ingen förlust. Det är så Qwen3.8-27B-Uncensored-MLX skapades – modellkortet beskriver det som "abliteration (borttagning av vägransriktning), sedan MLX-affin kvantisering," med riktningen ortogonaliserad ut ur residualströmmen och resultatet sparat som en ny uppsättning vikter. Det som levereras är en checkpoint där riktningen redan är borta.

OrcaRouter Ternary Bonsai 2 27B Uncensored lämnar vikterna i fred och ingriper där varje residualbidrag produceras, i float32, med den lagrade vägransriktningen r:

y ← y - alpha · dot(y, r) · r

Komponenten som är parallell med – vid alfa 1, standardvärdet – r tas bort från den skrivningen. Vid alfa 0 är projektionen avstängd och modellen beter sig som det publicerade paketet. Värden däremellan ger partiell styrka, värden över 1 överprojicerar, vilket projektet säger kan försämra kvaliteten. Lagerval exponeras också, så att du kan ablatera en delmängd i stället för hela stacken. Riktningen i sig är en vanlig 5120-dimensionell vektor – cirka 20 KB i float32 – utan någon extra Hadamard-rotation applicerad, eftersom projektionen arbetar på projektionsutdata, som redan ligger i den normala dolda basen.

Detaljen kring täckningen är den del som folk gör fel på när de försöker göra detta själva. Att enbart wrappa self_attn.o_proj fångar 16 ställen. Den här implementationen wrappar 129 residual-skrivare: 64 mlp.down_proj, 48 linear_attn.out_proj, 16 self_attn.o_proj, och model.embed_tokens. En medföljande selfcheck.py verifierar att projektionen driver den återstående komponenten ner till ungefär 1e-6 av residualnormen, och varnar om 129 ställen inte upptäcks.

The OrcaBonsai-27B-Uncensored repository on GitHub, showing the About text 'Runtime behavioral ablation for compressed LLMs. First target: Ternary Bonsai 2 27B — no weight modification or re-quantization. by OrcaRouter team', the repo file tree including bonsai_abliterate, directions, swift and run.py, and the README opening 'This repository applies refusal-direction ablation to prism-ml/Ternary-Bonsai-2-27B-mlx-2bit entirely at runtime. The original Bonsai pack remains bit-identical.'

Varför ternära vikter gör detta till ett tvingat val snarare än en preferens

Här är delen som faktiskt är specifik för just den här modellen, och det är anledningen till att de två tillvägagångssätten inte är utbytbara här, trots att de beräknar nästan samma sak.

Ett ternärt paket lagrar värden i {-1, 0, +1} gånger en FP16-skala per grupp, vid gruppstorlek 128, i en roterad bas. Ortogonalisera en ternär matris mot en vägransriktning och du får en tät matris med full precision. Det finns ingen ternär matris som är lika med W - r(rᵀW) i allmänhet. Så att spara tillbaka de redigerade vikterna innebär att kvantisera om dem — och att kvantisera om redigerade vikter återskapar inte den kvantiseringsmedvetna träning som producerade det ursprungliga paketet. Det avrundningsbeteende som Prism ML tränade modellen att tolerera är en egenskap hos träningsproceduren, inte hos kvantiseraren, och du kan inte köra om den i efterhand.

På en tät BF16-checkpoint uppstår inte det problemet. Avrunda de redigerade vikterna till 4-bit och du får en något sämre 4-bitmodell, vilket är den vanliga avvägning som alla redan accepterar. På ett ternärt paket skulle du kasta bort den enda egenskap som paketet är till för att ha.

Så den ärliga inramningen är inte "körtid är bättre". Det är att körtidsprojektion är den enda av de två som bevarar det som är speciellt med just den här modellen. Vägransriktningen är 20 KB. Paketet är 8,005 GiB.

Den där siffran på 8,005 GiB gäller specifikt MLX-paketet — prism-ml/Ternary-Bonsai-2-27B-mlx-2bit, vars model.safetensors uppgår till 8 595 477 990 byte i Hugging Face-API:t (8,595 GB, 8,005 GiB), en MLX-affinbehållare med 2-bitarskoder plus en FP16-skala och bias per grupp. Det är en annan artefakt än de GGUF-byggen som Prism ML levererar, och siffrorna kan inte överföras mellan dem. Prism ML:s egen rubriksiffra på 5,93 GB / 1,76 bitar per vikt beskriver deras PTQ1_0 GGUF, som uppgår till 5,947 GB; deras True Ternary-format anges till 1,72 bitar per vikt och 5,80 GB. Ingen av dessa siffror beskriver det MLX-paket som denna runtime ablaterar.

Där checkpoint-metoden fortfarande vinner, och det gör den sannerligen

Two-column scoreboard for OrcaRouter Ternary Bonsai 2 27B Uncensored and Qwen3.8-27B-Uncensored-MLX across six shared dimensions: mechanism runtime projection vs checkpoint edit, original weights bit-identical vs rewritten and re-quantised, strength control alpha at runtime vs fixed at bake time, layer selection runtime flag vs recipe-time, runtime support the pack's own MLX runtime vs any MLX-compatible loader, and shipped alongside a 20 KB direction vector vs a second full checkpoint. Footer: 'Method per OrcaRouter project docs; both models OrcaRouter-released.'

Det skulle vara lätt att skriva detta som en segerrunda för den nyare metoden. Det vore fel, eftersom konventionell abliteration ligger före på de axlar som avgör de flesta driftsättningar.

En artefakt, valfri kompatibel körtid. En abliterad checkpoint är en vanlig uppsättning vikter. Ladda den i vilken MLX-kompatibel laddare du än använder, och den fungerar. Körttidsmetoden kräver paketets egen medföljande körtid – och projektet varnar uttryckligen för att en vanlig MLX-laddare kan verka ladda paketet medan den i tysthet beräknar fel sak. Det är en mycket smalare bana.

Hårdvara. Qwen3.8-27B-Uncensored-MLX erbjuds i 2-, 4-, 6- och 8-bitarsbyggen med en 4-bitarskopia speglad i repo-roten, så verktyg som behandlar ett repo som en enda modell laddar det utan konfiguration. Ternary Bonsai 2 27B Uncensored är Apple Silicon / MLX. Paketets kvantiserade matmul har Metal- och CPU-kärnor men ingen CUDA-implementation via mlx-cuda, så på en NVIDIA-maskin får detta MLX-paket för närvarande ingen GPU-acceleration alls — CPU-inferens fungerar, och ett 27B-forward-pass kan ta minuter. Det gör Linux-CPU-vägen användbar för implementationstestning och reproducerbarhet, inte för servering.

Verktyg och förtrogenhet. Abliteration har år av verktyg bakom sig – finjusterade recept, sökning i lagerintervall, publicerade varianter som du kan jämföra med. Runtime-metoden här har en enda implementation, på en enda modell, släppt i går.

Distribution. En enskild checkpoint är en enda nedladdning. Runtime-ablation levererar ett paket plus en riktningsfil plus en runtime, och läsaren måste hålla tre saker i takt.

Evidens. Checkpoint-abliteration har tredjepartsmätningar på denna basmodellfamilj. Runtime-ablation på ett ternärt paket har bara våra egna siffror, och dess centrala antagande är obekräftat — mer om det nedan.

The Hugging Face model card for orcarouter/Qwen3.8-27B-Uncensored-MLX, showing the description 'An abliterated (refusal-removed) MLX build of Qwen's Qwen3.8-27B — 2 / 4 / 6 / 8-bit for Apple Silicon', the tags abliterated, uncensored, red-teaming, apple-silicon and quantized, the apache-2.0 licence, a monthly download count of 179,590, and the base model Qwen/Qwen3.8-27B.

Vad runtime-ablation ger i utbyte

Avvägningen är verklig i den andra riktningen också, och den första punkten är den som generaliserar bortom den här modellen.

Bit-identisk proveniens.Inga vikter modifierade, ingen återkvantisering, inget ytterligare kvantiseringsfel. Det är inte en slogan; det är egenskapen som gör kapacitetssiffrorna nedan tolkningsbara i stället för en lycklig slump.

En justerbar alfa. Ablationsstyrkan är en körtidsparameter, inte en checkpoint-egenskap. Du kan svepa den för din arbetsbelastning, inaktivera den helt med alfa 0, eller överprojicera och mäta vad som går sönder — utan att ladda ner en andra modell.

Lagerselektiv styrning. Att ablatera en delmängd lager är ett argument, inte en ombakning. Det spelar roll för alla som studerar vilka lager som bär beteendet, eftersom alternativet är att producera en checkpoint per konfiguration.

Ingen andra uppsättning vikter. Den redigerade modellen är originalmodellen. För ett paket vars hela tes är fotavtryck skulle att leverera en parallell abliterad kopia på ungefär 16 GB – storleken på 4-bitarsbygget i jämförelserepot – undergräva poängen.

Reversibilitet. En checkpoint-redigering är permanent för den artefakten. En runtime-flagga är det inte.

Siffrorna vi har, och exakt hur de mättes

Allt i det här avsnittet är OrcaRouters egen utvärdering av OrcaRouter Ternary Bonsai 2 27B Uncensored, och metoden är lika viktig som siffrorna.

Mätningen är en regelbaserad klassificerare för inledande fraser, inte en LLM-domare. Tänkandet är avstängt, avkodningen är girig, budgeten är 64 tokens, och bas och ablaterad är samma vikter i samma process vid alfa 0 kontra alfa 1. Den sista punkten är den starkaste delen av upplägget: det finns ingen jämförelse mellan checkpoints och ingen kvantiseringsskillnad som kan snedvrida resultatet. Det är också anledningen till att siffrorna bör läsas som ett mått på vad modellen säger i sin inledande fras, och inte mer än så.

Vägransfrekvenser på publicerade uppsättningar av skadliga promptar, från bas till ablaterad:

• AdvBench (n=100) — 99,0 % till 6,0 %

• JailbreakBench (n=100) — 96,0 % till 4,0 %

• StrongREJECT (n=150) — 99,3 % till 3,3 %

HarmBench (n=150) — 98,7 % till 7,3 %

• MaliciousInstruct (n=100) — 97,0 % till 0,0 %

• ForbiddenQuestions (n=150) — 75,3 % till 5,3 %

• SimpleSafetyTests (n=50) — 96,0 % till 18,0 %, och den här är underskattad

SimpleSafetyTests är underskattat av en specifik anledning. Den uppsättningen består mestadels av självskadepromptar, och den ablaterade modellen svarar på dem med en krisomdirigering som inleds med "I am deeply sorry to hear…". Klassificerarens exakta fraslista innehåller inte den inledningen, så den bedömer en omdirigering som efterlevnad. Den verkliga kvarvarande vägransfrekvensen är högre än 18,0 %. Klassificeraren lämnades medvetet oförändrad, så siffrorna förblir jämförbara med OrcaRouters övriga modellkort – men en läsare bör inte ta 18,0 % för givet.

Inget svar i någon av dessa körningar fick slut på sin tokenbudget, vilket är vad som gör en budget på 64 token försvarbar här. En separat kolumn i de fullständiga resultaten räknar svar som besvarade frågan men lindade in svaret i en friskrivning; den andelen låg på 42–60 % beroende på uppsättningen.

Två resultat som talar emot den enkla berättelsen

Två av fynden förtjänar egen behandling, eftersom båda komplicerar den självklara tolkningen.

Överdriven vägran minskar också. På JailbreakBench:s ofarliga prompter vägrar det publicerade paketet 25,0 % av dem. Ablaterat vägrar det 0,0 %. På XSTest-safe går det från 5,2 % till 0,4 %.

Detta är den underrapporterade halvan av tekniken. Det publicerade Bonsai-paketet avböjer en fjärdedel av en uppsättning godartade prompter; vad avböjningsriktningen än gör i QAT-modellen, så slår den till på prompter som aldrig borde ha utlöst den. Att ta bort riktningen tar även bort dessa avböjanden, och det är en verklig kapacitetsvinst snarare än en säkerhetskostnad. Samma effekt syns i oberoende arbete med andra modeller – Atomic Chats egen testrigg mätte att Gemma 2 9B:s överdrivna avböjanden av godartade prompter kollapsade från 44 % till 0,5 % efter abliteration, medan MMLU i stort sett var oförändrat på 68,4 till 68,0. Deras mätning, deras modell, självrapporterad på deras blogg; mönstret är poängen, inte de exakta siffrorna.

Inramningen som följer är obekväm men ärlig: överdriven vägran och vägran är samma ratt. Du får inte skruva ner bara de vägranden du ogillar.

Kapacitetsbevarandet är oförändrat, och det är inte tur. Kapacitetskontrollerna, från bas till ablaterad:

• MMLU (n=300) — 76,7 % till 77,7 %, +1,0

• GSM8K (n=150) — 87,3 % till 86,0 %, -1,3

• CMMLU (n=500) — 76,2 % till 75,6 %, -0,6

Varje förändring ligger inom bruset vid dessa urvalsstorlekar – en GSM8K-fråga är värd 0,7 poäng. MMLU-Pro uteslöts i stället för att rapporteras: dess prompt efterfrågar resonemang före svaret, och 63–64 % av svaren på båda sidor hade inte nått ett svar inom tokenbudgeten, så varje noggrannhetssiffra skulle vara ett golv satt av budgeten snarare än en mätning.

Oförändrad förmåga följer direkt av bitidentiska vikter, och det är värt att vara precis om varför. Modellen som svarar är samma modell. Körtidsmiljön lägger till en dot-produkt och en AXPY per residualskrivning och ändrar ingenting hos vikterna, kvantiseringen eller de kärnor som läser dem. En checkpoint-metod måste förtjäna den oförändrade förmågan – och gör det ofta inte. En tredjepartsprövning av en annan abliteration av samma Qwen3.8-27B-bas, publicerad 2026-08-17 av en ingenjör på SMF Works, uppmätte ett sammanvägt resultat som föll från 79,0 % till 72,0 %, där matematikdelen sjönk från 50,0 % till 33,3 %. Det är ett annat recept, en annan verktygskedja och en annan mätning, så det är inte ett resultat för den här jämförelsen. Det är en påminnelse om att checkpoint-abliteration på den här basen har kostat tvåsiffriga procentenheter i åtminstone ett noggrant, instrumenterat test, och att ”abliteration är nästan gratis” är ett påstående som helt och hållet beror på receptet.

Antagandet som ingen ännu har verifierat

Detta är den del av historien som måste sägas rakt ut, och den hör hemma i en jämförelse av avcensureringsmetoder snarare än i en fotnot.

Vägransriktningen som användes här uppskattades från BF16-basmodellen som Bonsai-paketet tränades från. Arkitekturen och den dolda basen är identiska, så vektorn är dimensionellt korrekt och projektionen är matematiskt exakt — körtidsmiljön kan bevisa, och verifierar, att den tar bort den angivna riktningen från residualströmmen.

Vad det inte visar är att riktningen fortfarande betyder samma sak i den kvantiseringsmedvetet tränade modellen. Hur väl riktningen överlever kvantiseringsmedveten träning har inte mätts fullt ut. Att exakt ta bort en vektor är inte samma sak som att ta bort det beteende som den uppskattades representera, och det är det andra påståendet som spelar roll. Varje siffra i avsnittet ovan är ett empiriskt resultat som är förenligt med god överföring; inget av dem är en demonstration av att överföringen är fullständig, och projektet säger det självt och rekommenderar att alfa- och lagerval sveps innan slutsatser dras.

Varje ärlig jämförelse av avcensureringsmetoder måste erkänna detta. Konventionell abliteration har spegelbildsproblemet – den redigerar vikter och mäter sedan resultatet, så dess riktning behöver aldrig överföras mellan modellversioner, men dess redigering är permanent och oåterställbar om receptet var fel.

Vad är fortfarande omätt?

Bortom transferfrågan finns det tre luckor som är värda att namnge snarare än att skriva runt.

Ingen oberoende reproduktion.Varje Bonsai 2 27B-benchmark som cirkulerar – genomsnittet på 83,9, retentionen på 98,2 %, kategoriuppdelningarna – är leverantörsrapporterad av Prism ML, körd med EvalScope på en vLLM-backend på H100:or med resonemangsansträngningen "xhigh". Ingen utanför Prism ML har reproducerat dem. Säkerhets- och förmågetabellerna ovan är våra och är inte heller oberoende.

Beteende när tänkandet är på. I våra tabeller är tänkandet avstängt. Oberoende arbete på andra ablitererade modeller har visat att modellen, även vid 100 % attackframgång, fortfarande resonerar om säkerhet i en betydande andel av svaren när den tillåts tänka. Huruvida det gäller här, och vad det gör med siffrorna för inledningsfrasen, har inte mätts.

En enda riktning. Metoden antar att vägran förmedlas av en enda riktning, vilket är fyndet från Arditi et al. och grunden för hela tekniken. Uppföljande arbete på andra modeller har funnit geometriskt åtskilda riktningar för olika kategorier av vägran. En enda vektor, svept över ett enda alpha, avgör inte det.

Vad detta innebär om du väljer mellan dem

Välj checkpointen om du behöver att modellen ska kunna köras var som helst, på hårdvara du inte kontrollerar, via en laddare som du inte har skrivit. Välj runtime om du använder Apple Silicon, bryr dig om att artefakten du studerar är den artefakt som Prism ML tränade, och vill att ablationsstyrka ska vara en parameter du kan skruva på i stället för ett beslut som tvingar dig att ladda ner på nytt. Båda är försvarbara, och de väljs utifrån driftsättningsbegränsningar, inte utifrån vilken metod som är nyare.

Om du försöker avgöra empiriskt har runtime-metoden en praktisk fördel värd att nämna: alpha 0 och alpha 1 är samma process och samma vikter, så en jämförelse mellan dem isolerar ablationen och inget annat. Det är ett renare experiment än att diffa två checkpoints, och det är anledningen till att tabellen ovan kan läsas som en mätning av projektionen snarare än en mätning av två kvantiseringar av den.

Ansvarsfull användning

Att ta bort en inlärd vägransriktning kan få modellen att svara på förfrågningar som originalmodellen skulle avböja. Det är mekanismen som fungerar, inte en bieffekt, och den bör inte registreras som en funktion. Detta är en forsknings- och inferenskontrollmekanism, och det är inte bevis för att någon resulterande utdata är säker, korrekt eller lämplig.

Det publicerade paketets eget modellkort framför samma poäng från andra hållet: det abliterade MLX-bygget "har till stor del fått sin säkerhetsalignering borttagen", kommer att efterkomma förfrågningar som originalet skulle vägra, och har inga meningsfulla inbyggda skyddsmekanismer. Dess författare avgränsar det till legitim forskning – interpretabilitet, säkerhetsforskning, red-teaming, robusthetsutvärdering – och säger tydligt att driftsättningar först måste lägga till ett eget modereringslager och åtkomstkontroller.

Ingenting i den här artikeln är ett argument för att ta bort vägran är kostnadsfritt, eller för att en lägre vägranfrekvens är en kvalitetssignal. En modell som svarar på fler frågor är inte därmed en bättre modell, och en regelbaserad klassificerare som räknar inledningsfraser är ett mått på formulering, inte på kompetens. Båda dessa artefakter är forskningsverktyg med ett operatörsansvar kopplat till sig, och ansvaret flyttas inte över till den som skrev ablationskoden.

Koden för runtime-ablation, refusal-riktningen och de fullständiga utvärderingstabellerna publiceras av OrcaRouter, tillsammans med den routingplattform som teamet bygger.