Qwen3.8-27B-Uncensored-FP8 vs 官方Qwen3.8-27B-FP8:量化方案逐字节一致,性能为何几乎零损失
【免费下载链接】Qwen3.8-27B-Uncensored-FP8项目地址: https://ai.gitcode.com/hf_mirrors/orcarouter/Qwen3.8-27B-Uncensored-FP8
Qwen3.8-27B-Uncensored-FP8 是 Qwen3.8-27B 的 abliteration(去除安全拒绝)加 Block-FP8 量化构建版:它复现了官方 Qwen3.8-27B-FP8 的逐字节量化方案,让"去拒绝"修改不引入任何额外的量化损失。本文带你拆解这套量化方案,并解释为什么它的基准测试与官方 FP8 版差距几乎为零,以及最快速的 vLLM 部署方法。
一句话结论:先量化对齐,再谈能力
这个模型不是"自己设计了一套新量化",而是刻意复刻官方方案:
- 先对 abliterated 后的 BF16 权重做离线量化;
- 量化配方(Block-FP8 E4M3、块大小、哪些模块不量化)与官方
Qwen/Qwen3.8-27B-FP8完全一致; - 因此 vLLM 加载它时走的是同一套 FlashInfer / DeepGEMM 块级 FP8 内核,连 MTP 投机解码头也原样保留。
换句话说:量化环节对两个模型是"同一个动作",能力差异只来自去拒绝编辑本身——而它几乎不触碰通用能力。
量化方案逐条拆解:与官方 FP8 三大关键点
关键点一:权重用 128×128 块级 Block-FP8(E4M3)
每个线性层权重按128×128 的小块分别量化为float8_e4m3fn,每块附带一个 BF16 的weight_scale_inv缩放因子。这种细粒度量化把误差控制在小块内,是官方 FP8 配方的核心。相关参数就写在 config.json 的quantization_config中:fmt: e4m3、weight_block_size: [128, 128]。
关键点二:激活值走"动态 per-token FP8",免校准集
激活值不做静态校准,而是在运行时按 token 动态计算FP8 缩放。好处是没有校准数据偏差,坏处是几乎没有——因为这与官方 FP8 版是逐字节同构的做法,两者跑在完全相同的内核路径上。
关键点三:882 个模块保持 BF16,名单与官方完全一致
以下部分不量化、原样保留在 BF16:
- 整个视觉塔(333 个
visual.*张量逐字节复制); - 所有
norm归一化层、mlp.gate/shared_expert_gate; - 线性注意力(Gated DeltaNet)层的卷积与门控:
A_log、conv1d、dt_bias、in_proj_a/b/ba; embed_tokens词嵌入与lm_head输出层;- MTP 投机解码头。
这份modules_to_not_convert清单共882 条,与官方 FP8 检查点一字不差——这也是"逐字节一致"最严格的体现。
📌 量化 407 个权重 + 复制 792 个张量 =1606 个张量,数量与官方 FP8 检查点精确对齐;全部打包为 7 个 ≤5GB 的 safetensors 分片(见 model.safetensors.index.json)。
性能为何几乎零损失?3 个硬核证据
证据一:99.9% 的 FP8 编码与官方权重相同
作者用官方检查点做了逐块比对:块布局与缩放因子复现出的 FP8 编码,99.9% 与官方权重完全相同。剩余的微小差异来自去拒绝编辑改动了 131 个残差写入矩阵(16 个o_proj+ 48 个out_proj+ 65 个down_proj+ 词嵌入行空间)后的重量化,属于"该变的地方变了,不该变的地方没变"。
证据二:同一套 vLLM 内核,同一套投机解码
因为方案一致,vLLM 对这个模型与官方 FP8 版使用相同的块级 FP8 GEMM 内核、相同的 FP8 KV cache,并且 MTP 头保持可用(投机解码草稿头)。推理路径没有任何"新方案"需要适配或调参。
证据三:基准测试全在 ±1.3 分以内
用 vLLM 以相同脚本、相同设置实测(27B 稠密混合注意力架构:48 层 Gated DeltaNet 线性注意力 + 16 层全注意力,262K 上下文):
| 基准 | 样本 | 官方 Base FP8 | Uncensored-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(中文) | 500 | 81.4% | 80.8% | −0.6 |
📊 四项能力基准全部落在±1.3 分内,MMLU 不降反微升;WikiText-2 困惑度6.96,确认语言建模质量没有退化。由于量化环节与官方逐字节一致,这点差距只反映去拒绝编辑,而非量化损失。
模型文件与规格速览
| 项目 | 规格 |
|---|---|
| 参数规模 | 27B 稠密,原生视觉语言模型 |
| 架构 | 64 层,混合注意力(Gated DeltaNet + 全注意力) |
| 上下文 | 262,144 tokens |
| 精度 | Block-FP8(E4M3)+ BF16 关键模块 |
| 体积 | 30.9 GB,7 分片,1606 张量 |
| 保留能力 | 视觉塔、推理(thinking)开关、多轮工具调用、MTP 投机解码 |
| 许可证 | Apache 2.0 |
生成参数(temperature 1.0 / top_p 0.95 / top_k 20)定义在 generation_config.json;对话模板见 chat_template.jinja。
用 vLLM 一键部署:最快配置方法
先从镜像仓库拉取模型(共 7 个分片,约 31 GB):
git clone https://gitcode.com/hf_mirrors/orcarouter/Qwen3.8-27B-Uncensored-FP8再用 Docker 启动 OpenAI 兼容服务(262K 上下文 + MTP + 工具调用):
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⚙️ 两个高频踩坑点:
- 不要传
--quantization fp8——FP8 配置已内嵌在 config.json,重复指定会冲突; - 需要视觉能力时,去掉
--language-model-only参数即可(视觉塔完好)。
硬件要求清单
- 显存:权重约 31 GB(约为 BF16 的 56 GB 的一半);最小约40 GB VRAM可跑起权重 + 少量 KV cache;
- 推荐:单卡 H100 80 GB 或 H200 143 GB,后者可完整承载 262K 长上下文;
- 加速:已验证在单张 H200 上以 32 并发评测请求平滑运行(
--max-num-seqs 96+ FP8 KV + MTP),MTP 草稿头在真实负载上带来显著解码提速; - 软件:vLLM(transformers ≥ 5.12 以支持 Qwen3.5/3.8 架构),如
vllm/vllm-openai:v0.24.0镜像。
⚠️ 注意事项(必读)
- 该模型已通过 abliteration(正交化移除拒绝方向)大幅移除安全对齐,会响应原版会拒绝的请求,没有有效内置护栏;
- 发布目的严格限定为合法研究:可解释性、AI 安全、拒绝机制研究、红队测试与受控实验;
- 请勿在未添加自有安全、审核与防滥用层的情况下向终端用户或生产环境开放;
- 使用须遵守 Apache 2.0 许可及所在地法律法规,作者对误用不承担责任;
- 完整免责声明与适用/不适用场景见 README.md 的 Disclaimer 与 Intended use 章节;
- Block-FP8 并非相对 BF16 无损,可能出现轻微生成瑕疵(实测能力影响 ≤1.3 分)。
总结
Qwen3.8-27B-Uncensored-FP8 的价值在于把"量化"这个变量从对比中彻底拿掉:128×128 块级 E4M3、动态 per-token 激活、882 个 BF16 保留模块,与官方 Qwen3.8-27B-FP8 逐字节对齐,99.9% 的 FP8 编码相同,并复用同一套 vLLM 内核与 MTP 投机解码。于是你在基准测试里看到的 ±1.3 分差距,全部来自去拒绝编辑本身——这就是"量化方案逐字节一致,性能几乎零损失"的完整答案。
【免费下载链接】Qwen3.8-27B-Uncensored-FP8项目地址: https://ai.gitcode.com/hf_mirrors/orcarouter/Qwen3.8-27B-Uncensored-FP8
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考