Minitron剪枝工作流:Model Optimizer把LLM参数量砍掉40%的全流程
Minitron剪枝工作流Model Optimizer把LLM参数量砍掉40%的全流程【免费下载链接】Model-OptimizerA unified library of SOTA model optimization techniques like quantization, distillation, pruning, neural architecture search, speculative decoding, etc. It compresses deep learning models for downstream deployment frameworks like TensorRT-LLM, TensorRT, vLLM, etc. to optimize inference speed.项目地址: https://gitcode.com/GitHub_Trending/te/Model-OptimizerModel OptimizerModel-Optimizer是 NVIDIA 开源的统一模型优化工具库把量化、蒸馏、剪枝、神经架构搜索、投机解码等 SOTA 压缩技术集于一身用于压缩深度学习模型并加速在 TensorRT-LLM、vLLM 等推理框架上的部署。其中Minitron 剪枝是压缩 LLM 的杀手锏它按激活重要性把 LLM 的层数、隐层宽度、FFN 宽度、注意力头、MoE 专家数逐维度砍掉默认搜索空间允许每个宽度维度最多削减 40%再用知识蒸馏把损失的能力找回来。本文将带你完整走一遍「剪枝 → 蒸馏 → 量化 → 部署」的全流程并附官方复现数据。Minitron 剪枝是什么一分钟看懂原理剪枝Pruning是移除神经网络中冗余参数以减小模型体积的结构性压缩技术。Minitron 的核心思路只有四步重要性打分在校准数据约 512–1024 条样本上跑前向统计每个神经元/注意力头/层的激活幅值8B 模型约 5 分钟排序在每个剪枝维度内所有隐层维度、所有注意力头等按重要性排序剪枝移除最不重要的参数直到满足目标尺寸权重切片所有层统一剪到相同结构同质剪枝得到可直接用标准方式保存/加载的小模型。Minitron 支持两种模式详见 examples/pruning/README.md模式你指定什么适合场景手动剪枝各维度目标尺寸如hidden_size3584明确知道要压到多大、或导出 Top-K 架构做候选NAS 自动剪枝目标参数量如params6e9不知道具体尺寸让算法在搜索空间里自动找最优架构自动模式下算法会在「宽度最多剪 40%、深度最多剪 20%」的约束内生成上万种候选架构用打分函数如 MMLU评估 Top-K 个候选选出得分最高的子网再切权重——这就是标题里砍掉 40%的由来。全流程一览数据准备 → 剪枝 → 蒸馏 → 评估 → 量化 → 部署官方示例以Nemotron-Nano-9B-v2 从 9B 剪到 7B为最小示例examples/pruning/minitron/NVIDIA-Nemotron-Nano-9B-v2/README.md以Nemotron-3-Nano-30B-A3B 从 31.6B 剪到 22B/A3.0B为进阶示例examples/megatron_bridge/tutorials/NVIDIA-Nemotron-3-Nano-30B-A3B-BF16/README.md。两条路径的步骤完全一致第 1 步准备蒸馏数据蒸馏质量决定剪枝后的恢复上限。官方推荐的数据配方是30% 预训练数据 70% 后训练数据数学、代码、科学、指令跟随各占一定权重。数据集先按官方流程做 tokenize 与配比混合完整命令见 examples/dataset/MEGATRON_DATA_PREP.md。新手没有自己的语料时可直接使用官方推荐的 Nemotron 系列数据集。第 2 步一条命令完成 Minitron 剪枝剪枝脚本是 examples/megatron_bridge/prune_minitron.py在 8×H100 单节点上约 1 小时跑完 9B 模型torchrun --nproc_per_node 8 prune_minitron.py \ --hf_model_name_or_path nvidia/NVIDIA-Nemotron-Nano-9B-v2 \ --prune_target_params 7e9 \ --hparams_to_skip num_attention_heads \ --seq_length 8192 \ --output_hf_path /path/to/Pruned-7B常用参数速查--prune_target_params目标总参数量如7e9 压到 7B--prune_target_active_paramsMoE 模型专用按激活参数约束MoE 推理成本取决于激活参数--prune_score_func候选架构打分函数默认用 10% 采样的 MMLU--hparams_to_skip跳过难恢复的维度官方实践中普遍跳过num_attention_heads--max_width_pruning / --max_depth_pruning宽度/深度剪枝上限默认 0.40 / 0.20。运行日志会打印 Top-10 候选架构及得分例如 9B→7B 实验中最终胜出的是num_layers48, hidden_size4352, mamba_num_heads120, mamba_head_dim80, ffn_hidden_size13824。输出的就是一个标准 HuggingFace 检查点可以直接进入下一步。Qwen3-8B 上 Minitron 与异构剪枝 Puzzletron 的「剪枝 蒸馏」MMLU 对比结果如下剪枝前模型几乎不可用蒸馏后大幅恢复第 3 步知识蒸馏找回精度关键一步剪完即用的模型基本失忆9B 剪到 7B 后未经蒸馏的平均基准分只有 18.4。必须用原始模型当教师做知识蒸馏脚本是 examples/megatron_bridge/distill.pytorchrun --nproc_per_node 8 distill.py \ --teacher_hf_path nvidia/NVIDIA-Nemotron-Nano-9B-v2 \ --student_hf_path /path/to/Pruned-7B \ --seq_length 8192 --gbs 768 --train_iters 16000 \ --lr 1e-4 --min_lr 1e-5官方推荐的蒸馏超参数来自 examples/pruning/README.md 的 Pruning Guidelines超参数建议值序列长度8192数据集序列短则用 4096全局 Batch Size与原训练一致或 768学习率1e-4 → 1e-5 线性衰减压缩率越高起点越高训练量80–100B tokens 效果最佳数据配比标准模型 100% 预训练推理模型 70% 推理数据 30% 预训练 经验法则若知道原训练的最大学习率压缩约 50% 时用它的1/5作为蒸馏起点。蒸馏过程中各基准分数的恢复曲线9B→7B横轴为训练 token 数可以看到 2.5B tokens 时大部分能力已恢复80B tokens 后 7B 模型在 GPQA、IFEval 上甚至反超官方 9B 模型——这得益于 12B→9B→7B 的迭代剪枝策略每次压 25% 左右。蒸馏损失曲线同样平稳下降Minitron 子网与 Puzzletron 子网都能稳定收敛第 4 步评估 FP8 量化叠加恢复精度后用 NeMo Evaluator 跑 MMLU、MMLU Pro、GPQA、LiveCodeBench、AIME 等基准配置文件见 nemo_evaluator.yaml。Model Optimizer 的一大亮点是技术可叠加剪枝蒸馏完成后再用 examples/hf_ptq/hf_ptq.py 做 FP8 量化一行命令完成校准与导出python hf_ptq.py --pyt_ckpt_path 蒸馏后检查点 \ --export_path 输出路径 --qformat fp8 --trust_remote_code第 5 步部署到 vLLM / TensorRT-LLM量化后的检查点可直接被 vLLM、TensorRT-LLM、SGLang 加载。在单张 H100 上输入 32K/输出 1K的实测吞吐检查点显存占用输出 tokens/s相对原版加速Nemotron-3-Nano-30B-A3B-BF16官方58.9 GiB5981.0×剪枝后 22B/A3.0B-BF1641.5 GiB1,1902.0×剪枝 22B FP822.8 GiB1,5762.6×剪枝-30% 参数与 FP8 量化叠加后30B MoE 模型实现2.6× 吞吐加速 2.6× 显存下降且基准分仅比官方 30B 低 1.6 分70.5 vs 72.1新手实践清单剪枝比例与常见坑官方 Pruning Guidelinesexamples/pruning/README.md总结的核心经验深度 vs 宽度深度剪枝减层数配置最简单、固定参数下推理更快宽度剪枝减 hidden/FFN同参数下精度更好。追求最优效果时两者结合但调参成本更高超过 1/3 的压缩是安全区剪掉 1/3 以内 高质量数据80–100B tokens蒸馏通常能得到延迟-精度帕累托前沿上的模型压缩 50% 请迭代剪枝先压 30% → 蒸馏 → 再压 30% → 再蒸馏一次压太多很难恢复FFN 比 hidden 更好剪MLP 维度ffn_hidden_size可以比嵌入维度和注意力维度剪得更激进注意力头跳过剪官方复现中普遍--hparams_to_skip num_attention_heads因为注意力头剪枝最难恢复蒸馏后还要后训练若需要推理能力蒸馏后追加指令微调/偏好对齐如 Nemotron-Post-Training-Dataset-v2。完整资料索引想动手复现建议按以下顺序阅读仓库中的文件examples/pruning/README.md — 剪枝总览Minitron / Puzzletron / FastNAS 三种算法、支持矩阵与调参指南examples/pruning/minitron/NVIDIA-Nemotron-Nano-9B-v2/README.md — 9B→7B 完整端到端教程数据、剪枝、蒸馏、评估、量化、vLLM 压测examples/megatron_bridge/README.md — Megatron-Bridge 框架下的剪枝与蒸馏操作手册含多机 Slurm 用法examples/pruning/minitron_vs_puzzletron/README.md — Minitron 与 Puzzletron 的场景选型与对比实验examples/dataset/MEGATRON_DATA_PREP.md — 蒸馏数据 tokenize 与配比准备modelopt/torch/prune/ — 剪枝算法源码实现docs/source/guides/3_pruning.rst — 官方剪枝 API 文档。环境方面剪枝 LLM 建议直接使用 NeMo 容器nvcr.io/nvidia/nemo:26.08并挂载 Model-Optimizer 仓库运行避免手工安装 Megatron 全家桶依赖。剪枝后如果还想进一步压显存记得 Model Optimizer 的量化、QAT量化感知蒸馏、稀疏化都能在同一套工作流里无缝叠加——这就是统一压缩库的价值所在。【免费下载链接】Model-OptimizerA unified library of SOTA model optimization techniques like quantization, distillation, pruning, neural architecture search, speculative decoding, etc. It compresses deep learning models for downstream deployment frameworks like TensorRT-LLM, TensorRT, vLLM, etc. to optimize inference speed.项目地址: https://gitcode.com/GitHub_Trending/te/Model-Optimizer创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

