Qwen3.8-27B 去审查版来了:拒绝方向被彻底阉割,红队直接起飞

导语:红圈里最近又炸了个大瓜——OrcaRouter团队把Qwen3.8 27B的”拒绝方向”从残差流里硬生生剔了出来,再按官方FP8方案重新量化,原版能力几乎没掉,但安全护栏基本归零。这玩意儿是给红队和可解释性研究用的,咱们今天把它扒个底朝天。


一、这模型到底被动了什么手脚

千问3.8 27B本身就是个狠角色——27B稠密参数、原生视觉语言混合架构、64层里头48层是Gated DeltaNet线性注意力、16层是全注意力、还有个MTP(多token预测)推测解码头。上下文拉到262144 tokens,工具调用、视觉理解、推理一条龙。

但这次发布的Qwen3.8-27B-Uncensored-FP8不是简单的”提示词越狱”。OrcaRouter团队干的是abliteration(拒绝方向消除)——这个手法出自Arditi等人在2024年发的论文《Refusal in Language Models Is Mediated by a Single Direction(语言模型的拒绝行为由单一方向介导)》。核心思路是:模型在残差流里有一个”拒绝方向”r,通过有害请求和无害请求的最后一层token残差做均值差就能把这个向量算出来。然后把所有写入残差的矩阵做正交化变换 W’ = W – r(rᵀW),把这个方向从权重里彻底挖掉。

他们具体改了多少矩阵?131个。涵盖了self_attn.o_proj的17个矩阵(含MTP头)、linear_attn.out_proj的48个、mlp.down_proj的65个、还有embed_tokens的行空间。视觉塔完全没动,MTP头也跟着主模型一起做正交化,所以推测解码照样能跑。改完之后最大残差泄漏量1.8e-2,比BF16存储精度还低,等于外科手术级别的精准切除。

做完阉割之后他们又把它量化回官方FP8方案——block-FP8 E4M3,weight_block_size [128,128],per-token动态激活。407个权重被量化、792个被复制,最终1606个tensor,分成7个分片共30.9 GB。这套方案跟Qwen官方发布的Qwen3.8-27B-FP8(千问3.8 27B FP8官方版)在block布局和scale上99.9%一致,所以vLLM(一个大模型推理引擎)可以直接套用官方的FlashInfer/DeepGEMM(GPU推理加速库)内核路径跑起来,不用任何定制开发。

基准对比图(来源:0x0SojalSec推文)

二、能力丢了没?数据说话

这是最关键的——阉割完是不是变傻子了?官方公布的数据:MMLU(大规模多任务语言理解基准)、GSM8K(小学数学推理基准)、CMMLU(中文多任务理解基准)这些通用能力基准基本没动,下降幅度小到可以忽略。但AdvBench(对抗性行为测试集)、HarmBench(有害行为测试集)、StrongREJECT(强拒绝测试集)这些专门测”会不会拒绝”的基准上,拒绝率直接被打到接近零。

翻译成人话:通用智商没掉,但”道德感”没了。

架构层面还保留了啥?视觉塔原封不动——意味着你扔张图进去照样能OCR、能描述、能看懂图表。工具调用、function calling(函数调用)也都在,reasoning-parser qwen3和tool-call-parser qwen3_coder都是现成可用的。MTP推测解码头也保住了,spec decode(推测解码)照样能跑、提速效果一样有。

模型演示截图(来源:0x0SojalSec推文)

三、下载地址——5个仓库随便挑

主仓库是OrcaRouter官方的safetensors(一种安全的模型权重存储格式)FP8版本,30.9 GB,单卡H100或者双卡A100能跑:

主仓库(FP8版)

https://huggingface.co/orcarouter/Qwen3.8-27B-Uncensored-FP8

想跑GGUF(一种适合CPU和低显存GPU的量化格式)轻量化的有4个备选,0xKitkat那个打包好了mmproj(多模态投影层)和Aggressive微调版:

GGUF版本

https://huggingface.co/0xKitkat/Qwen3.8-27B-Uncensored-Aggressive
https://huggingface.co/JonathanColetti/Qwen3.8-27B-Uncensored-GGUF
https://huggingface.co/dealignai/Qwen3.8-27B-CRACK-GGUF

想要BF16(原始精度未量化)原版的:

BF16原版

https://huggingface.co/JonathanColetti/Qwen3.8-27B-Uncensored

许可证是Apache 2.0,跟原模型一致。但作者明确说了:不要拿去给终端用户用、别部署到生产环境、自己加一层安全和审核防护。所有下载和使用行为都得你自己背法律责任。

四、怎么部署——两套方案

方案一:vLLM跑FP8版(需要GPU,推荐A100/H100)

一条docker命令拉起来,官方FP8内核路径直接复用:

docker run -d --name qwen38-uncensored --gpus all --ipc=host --shm-size=8g 
  -v /path/to/Qwen3.8-27B-Uncensored-FP8:/model:ro 
  -p 8000:8000 vllm/vllm-openai:v0.24.0 
  --model /model --served-model-name Qwen3.8-27B-Uncensored 
  --language-model-only 
  --speculative-config '{"method":"mtp","num_speculative_tokens":3}' 
  --kv-cache-dtype fp8 
  --gpu-memory-utilization 0.9 
  --max-model-len 262144 --max-num-seqs 96 
  --trust-remote-code 
  --reasoning-parser qwen3 
  --enable-auto-tool-choice --tool-call-parser qwen3_coder

262K上下文拉满、KV cache(键值缓存)走FP8省显存、MTP推测解码3个token一组,吞吐直接拉满。

方案二:llama.cpp(一个CPU/GPU通用推理引擎)跑GGUF版(CPU也能跑)

0xKitkat的Aggressive版自带mmproj,可以直接跑视觉+文本:

llama-server -m Qwen3.8-27B-Uncensored-Aggressive-Q4_K_M.gguf 
  --mmproj mmproj-F16.gguf --no-mmproj-offload 
  --jinja -c 98304 -ngl 99 -ts 25,23 -fa on -ub 256 
  --cache-type-k q8_0 --cache-type-v q8_0 
  --spec-type draft-mtp --spec-draft-n-max 2 
  --temp 0.7 --top-p 0.8 --top-k 20 --presence-penalty 1.5

Q4_K_M(4-bit量化中等档位)量化版大概15-18 GB,4090单卡能塞下,CPU也能凑合跑但慢。

五、红队视角看这事

abliteration这东西不是新鲜玩意儿——2024年Arditi的论文就把它原理讲透了。但把整套流程做成产品级交付、还按官方FP8方案重新量化保证内核兼容,这是头一回。意味着你不需要任何特殊推理框架,vLLM现成能跑。

对红队的意义很直白:以前做越狱测试要写一堆花式prompt(提示词)跟拒绝机制斗智斗勇,现在直接拿原权重跑就行——拒绝机制在权重层面就不存在。这种工具对AI红队、对齐研究、模型鲁棒性测试来说都是刚需。但同时也提醒所有做AI产品的人:别把”模型不会拒绝”当成安全防线,指望系统提示词和RLHF(基于人类反馈的强化学习)就够用,这层防护薄得像纸。

最后说一遍免责声明:作者明文规定这东西只能用于受控环境下的合法研究、可解释性分析、红队测试和鲁棒性评估,自己加审核层、自己背法律责任。下载即同意。别拿去做傻事。

© 版权声明
THE END
喜欢就支持一下吧
点赞7 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容