onnx/onnx

Open standard for machine learning interoperability

ONNX – 开放神经网络交换

是什么 – ONNX 是一种开源、框架无关的 AI 模型表示格式(涵盖深度学习和传统机器学习)。它定义了可移植的计算图 IR、标准操作符目录以及数据类型规范。该仓库包含参考实现、模型规范文档以及用于处理 ONNX 文件的工具。

为何重要 – 通过提供一种通用的模型交换格式,ONNX 使开发者能够将模型从创建它的框架(例如 PyTorch、TensorFlow、scikit-learn)迁移到最适合生产需求的运行时或硬件。这种互操作性缩短了从研究到部署的周期,并催生了一个活跃的工具、优化器和加速器生态系统,它们都理解相同的文件格式。

如何开始

  1. 安装 Python 包:
    pip install onnx            # 基础包
    pip install onnx[reference]  # 包含可选的参考实现依赖
    
  2. 使用 Python API 创建或加载模型(参见 ONNX Python 包文档 链接)。
  3. 使用提供的工具进行 形状/类型推断图优化
  4. 将模型导出为文件(model.onnx),并输入到任何 ONNX 兼容的运行时(例如 ONNX Runtime、TensorRT、OpenVINO)。

关键资源

  • 规范与文档 – 概述、IR 规范、版本控制、操作符和 Python API 概述均在 docs/ 文件夹中。
  • 教程 – 构建 ONNX 模型的逐步指南位于独立的 onnx/tutorials 仓库中。
  • 预训练模型 – 一个不断增长的集合托管在 Hugging Face 的 onnx-community 组织下。
  • 图工具 – 形状推断、图优化和 opset 转换工具已打包或链接到仓库中。

社区与治理

  • 采用开放治理模式,设有特别兴趣小组(SIG)和工作组;详情请参见 community/ 目录。
  • 定期举行社区会议(指导委员会、SIG、工作组);请参见 ONNX 日历。
  • 欢迎通过拉取请求(pull requests)贡献代码;提供完整的贡献指南和行为准则。

许可证 – Apache License 2.0(宽松,适合商业使用)。


以上所有信息均直接取自仓库的 README。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目