PyTorch + ONNX Runtime



PyTorch 凭借其易于理解且灵活的 API、大量现成的模型(特别是在自然语言处理 (NLP) 领域)以及特定领域的库,在深度学习领域处于领先地位。


随时随地部署

在云端、桌面端、移动端、物联网(IoT)甚至浏览器中运行 PyTorch 模型

提升性能

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

缩短上市时间

被微软及许多其他公司用于其生产环境中的 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 环境可靠且大规模地训练和部署模型,以确保通过轻量级的独立环境完全支持最新版本的 PyTorch,该环境包含训练所需的组件(如用于训练的 ONNX Runtime),从而有效运行针对大模型的优化训练。

更低延迟,更高吞吐量

更佳的性能有助于提升用户体验并降低运营成本。从计算机视觉(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,模型只需数小时或数天即可准备好进行大规模部署。