欢迎使用 ONNX Runtime

ONNX Runtime 是一个跨平台的机器学习模型加速器,具有灵活的接口以集成硬件特定库。ONNX Runtime 可与来自 PyTorch、Tensorflow/Keras、TFLite、scikit-learn 和其他框架的模型配合使用。

如何使用 ONNX Runtime

贡献和自定义


快速入门模板


ONNX Runtime 用于推理

ONNX Runtime 推理功能支持微软在 Office、Azure、Bing 等关键产品和服务以及数十个社区项目中的机器学习模型。

ONNX Runtime 推理的用例示例包括

  • 提高各种机器学习模型的推理性能
  • 在不同的硬件和操作系统上运行
  • 在 Python 中训练,但部署到 C#/C++/Java 应用程序中
  • 使用不同框架创建的模型进行训练和推理

工作原理

前提很简单。

  1. 获取模型。这可以是任何支持导出/转换为 ONNX 格式的框架训练得到的。请参阅教程,了解一些流行的框架/库。
  2. 使用 ONNX Runtime 加载并运行模型。有关使用不同语言运行模型的信息,请参阅基本教程
  3. (可选)使用各种运行时配置或硬件加速器调整性能。这里有很多选项——请参阅性能部分作为起点。

即使没有第 3 步,ONNX Runtime 通常也能提供比原始框架更好的性能。

ONNX Runtime 对模型图应用多项图优化,然后根据可用的硬件特定加速器将其划分为子图。核心 ONNX Runtime 中的优化计算内核可提供性能改进,分配的子图可从每个执行提供程序获得进一步加速。


ONNX Runtime 用于训练