欢迎使用 ONNX Runtime

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

如何使用 ONNX Runtime

贡献和自定义


快速入门模板


用于推理的 ONNX Runtime

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

ONNX Runtime 推理的示例用例包括

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

工作原理

前提很简单。

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

即使没有步骤 3,与原始框架相比,ONNX Runtime 通常也能提供性能改进。

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


用于训练的 ONNX Runtime