PyTorch + ONNX Runtime



PyTorch 以其易于理解和灵活的 API、大量的现成模型(尤其是在自然语言处理 (NLP) 领域)以及其领域特定库,引领着深度学习领域。


随处部署

在云、桌面、移动设备、物联网甚至浏览器中运行 PyTorch 模型

提升性能

加速 PyTorch 模型以改善用户体验并降低成本

缩短上市时间

被 Microsoft 和许多其他公司用于其生产环境中的 PyTorch 工作负载

为什么选择 PyTorch + ONNX Runtime?

PyTorch 中的原生支持

PyTorch 通过 torch.onnx API 包含对 ONNX 的支持,以简化将 PyTorch 模型导出到可移植的 ONNX 格式。ONNX Runtime 团队维护这些导出器 API,以确保与 PyTorch 模型的高度兼容性。

					 
import torch

torch.onnx.export(
model,
inputs,
"model.onnx")

生产就绪

在 Azure Machine Learning 中使用内置的 PyTorch 环境,可靠且大规模地训练和部署模型,确保通过一个轻量级、独立的、包含 ONNX Runtime for Training 等所需组件的环境,全面支持最新版本的 PyTorch,从而有效运行大型模型的优化训练。

更低延迟,更高吞吐量

更好的性能有助于改善用户体验并降低运营成本。从计算机视觉(ResNet、MobileNet、Inception、YOLO、超分辨率等)到语音和 NLP(BERT、RoBERTa、GPT-2、T5 等)的各种模型都可以从 ONNX Runtime 的优化性能中受益。ONNX Runtime 团队定期对热门模型进行基准测试和性能优化。ONNX Runtime 还集成了 TensorRT 和 OpenVINO 等顶尖硬件加速器库,因此您可以在所有目标平台上使用相同的通用 API,同时在可用硬件上获得最佳性能。

更快地将创新投入生产

开发敏捷性是总成本的关键因素。ONNX Runtime 是基于将 PyTorch 模型投入 Microsoft Office、Bing 和 Azure 等高规模服务的生产环境的经验而构建的。过去,将模型从研发 (R&D) 投入生产需要数周甚至数月。借助 ONNX Runtime,模型可以在数小时或数天内准备好大规模部署。