@SpaceTimeViking: 我有一个版本保持BF16注意力层,另一个混合精度量化使用NVFP4权重和FP8 At…
摘要
对Google的Gemma-4-12B-it模型进行混合精度量化,使用NVFP4用于MLP权重,FP8用于注意力层,实现了25%更小的存储占用和更快的吞吐量,同时保持质量。
查看缓存全文
缓存时间: 2026/06/08 15:22
@sakurayukiai 我维护了一个版本保留BF16注意力层,另一个混合精度量化版本采用NVFP4权重和FP8注意力层,相比仅NVFP4 MLP的版本额外节省25%空间,同时在基准测试中保持相同或更好的输出质量。
https://t.co/1ISwtdI1IU
AEON-7/Gemma-4-12B-it-AEON-Abliterated-K4-NVFP4-FP8 · Hugging Face
来源: https://huggingface.co/AEON-7/Gemma-4-12B-it-AEON-Abliterated-K4-NVFP4-FP8
https://huggingface.co/AEON-7/Gemma-4-12B-it-AEON-Abliterated-K4-NVFP4-FP8#gemma-4-12b-it-aeon-abliterated–k4-biprojection-mixed-nvfp4–fp8Gemma-4-12B-it AEON Abliterated — K=4 双投影(混合NVFP4 + FP8)
最小且最快的变体——9.3 GB,在DGX Spark上单流21 tok/s / 并发318 tok/s。
对google/gemma-4-12B-it的K=4双投影abliteration进行混合精度量化:
MLP权重使用4-bit NVFP4,注意力层使用8-bit FP8。
提供与仅NVFP4 MLP的兄弟版本(https://huggingface.co/AEON-7/Gemma-4-12B-it-AEON-Abliterated-K4-NVFP4)相同的推理质量(MMLU 76.8),但体积减小20%,单流速度提升34%,且编码能力更强。使用vLLM加载时需添加--quantization modelopt。这是最大密度/最大吞吐量的选择。
当峰值推理质量至关重要时,请使用近乎无损的FP8兄弟版本(https://huggingface.co/AEON-7/Gemma-4-12B-it-AEON-Abliterated-K4-FP8)(13 GB)。
拒绝行为已被移除;模型能够回应基础模型会拒绝的广泛提示。操作者方面的安全由您负责——请参阅底部的仲裁条款。
https://huggingface.co/AEON-7/Gemma-4-12B-it-AEON-Abliterated-K4-NVFP4-FP8#%F0%9F%9A%80-quickstart🚀 快速开始
https://huggingface.co/AEON-7/Gemma-4-12B-it-AEON-Abliterated-K4-NVFP4-FP8#docker-recommended-dgx-spark–blackwellDocker(推荐,DGX Spark / Blackwell)
# 1. 下载
huggingface-cli download AEON-7/Gemma-4-12B-it-AEON-Abliterated-K4-NVFP4-FP8 \
--local-dir ./Gemma-4-12B-AEON-K4-NVFP4-FP8
# 2. 服务启动
docker run -d --name aeon-gemma12b --gpus all --ipc=host --shm-size=16g --net=host \
-v $(pwd)/Gemma-4-12B-AEON-K4-NVFP4-FP8:/model:ro \
--entrypoint vllm \
ghcr.io/aeon-7/aeon-vllm-ultimate:latest \
serve /model \
--served-model-name gemma12b \
--quantization modelopt \
--kv-cache-dtype fp8_e4m3 \
--max-model-len 8192 \
--max-num-seqs 16 \
--gpu-memory-utilization 0.85 \
--enable-prefix-caching \
--enable-chunked-prefill \
--trust-remote-code
# 3. 调用(OpenAI兼容)
curl -s http://localhost:8000/v1/chat/completions \
-H 'Content-Type: application/json' \
-d '{"model":"gemma12b","messages":[{"role":"user","content":"Hello!"}],"max_tokens":128}' \
| python3 -c "import json,sys; print(json.load(sys.stdin)['choices'][0]['message']['content'])"
https://huggingface.co/AEON-7/Gemma-4-12B-it-AEON-Abliterated-K4-NVFP4-FP8#plain-vllmPlain vLLM
pip install "vllm>=0.22.2" "nvidia-modelopt>=0.43" "transformers>=5.10"
vllm serve AEON-7/Gemma-4-12B-it-AEON-Abliterated-K4-NVFP4-FP8 \
--quantization modelopt --kv-cache-dtype fp8_e4m3 \
--max-model-len 8192 --max-num-seqs 16 \
--gpu-memory-utilization 0.85 --trust-remote-code
⚠️ 需要 vLLM ≥ 0.22.2(用于
Gemma4UnifiedForConditionalGeneration加载器 和MIXED_PRECISIONmodelopt 路径)以及 Blackwell GPU(DGX Spark GB10sm_121a,B100/B200sm_100,RTX 50 系列sm_120)才能使用 NVFP4 GEMM。AEON vLLM Ultimate (https://github.com/AEON-7/vllm-ultimate-dgx-spark) 容器包含了为sm_121a预构建的加载器。在 Hopper/Ampere 上,FP4 权重会反量化为 BF16(无速度优势)——请改用 FP8 兄弟版本。
就是这样。以下均为详细信息。
https://huggingface.co/AEON-7/Gemma-4-12B-it-AEON-Abliterated-K4-NVFP4-FP8#why-mixed-precision–measured-capability为什么混合精度——实测能力
全 FP4 (W4A4) NVFP4 量化在困难推理任务上损失约 21pp,因为 FP4 激活值 会扰乱精确的多步 logit 传播。本模型绕过了这一点:大部分 MLP 权重采用 4-bit NVFP4(占用大部分体积),而推理敏感的 注意力层保持在 8-bit FP8。结果在保持 4-bit 体积/速度优势的同时,避免了 W4A4 的推理崩溃。
所有指标均通过 vLLM 服务路径评估,每个模型使用相同的提示/设置。MMLU 是均衡的 285 题集(5 × 全部 57 个科目)——这是一个多样化的度量,而非最坏情况的单科目切片。
| 能力维度 | BF16(参考) | FP8 | 混合(本模型) | NVFP4 MLP 仅 |
|---|---|---|---|---|
| MMLU(均衡,N=285) | 80.4% | 80.4% | 76.8% | 76.8% |
| HumanEval 语法(N=164) | 99.4% | 99.4% | 97.0% | 96.3% |
| HumanEval 功能(N=164) | 83.5% | 85.4% | 81.7% | 76.2% |
| IFEval(N=50) | 90.0% | 90.0% | 90.0% | 90.0% |
与仅 NVFP4 MLP 的兄弟版本相比,本模型在 MMLU 和 IFEval 上持平,编码能力更强(HumanEval 功能 +5.5pp)——体积还减小了 20%。
它未能达到 FP8 的推理水平(共享的 NVFP4 MLP 是瓶颈);FP8 兄弟版本仍然是质量首选。
https://huggingface.co/AEON-7/Gemma-4-12B-it-AEON-Abliterated-K4-NVFP4-FP8#throughput-dgx-spark-gb10-fp8-kv-cache-greedy吞吐量(DGX Spark GB10,FP8 KV 缓存,贪婪解码)
| 指标 | 混合(本模型) | FP8 | NVFP4 MLP 仅 | BF16 |
|---|---|---|---|---|
| 体积 | 9.3 GB | 13 GB | 11.7 GB | 24 GB |
| 单流整体 | 21.1 tok/s | 15.8 tok/s | 15.7 tok/s | 7.7 tok/s |
| 单流 TTFT 中位数 | 110 ms | 143 ms | - | - |
| 并发 ×16 汇总 | 318 tok/s | 226 tok/s | 254 tok/s | 144 tok/s |
最快速的变体,优势明显——相比其他可用量化方案,单流速度提升 +34%,并发速度提升 +25–41%,且体积最小。在 Spark 这类内存带宽受限的设备上,9.3 GB 的体积是单流胜出的关键。
https://huggingface.co/AEON-7/Gemma-4-12B-it-AEON-Abliterated-K4-NVFP4-FP8#quantization-methodology量化方法
| 属性 | 值 |
|---|---|
| 工具 | NVIDIA ModelOpt 0.44 |
| 格式 | MIXED_PRECISION——逐层 NVFP4 + FP8 |
MLP(gate_proj/up_proj/down_proj) | NVFP4(4-bit 浮点 E2M1,块大小 16,E4M3 块缩放) |
注意力层(q/k/v/o_proj) | FP8(E4M3,per-tensor) |
| 校准 | 2048 × CNN/DailyMail 验证集 @ 1024 tokens,原生 sm_121a |
| 模型体积 | ~9.3 GB(从 23.9 GB BF16 —— 减少 61%) |
| 运行时 | vLLM --quantization modelopt(modelopt_mixed)通过 Gemma4UnifiedForConditionalGeneration |
vLLM 将每一层分派到各自的内核:MLP 使用 FlashInferCutlassNvFp4LinearKernel,注意力层使用 FlashInferFP8ScaledMMLinearKernel。
https://huggingface.co/AEON-7/Gemma-4-12B-it-AEON-Abliterated-K4-NVFP4-FP8#kept-at-full-bf16保持为全 BF16
lm_head,model.language_model.embed_tokens,model.embed_vision*,model.embed_audio*,model.vision_embedder*。(ModelOpt 校准后未被量化的少量注意力投影也保持为 BF16——精度更高,无负面影响。)
https://huggingface.co/AEON-7/Gemma-4-12B-it-AEON-Abliterated-K4-NVFP4-FP8#vllm-loader-notes-for-reproducersvLLM 加载器说明(供复现者参考)
- Google 的 Gemma-4-12B 是无编码器的
Gemma4UnifiedForConditionalGeneration。ModelOpt 的 HF 导出需要两个微调才能加载到 vLLM:将视觉键重命名为 vLLM 的vision_embedder.*布局,并将model.vision_embedder*添加到量化的ignore列表中。这些操作都在make_vllm_ready.py(https://github.com/AEON-7/vllm-ultimate-dgx-spark)(gemma4-nvfp4/)中脚本化。 - 注意力层必须使用 per-tensor FP8(
FP8_DEFAULT_CFG),而非FP8_PER_CHANNEL_PER_TOKEN。 vLLM 的ModelOptMixedPrecisionConfig仅路由逐层quant_algo ∈ {FP8, NVFP4, W4A16_NVFP4};per-channel/per-token 变体导出为FP8_PER_CHANNEL_PER_TOKEN,会落入非量化路径并加载失败。完整的混合配方见quantize_k4_nvfp4.py --recipe mixed_mlp_nvfp4_attn_fp8(https://github.com/AEON-7/vllm-ultimate-dgx-spark)。
https://huggingface.co/AEON-7/Gemma-4-12B-it-AEON-Abliterated-K4-NVFP4-FP8#abliteration-methodology-inherited-from-the-bf16-baseAbliteration 方法(继承自 BF16 基座)
K=4 多方向范数保持双投影(扩展自 TrevorJS 的配方)。基座层 L24/L37/L39/L26(信噪比 top-K),o_proj + mlp.down_proj 在 24/48 层上编辑,scale=1.0。完整的双投影数学推导及与基座的能力对比请参见 BF16 卡片 (https://huggingface.co/AEON-7/Gemma-4-12B-it-AEON-Abliterated-K4-BF16)。
https://huggingface.co/AEON-7/Gemma-4-12B-it-AEON-Abliterated-K4-NVFP4-FP8#behavior行为
- 良性提示:与仅 NVFP4 MLP 的兄弟版本一致(能力表已数值确认)。
- 此前被拒绝的提示:完整回复,通常带一段简短的免责声明。
- 工具调用:通过
--enable-auto-tool-choice --tool-call-parser gemma4。 - 多模态视觉路径保留(BF16)。
- KV 缓存: 使用
--kv-cache-dtype fp8_e4m3(已发布的默认值)。请勿将 NVFP4 KV 缓存与推测解码结合——4-bit KV 会破坏草稿接受率。
https://huggingface.co/AEON-7/Gemma-4-12B-it-AEON-Abliterated-K4-NVFP4-FP8#available-formats可用格式
| 变体 | 仓库 | 精度 | 体积 | 选择时机 |
|---|---|---|---|---|
| FP8 | ...-K4-FP8 (https://huggingface.co/AEON-7/Gemma-4-12B-it-AEON-Abliterated-K4-FP8) | FP8 E4M3 | 13 GB | 质量优先——近乎无损,匹配 BF16 |
| 混合(本模型) | ...-K4-NVFP4-FP8 (https://huggingface.co/AEON-7/Gemma-4-12B-it-AEON-Abliterated-K4-NVFP4-FP8) | NVFP4 MLP + FP8 注意力 | 9.3 GB | 最小 + 最快——MLP 仅质量,体积减小 20%,速度提升 34% |
| NVFP4 MLP 仅 | ...-K4-NVFP4 (https://huggingface.co/AEON-7/Gemma-4-12B-it-AEON-Abliterated-K4-NVFP4) | NVFP4 4-bit MLP | 11.7 GB | 已被上方混合变体取代 |
| BF16 | ...-K4-BF16 (https://huggingface.co/AEON-7/Gemma-4-12B-it-AEON-Abliterated-K4-BF16) | bfloat16 | 24 GB | 微调,非 Blackwell 硬件 |
https://huggingface.co/AEON-7/Gemma-4-12B-it-AEON-Abliterated-K4-NVFP4-FP8#acknowledgements致谢
TrevorJS(双投影),p-e-w/heretic(abliteration 框架),NVIDIA ModelOpt(NVFP4/FP8 工具包 + Gemma-4 参考配方),AEON-7(K 方向扩展、混合精度配方 + vLLM 加载器修复、能力评估)。
https://huggingface.co/AEON-7/Gemma-4-12B-it-AEON-Abliterated-K4-NVFP4-FP8#license许可证
继承 Gemma 许可证 (https://ai.google.dev/gemma/terms)。
https://huggingface.co/AEON-7/Gemma-4-12B-it-AEON-Abliterated-K4-NVFP4-FP8#arbitration-clause仲裁条款
通过访问、下载、使用、运行推理、微调、合并、量化、分发、集成或以其他方式与本模型交互,您确认并同意以下条款:
- 完全责任。 您,即用户,完全且排他地负责 (a) 您或您的下游系统向本模型发出的每一个提示,(b) 本模型针对每个提示产生的每一个响应,(c) 您、您的系统、您的代理或您的用户基于这些响应所采取的每一个下游行动,以及 (d) 因上述任何行为导致的任何损害——无论是直接、间接、后果性、可预见或其他性质的损害。
- 无担保。 本模型严格按“现状”提供,不作任何形式的明示或暗示担保,包括但不限于适销性、特定用途适用性、不侵权、安全性、一致性、事实准确性或任何司法管辖区的法律合规性。任何贡献者、作者、发布者或托管平台均不对输出或下游使用承担任何形式的责任。
- 法律合规。 您有责任确保对本模型的使用符合所有适用的法律、法规、服务条款、行业行为准则、职业道德标准以及组织政策,包括您运营或您的输出可能被接收的任何司法管辖区。本模型的非对齐性质并不授予您任何原本不具备的法律授权。
- 操作安全层。 未经审查的模型不是玩具。您应实施与您部署环境相适应的下游安全层,包括但不限于:输入验证、输出过滤、内容审核、审计日志、速率限制、访问控制,以及高风险工作流的人工复核。在生产环境中部署本模型而未实施上述安全层本质上是不安全的,不属于支持的使用场景。
- 更高的注意义务。 内部拒绝行为的缺失意味着通常部分由模型承担的注意义务完全由您承担。您在使用本模型时应比使用基础对齐模型时更加谨慎、更有远见、更具道德自律,而非相反。如果您不确定计划中的使用是否合乎道德、合法或明智,正确的做法是不要发出请求。
- 不对输出内容背书。 本模型的作者、贡献者和发布者不背书、不采纳、也不对模型产生的任何特定输出承担责任。输出是提示、权重和采样器状态的随机函数——不代表任何人类立场。
- 仲裁。 因使用本模型、其输出或本条款引起的或与之相关的任何争议、索赔或纠纷,应通过双方共同约定的仲裁机构(如无约定,则为美国仲裁协会消费者仲裁规则)下的具有约束力的个人仲裁解决,放弃陪审团审判、集体诉讼、代表诉讼或合并程序的权利。仲裁地点应为提出索赔的一方所在地。费用和律师费应按适用的仲裁规则分配。本条款不得扩大任何相反方向的责任(若法律禁止,也不得建立责任);它限制了用户在因自身使用本模型而声称受害时的追诉方式。
- 赔偿。 您同意赔偿、辩护并使本模型的作者、贡献者和发布者免受因您使用本模型或违反本条款而引起的任何索赔、损害、损失、责任、成本和费用(包括合理的律师费)。
- 可分割性。 如果本条款的任何规定在特定司法管辖区被认定为不可执行,其余规定在该司法管辖区内仍然完全有效,且不可执行的规定将被替换为与原始意图最接近的可执行等效规定。
- 接受。 您使用本模型即构成您完全接受本条款。如不接受,请勿使用本模型。
本模型是一个没有自身观点的工具。观点由您提供。判断由您提供。伦理由您提供。输出上留下的是您的指印,而非模型的指印。
https://huggingface.co/AEON-7/Gemma-4-12B-it-AEON-Abliterated-K4-NVFP4-FP8#%E2%98%95-support-the-work☕ 支持项目
如果这个版本对您有所帮助,非常欢迎打赏——这些资金将直接用于更多的计算资源、更多模型和更多开源发布。
以太坊 Layer 2(Base、Arbitrum、Optimism、Polygon 等)和 EVM 兼容代币可发送至同一个以太坊地址。
相似文章
@_philschmid: 权重:https://huggingface.co/collections/google/gemma-4-qat-q4-0… 博客:https://blog.google/innovation-and-ai/techno…
Google 发布了 Gemma 4 模型,采用量化感知训练 (QAT) 并以 Q4_0 精度托管在 Hugging Face 上,提供从 5B 到 33B 参数的高效变体。
@Ex0byt:激活、切片、拼接、微调数日,外加15小时屏息凝神的NVFP4校准/传播轮次……
社区成员发布了Qwen3.6-35B-A3B-PRISM-NVFP4——一款经过多轮、数据集校准、零损耗的NVFP4量化版Qwen模型。
Qwen3.6-27B 各量化格式 KLD 对比:INT 与 NVFP
Reddit 帖子对比了 Qwen3.6-27B 的多种量化版本(INT4、NVFP4、BF16-INT4),展示不同场景下内存占用与精度的权衡。
这是我的 llama.cpp NVFP4/MXFP6 GGUF 量化工具
作者介绍了一款开源的 GGUF 量化工具,用于 llama.cpp,能够创建 NVFP4 和 MXFP6 量化模型,并采用 RSF、张量提升、动态量化等先进技术,质量优于现有方法(如 ModelOpt)。
Mix-Quant: 量化预填充,精准解码的智能体大语言模型
Mix-Quant 提出了一种面向智能体大语言模型的阶段感知量化框架,在预填充阶段使用 NVFP4 量化以加速计算,同时在解码阶段保持 BF16 精度以维持准确性。该方法在智能体基准测试中实现了预填充速度提升最高 3 倍,且性能下降极小。