欢迎使用 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 应用程序中
- 使用不同框架创建的模型进行训练和推理
工作原理
前提很简单。
- 获取模型。这可以是任何支持导出/转换为 ONNX 格式的框架训练得到的。请参阅教程,了解一些流行的框架/库。
- 使用 ONNX Runtime 加载并运行模型。有关使用不同语言运行模型的信息,请参阅基本教程。
- (可选)使用各种运行时配置或硬件加速器调整性能。这里有很多选项——请参阅性能部分作为起点。
即使没有第 3 步,ONNX Runtime 通常也能提供比原始框架更好的性能。
ONNX Runtime 对模型图应用多项图优化,然后根据可用的硬件特定加速器将其划分为子图。核心 ONNX Runtime 中的优化计算内核可提供性能改进,分配的子图可从每个执行提供程序获得进一步加速。