Qwen Qwen3.8-27B 的 abliterated(移除拒绝)离线 Block-FP8 构建版本
一个网关,覆盖所有模型。 — 路由更智能 · 交付更安全 · 成本更低。
对
Qwen/Qwen3.8-27B进行的 abliterated(移除拒绝)与 离线 Block-FP8 量化构建版本 —— 一款 27B 参数的稠密、混合注意力(Gated DeltaNet 线性 + 全注意力)原生视觉语言模型,具备灵活的思考控制、工具调用以及 MTP 投机解码头。该版本移除安全拒绝方向,随后重新量化为与官方Qwen/Qwen3.8-27B-FP8完全一致的 FP8 方案,从而通过完全相同的 vLLM 内核路径提供服务 —— 262K 上下文,工具、推理与 MTP 均保留。可在 OrcaRouter 模型目录 中浏览所有模型。该模型已以 API 形式部署于此处。
该模型的安全对齐已大幅移除,方法是通过 abliteration (将残差流中的拒绝方向正交化剔除)。直接后果如下:
Qwen3.8-27B 拒绝。它没有实质性的内置护栏。下载或使用该模型即表示你确认并接受以上内容。
| 基础模型 | Qwen/Qwen3.8-27B |
| 架构 | Qwen3_5ForConditionalGeneration — 64 层,隐藏层维度 5120,混合 Gated DeltaNet(48 个线性注意力层 + 16 个全注意力层,间隔为 4),原生 VL 塔 + MTP 头 |
| 修改 | Abliteration(拒绝方向移除)随后离线 Block-FP8 量化 |
| 量化 | Block-FP8(E4M3)、weight_block_size [128,128]、动态激活 —— 量化方案与官方 Qwen3.8-27B-FP8 逐字节一致 |
| 格式 | safetensors,已重新分片为 ≤ 5 GB 分片(7 个分片,30.9 GB,1606 个张量) |
| 精度 | FP8(E4M3)块量化线性权重;视觉语言塔 / 归一化层 / 路由器 / 嵌入层 / lm_head 保持 BF16 |
| 保留 | 完整视觉语言塔和MTP 投机解码头(可作为基础模型的直接替换项) |
| 上下文 | 262,144 tokens |
拒答方向移除遵循 Arditi et al. (2024),Refusal in Language Models Is Mediated by a Single Direction。单个拒答方向 r(k = 1)通过在 第 38 层(round(0.6 × 64))上,对有害 − 无害的最后一 token 残差进行大规模激活掩码均值差估计得到,数据分别来自 AdvBench(有害)与 Alpaca(无害)。随后将 r 从所有 残差写入 矩阵中正交剔除——W' = W − r(rᵀW)——并以 float32 计算:
| 组件 | 编辑的矩阵 |
|---|---|
self_attn.o_proj(16 个全注意力层 + MTP) | 17 |
linear_attn.out_proj(48 个线性注意力 / GDN 层) | 48 |
mlp.down_proj(64 层 + MTP) | 65 |
embed_tokens(行空间) | 1 |
| 总计 | 131 |
视觉塔保持未修改,且 MTP 头与主模型一致地完成了 Abliteration,因此投机解码仍可正常工作。编辑后的最大残差泄漏:1.8e-2(float32 投影 → bf16 存储误差)。
量化在经过 Abliteration 的 BF16 权重上离线完成,并精确复现官方 Qwen/Qwen3.8-27B-FP8 方案:
weight 为 float8_e4m3fn,并附带 weight_scale_inv(BF16)。norm、mlp.gate / shared_expert_gate、linear_attn 卷积/门控(A_log、conv1d、dt_bias、in_proj_a/b/ba、norm)、lm_head、embed_tokens——与官方 FP8 完全相同的 882 项 modules_to_not_convert。因此,vLLM 使用与官方 checkpoint 相同的 FlashInfer / DeepGEMM 分块缩放 FP8 kernel 来服务该构建版本,并采用相同的 MTP 投机解码。
该结果基于完全相同的 FP8 构建版本,使用 vLLM 提供服务(block-FP8 + FP8 KV cache + MTP),并与同样方式提供官方 Qwen/Qwen3.8-27B-FP8 的结果进行对比,采用相同的脚本和设置。
拒绝行为由基于规则的开头短语分类器判定(caveat = 已作答,但附带免责声明 / 警告)——仅供参考,并非 LLM 评审 / 可发表级别数值。除非另有说明,思考均处于关闭状态;两种模式下均报告拒绝率,因为 Qwen 的思考模式会改变数值。
| Benchmark | n | 基座 FP8 | 本模型 | Caveat(本模型) |
|---|---|---|---|---|
| AdvBench | 100 | 99.0% | 0.0% | 44.0% |
| JailbreakBench (harmful) | 100 | 94.0% | 0.0% | 47.0% |
| StrongREJECT | 150 | 97.3% | 2.0% | 41.3% |
| HarmBench (standard) | 150 | 98.7% | 2.7% | 42.0% |
| MaliciousInstruct | 100 | 99.0% | 0.0% | 40.0% |
| SimpleSafetyTests | 50 | 64.0% | 6.0% | 56.0% |
| ForbiddenQuestions | 150 | 73.3% | 4.7% | 35.3% |
| Custom probes (zh/en) | 11 | 63.6% | 0.0% | 27.3% |
有害提示下的拒绝率从基座 FP8 的 64–99% 骤降至 0–6%。约 30–50% 的 caveat 比例表示模型 仍会作答,但常常在开头附上一段简短的安全免责声明——它是在响应请求,而非拒绝。
enable_thinking=true,max_tokens 2048)| Benchmark | n | 基座 FP8 | 本模型 |
|---|---|---|---|
| AdvBench | 60 | 66.7% | 1.7% |
| JailbreakBench (harmful) | 60 | 43.3% | 0.0% |
| StrongREJECT | 60 | 35.0% | 0.0% |
| HarmBench (standard) | 60 | 46.7% | 0.0% |
| MaliciousInstruct | 60 | 83.3% | 0.0% |
| SimpleSafetyTests | 50 | 44.0% | 0.0% |
| ForbiddenQuestions | 60 | 48.3% | 0.0% |
| Custom probes (zh/en) | 11 | 45.5% | 0.0% |
在思考模式下,abliterated 模型几乎从不拒绝(≤ 1.7%)。
| Benchmark | n | Base FP8 (no-think / think) | 本模型 (no-think / think) |
|---|---|---|---|
| XSTest-safe | 250 | 5.6% / 0.0% | 0.4% / 0.0% |
Abliteration 降低了良性提示上的连带过度拒答(5.6% → 0.4%)。
| Benchmark | n | Base FP8 | 本模型 | Δ |
|---|---|---|---|---|
| MMLU(全部,0-shot 字母) | 300 | 84.3% | 84.7% | +0.4 |
| MMLU-Pro(CoT) | 250 | 77.6% | 76.8% | −0.8 |
| GSM8K(CoT) | 150 | 90.0% | 88.7% | −1.3 |
| CMMLU(0-shot,中文) | 500 | 81.4% | 80.8% | −0.6 |
能力几乎完全保留——每个 Benchmark 与基础模型之间的差距均在 ±1.3 个百分点以内,且 MMLU 保持不变。由于 FP8 方案与官方 checkpoint 逐字节一致,该差异仅反映 Abliteration 编辑,而这几乎不涉及通用能力。
流畅度(困惑度): 该构建在 WikiText-2-raw 上的困惑度为 6.96(296,907 个 tokens,BF16 KV;logprobs 正常,最小 −26.9 / 均值 −1.94),表明 Abliteration + block-FP8 并未降低语言建模能力。
已在该 FP8 构建上验证: vLLM 启动(block-FP8 + FP8-KV + MTP)、推理(enable_thinking → reasoning 字段已填充)、多轮工具调用(qwen3_coder parser)以及视觉(图像 + OCR)均可正常工作。
视觉塔逐字节保留——全部 333 个 visual.* 张量均原样复制并保留为 BF16,merger / 图像 + 视频预处理器配置完整无损,因此它仍然是完整的视觉语言模型(Qwen3_5ForConditionalGeneration),可直接替换基础模型。Abliteration 只编辑 语言模型 残差写入器,因此图像理解在架构上不受影响(基于图像的拒答也会随文本拒答一同减少)。上述 Benchmark 表格均为纯文本(使用 --language-model-only 提供服务);若要使用视觉,请在提供服务时不要使用该标志。
已在该 FP8 构建上验证可用(以完整 VL 模式提供服务):给定一张测试图像,模型能正确说出形状和颜色,并读取图中文字(OCR)——例如,它会描述*“一个带黑色轮廓的鲜红色圆形”和“一个蓝色正方形”,并读出说明文字“PURPLE 7”*。基于图像的提示均得到正常回答,没有拒答,与文本结果一致。
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_coderFP8
quantization_config会从config.json中读取 — 请勿传入--quantization fp8。--speculative-config mtp会启用保留的 MTP 草稿头。如果希望使用 BF16 KV 精度, 请去掉--kv-cache-dtype fp8。
思考默认开启(Qwen3.8)。可通过 chat_template_kwargs 按请求切换;
推理轨迹会返回在 reasoning 字段中(--reasoning-parser qwen3)。
from openai import OpenAI
client = OpenAI(base_url="http://localhost:8000/v1", api_key="EMPTY")
resp = client.chat.completions.create(
model="Qwen3.8-27B-Uncensored",
messages=[{"role": "user", "content": "Prove that sqrt(2) is irrational."}],
extra_body={"chat_template_kwargs": {"enable_thinking": True}},
)
print(resp.choices[0].message.reasoning) # thinking trace
print(resp.choices[0].message.content) # final answer支持标准 OpenAI tools + assistant tool_calls + role: tool 结果消息,
包括多轮调用(将工具结果回传以生成后续回答)。由
--tool-call-parser qwen3_coder 解析。
通过 OpenAI 兼容网关在 OrcaRouter 上提供服务
(262K 上下文、工具调用 + 推理)。可在
orcarouter.ai 获取 API 密钥(sk-orca-...)。
from openai import OpenAI
client = OpenAI(base_url="https://api.orcarouter.ai/v1", api_key="sk-orca-...")
resp = client.chat.completions.create(
model="qwen/qwen3.8-27b",
messages=[{"role": "user", "content": "Hello!"}],
)
print(resp.choices[0].message.content)软件
vllm/vllm-openai:v0.24.0。内存
--kv-cache-dtype fp8 将其减半。吞吐量 / 并发
--max-num-seqs 以及权重加载后可容纳的
KV cache 限制。已在单张 H200 上验证,可平滑服务 32 个并发 eval 请求
(--max-num-seqs 96,FP8 KV cache,MTP)。MTP draft head 可在
真实工作负载中带来显著的解码加速。Qwen3.8-27B 的任何偏见和局限。Apache 2.0,继承自基础模型
Qwen/Qwen3.8-27B。Abliteration 和量化不会
改变底层许可证义务。