ONNX Runtime 跨平台推理引擎

microsoft/onnxruntime 访问 GitHub ↗
🔤 C++ ★ 21442 ⑂ 0 daily #17 (+5) 抓取 2026-08-22

一句话简介

微软推出的跨平台机器学习推理加速器,支持多种框架模型的高性能执行,广泛应用于云端与边缘设备。

标签

  • 机器学习
  • 推理加速
  • ONNX
  • 跨平台
  • 深度学习

适用应用场景

  • 模型推理服务部署
  • 边缘设备AI加速
  • 跨框架模型转换
  • 自然语言处理应用

README 中文摘要

项目概述

ONNX Runtime 是一个跨平台的推理与训练机器学习加速器,旨在通过硬件加速与图优化技术,降低模型部署成本并提升用户体验。

核心特性

推理加速

ONNX Runtime 推理引擎支持来自多种框架的模型,涵盖:

  • 深度学习框架:PyTorch、TensorFlow/Keras
  • 经典机器学习库:scikit-learn、LightGBM、XGBoost 等

兼容性方面,引擎适配不同的硬件、驱动与操作系统,在条件允许时会调用硬件加速器,并结合图优化与转换策略以获得最佳性能。

训练加速

ONNX Runtime 训练模块面向多节点 NVIDIA GPU 上的 Transformer 模型设计,只需在现有 PyTorch 训练脚本中添加一行代码即可显著缩短训练时间。

技术架构

运行时通过算子执行提供(EP,Execution Provider)机制对接不同后端,包括 CPU、CUDA、DirectML、TensorRT、QNN 等。这种插件式架构使得:

  • 同一份 ONNX 模型可在多种硬件上部署
  • 新硬件后端可通过独立 EP 仓库接入(例如面向高通平台的 QNN EP)
  • 图优化与算子融合自动应用于计算图

快速上手

主要资源入口:

配套示例仓库:

# 推理示例
microsoft/onnxruntime-inference-examples

# 训练示例
microsoft/onnxruntime-training-examples

# 插件 EP 示例(高通 QNN 后端)
onnxruntime/onnxruntime-qnn

典型使用流程:将 PyTorch 或 TensorFlow 模型导出为 ONNX 格式,使用 ONNX Runtime 的 Python/C++/C# API 加载并执行推理;训练侧则在 PyTorch Trainer 中集成对应接口即可启用分布式加速。

发布

当前版本与历史版本归档于 GitHub Releases 页面。后续版本的发布日期、新特性公告及功能请求提交流程详见官方路线图。

数据与遥测

项目在运行过程中可能收集使用数据并发送至 Microsoft,用于改进产品与服务。详细说明参见隐私声明文档。

参与贡献

项目欢迎社区贡献,具体规范见贡献指南文档。功能请求与缺陷报告通过 GitHub Issue 提交,一般性讨论与问题使用 GitHub Discussions。

许可证

项目基于 MIT 许可证发布,源代码与许可文本见仓库 LICENSE 文件。

摘要更新于 2026-08-22 00:32:31 · 原文 3087 字符 · md5 e3fc64e926e7…