PyTorch 原生的模型量化与优化库,覆盖训练和推理部署。
microsoft/Olive
Python 工具包,组合微调、转换和量化等步骤,为 CPU、GPU 和 NPU 输出优化后的 ONNX 模型。
- Star
- 2,409
- Fork
- 326
- 未关闭 Issue
- 87
- 最近提交
- 21小时前
这是什么?
Olive 是一个基于 ONNX Runtime 的 AI 模型优化工具包,名称取自 ONNX LIVE。给定模型和目标硬件,它会串联量化、计算图优化等多种技术,输出适合云端或边缘设备推理的高效 ONNX 模型,并兼顾精度和延迟等约束。
项目提供 `olive optimize` 命令行入口,只需指定 Hugging Face 模型名和目标精度(如 int4),即可自动完成下载模型、使用 GPTQ 量化、导出带权重的 ONNX 计算图以及图优化等全流程。Llama、Phi、Qwen、Gemma 等常见架构开箱即用,其他架构可通过描述输入输出来适配。
生成的模型运行在 ONNX Runtime 上,该运行时提供 Python、C/C++、C#、Java、JavaScript 等语言绑定。近期版本新增了 NPU 支持和更多量化算法。
核心功能
- 01通过单条 olive optimize 命令自动完成优化流程。
- 02支持使用 GPTQ 等方法量化到 int4 等低精度。
- 03将 Hugging Face 模型导出为 ONNX 计算图,权重单独存储。
- 04借助 ONNX Runtime 面向 CPU、GPU 和 NPU 运行。
- 05除优化外还支持微调和模型转换步骤。
适用场景
- 将小型语言模型转换为 int4 ONNX 格式,用于端侧推理。
- 为在 Windows 或边缘设备上使用 ONNX Runtime 部署 Hugging Face 大模型做准备。
- 调试量化配置,在模型体积、精度与延迟之间取得平衡。
快速上手
- 1
使用 pip 安装 Olive
pip install olive-ai - 2
安装 transformers 和 onnxruntime-genai
pip install transformers onnxruntime-genai - 3
将 Qwen2.5-0.5B-Instruct 自动优化为 int4
olive optimize --model_name_or_path Qwen/Qwen2.5-0.5B-Instruct --precision int4 --output_path models/qwen
使用前须知
- 需要 Python 环境,并需从 Hugging Face 下载模型。
- 部分优化功能需要安装可选扩展及额外依赖。
标签
常见问题
- Olive 是什么?
- Python 工具包,组合微调、转换和量化等步骤,为 CPU、GPU 和 NPU 输出优化后的 ONNX 模型。 Olive 是一个基于 ONNX Runtime 的 AI 模型优化工具包,名称取自 ONNX LIVE。给定模型和目标硬件,它会串联量化、计算图优化等多种技术,输出适合云端或边缘设备推理的高效 ONNX 模型,并兼顾精度和延迟等约束。
- Olive 可以免费使用吗?用的什么许可证?
- Olive 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
- Olive 还在维护吗?
- 活跃维护中。Olive 最近一次提交是在 2026年11月7日。
- Olive 适合用来做什么?
- 将小型语言模型转换为 int4 ONNX 格式,用于端侧推理。 为在 Windows 或边缘设备上使用 ONNX Runtime 部署 Hugging Face 大模型做准备。 调试量化配置,在模型体积、精度与延迟之间取得平衡。
- Olive 怎么安装和运行?
- 使用 pip 安装 Olive: pip install olive-ai 安装 transformers 和 onnxruntime-genai: pip install transformers onnxruntime-genai 将 Qwen2.5-0.5B-Instruct 自动优化为 int4: olive optimize --model_name_or_path Qwen/Qwen2.5-0.5B-Instruct --precision int4 --output_path models/qwen
- 在哪里获取 Olive?
- 源代码和安装说明在 GitHub 上:https://github.com/microsoft/Olive
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
NVIDIA TensorRT 的开源部分,用于在 NVIDIA GPU 上高性能运行深度学习推理,包含插件、ONNX 解析器和示例。
一个用于优化 ONNX 模型的 Python 工具包,在保持精度的同时减少算子数量,提升推理速度。
基于 PyTorch 的 DiT 推理引擎,在 Diffusers 之上提供缓存、并行、量化和 CPU 卸载加速。
一个 Python 神经网络压缩框架,通过量化、剪枝和稀疏化加速 OpenVINO 推理,支持 PyTorch 与 ONNX 模型。
基于 ONNX Runtime 的生成式 AI 推理库,提供 Python、C#、C/C++ 等接口,在本地运行大语言模型。