FlexGen 仓库视角下的 Transformers Flax 语言模型预训练实战:从零训练 RoBERTa、GPT-2、T5 与 BART

FlexGen 仓库视角下的 Transformers Flax 语言模型预训练实战:从零训练 RoBERTa、GPT-2、T5 与 BART

推理引擎大模型 【免费下载链接】FlexGen Running large language models on a single GPU for throughput-oriented scenarios. 项目地址: https://gitcode.com/gh_mirrors/fl/FlexGen 点击查看 免费下载 本篇技术指南以 benchmark/third_party/transformers/exam…

2026/9/25 16:55:20 阅读更多 →
基于 Hugging Face Transformers 在 MM-IMDb 上微调多模态双 Transformer(MMBT)分类模型实战指南

基于 Hugging Face Transformers 在 MM-IMDb 上微调多模态双 Transformer(MMBT)分类模型实战指南

推理引擎大模型 【免费下载链接】FlexGen Running large language models on a single GPU for throughput-oriented scenarios. 项目地址: https://gitcode.com/gh_mirrors/fl/FlexGen 点击查看 免费下载 本文以当前仓库中 mm-imdb 示例目录 的官方 README 为核心…

2026/9/25 16:55:20 阅读更多 →
React Native Skia 阴影滤镜实战:用 Shadow 组件实现投影、内阴影与拟物化设计

React Native Skia 阴影滤镜实战:用 Shadow 组件实现投影、内阴影与拟物化设计

图形学移动开发跨平台UI组件 【免费下载链接】react-native-skia High-performance React Native Graphics using Skia 项目地址: https://gitcode.com/gh_mirrors/re/react-native-skia 点击查看 免费下载 Shadow(DropShadow)是 React Nati…

2026/9/25 16:55:20 阅读更多 →

最新新闻

DeskcommCRM落地实战:从Excel迁移到轻量级CRM的完整指南

DeskcommCRM落地实战:从Excel迁移到轻量级CRM的完整指南

DeskcommCRM这个名字,我第一次接触是因为一个特别典型的业务痛点——一家20多人的B2B服务公司,客户信息全散落在销售个人手里的Excel表格,报价单模板放在共享网盘上,A同学改了一版,B同学又改一版,最后对外发…

2026/9/25 17:40:49 阅读更多 →
Rac1 Pulldown活性检测全流程指南:从实验设计到数据解读

Rac1 Pulldown活性检测全流程指南:从实验设计到数据解读

做Rac1活性实验这么多年,我踩过的坑比说明书上写的注意事项多得多。Rac1这个小GTPase,虽然只有二十多千道尔顿,但它的GDP/GTP结合态切换牵动着细胞骨架重构、迁移、增殖甚至免疫突触形成的一整条信号网络。很多课题组想搞清楚自己体系里Rac1到…

2026/9/25 17:40:49 阅读更多 →
Flowbite 集成实战:在 Astro 项目中安装 Tailwind CSS 与 Flowbite 交互组件

Flowbite 集成实战:在 Astro 项目中安装 Tailwind CSS 与 Flowbite 交互组件

UI组件前端 【免费下载链接】flowbite Open-source UI component library and front-end development framework based on Tailwind CSS 项目地址: https://gitcode.com/gh_mirrors/fl/flowbite 点击查看 免费下载 本篇技术指南以 Flowbite 官方 Astro 集成文档 为…

2026/9/25 17:40:49 阅读更多 →
Orleans 详解:Grain 激活与生命周期全流程实战指南(Activation / Deactivation / 迁移)

Orleans 详解:Grain 激活与生命周期全流程实战指南(Activation / Deactivation / 迁移)

后端微服务 【免费下载链接】orleans Cloud Native application framework for .NET 项目地址: https://gitcode.com/gh_mirrors/or/orleans 点击查看 免费下载 本文聚焦于 Orleans 中 Grain 的按需激活(activation)与完整生命周期管理&…

2026/9/25 17:40:49 阅读更多 →
EasyWeChat 6.x 微信公众号模块实战指南:Application 工厂、配置、AccessToken 与消息服务端

EasyWeChat 6.x 微信公众号模块实战指南:Application 工厂、配置、AccessToken 与消息服务端

后端即时通讯 【免费下载链接】easywechat 📦 一个 PHP 微信 SDK 项目地址: https://gitcode.com/gh_mirrors/ea/easywechat 点击查看 免费下载 本文基于 EasyWeChat 6.x 官方文档 公众号模块索引 编写。公众号(Official Account&#xff09…

2026/9/25 17:40:49 阅读更多 →
PromptX Runtime架构剖析:Docker式Agent生命周期与事件驱动SystemBus设计

PromptX Runtime架构剖析:Docker式Agent生命周期与事件驱动SystemBus设计

PromptX Runtime架构剖析:Docker式Agent生命周期与事件驱动SystemBus设计 【免费下载链接】PromptX PromptX 领先的AI 智能体上下文平台 | PromptX Leading AI Agent Context Platform 项目地址: https://gitcode.com/Deepractice/PromptX Prom…

2026/9/25 17:39:49 阅读更多 →

日新闻

AI元人文:从工具使用到思维重构的深度探索

AI元人文:从工具使用到思维重构的深度探索

最近半年我一直在琢磨一件事:AI元人文到底是什么?说白了,就是“用元视角重新审视人与AI的关系”,也在“探索AI如何反向逼着我们发现自己的思考边界”。标题里的“元探索”,在我看就是一层套一层的追问——当你用AI解决…

2026/9/25 0:00:41 阅读更多 →
Python+CNN车牌识别实战:从数据预处理到模型训练与部署

Python+CNN车牌识别实战:从数据预处理到模型训练与部署

简介:基于Python与卷积神经网络的车牌识别项目,面向计算机视觉初学者及智能交通开发者,目标是帮助用户掌握从数据预处理、模型构建到实际部署的完整流程。压缩包共25个文件,包含jpg/png图像样本、py训练脚本、md说明文档、dat数据…

2026/9/25 0:00:41 阅读更多 →
Vim基础操作全攻略:保存退出、模式切换与高频命令实战

Vim基础操作全攻略:保存退出、模式切换与高频命令实战

1. 项目概述1.1 核心需求解析今天聊聊Vim。写这个题目的原因是:几乎每个后端开发者、运维人员、数据工程师某天都会遇到一个场景——深夜加班,服务器登录界面只有黑底白字,编辑器只有vi/vim,你必须在五分钟内完成一次配置修改并保…

2026/9/25 0:00:41 阅读更多 →

周新闻

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

直接铺开项目本身吧。这几个月我一直在折腾一件事:用Flutter给OpenHarmony做一款游戏集合类的App,说白了就是把若干小游戏塞进一个壳里,用统一入口分发。这个方向本身不算新鲜,真正让我花了不少心思的,是首页那堆游戏卡…

2026/9/24 14:34:13 阅读更多 →
Word表格编号全攻略:从列表编号到题注交叉引用

Word表格编号全攻略:从列表编号到题注交叉引用

写Word文档,最让人头疼的往往是那些“看起来不起眼”的小问题。比如表格编号这事:今天在表后面多加了两个空白行,明天给客户交稿前发现整个章节的编号全部错位,光是挨个改序号就能耗掉大半个下午。我前阵子帮人整理一份上百页的技…

2026/9/25 11:15:26 阅读更多 →
从第一个站到第二个站:独立开发者的静态网站选型与落地实践

从第一个站到第二个站:独立开发者的静态网站选型与落地实践

1. 项目概述1.1 核心需求解析做独立开发者这几年,说实话,第一个网站上线的那天晚上我兴奋得没睡着。但等它跑了半年,流量惨淡、功能臃肿、代码自己都懒得看第二遍之后,我才慢慢琢磨明白一个道理:第一个网站是练手&…

2026/9/24 14:33:56 阅读更多 →

月新闻

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能分类:[AI/大模型]细分主题:AI 增强型 CI/CD 流水线自动化与 GitOps 实践:Agent 工作流、工具调用与任务拆解:从原型到生产的验收清单很多团队在尝试用大…

2026/9/24 12:50:34 阅读更多 →
容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场分类:[工程技术]细分主题:Kubernetes 生产环境运维与排障实战:可复制的项目复盘模板与决策记录大部分团队的事故复盘报告,最后都变成了躺在 Confluence 或钉…

2026/9/24 14:33:48 阅读更多 →
容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步分类:[工程技术]细分主题:Docker 容器化技术与镜像安全管理:核心链路的逐步实现与关键代码取舍面对一个积累了五六年历史包袱的单体架构应用(包含 Web 接口、后台…

2026/9/24 12:49:17 阅读更多 →