onnxruntime

一次导出模型,多端高效跑推理

开源 🏷️完全免费 ⏳ 访问状态待核验 基础设施 🍴 复刻 4361 🐛 待处理 1818 👀 关注 264
访问官网 ↗ GitHub ↗
GitHub 星标 ★ 22162
维护状态 活跃
是否开源 开源
定价模式 🏷️完全免费 开源免费(MIT),官网提供文档与下载入口

项目预览

onnxruntime 项目界面预览图
图片来源:GitHub 官方仓库名片

项目数据

分类基础设施
开发团队microsoft
定价模式🏷️完全免费
价格说明开源免费(MIT),官网提供文档与下载入口
访问状态⏳ 访问状态待核验
是否开源是
开源协议MIT
主要语言C++
技术栈/模型ai-framework,deep-learning,hardware-acceleration,machine-learning,neural-networks,onnx,pytorch,scikit-learn,tensorflow
GitHub 星标★ 22162
上线时间2018-11-10 00:00:00
代码更新2026-10-24
仓库体积1.51 GB
本站数据更新2026-10-25
维护状态活跃
收录时间2026-10-25
浏览次数0

项目介绍

ONNX Runtime 是微软开源的跨平台机器学习推理与训练加速引擎,核心解决模型训练框架与部署环境割裂的问题:把 PyTorch、TensorFlow、scikit-learn 等导出的 ONNX 模型统一加载,并在不同硬件上高效执行。它提供 CPU、GPU 及多种专用加速器的执行提供器,内置图优化、算子融合、量化与内存复用等优化,支持 Python、C++、C#、Java、JavaScript 等多语言 API,可嵌入服务端、桌面、移动端与边缘设备。除推理外还支持分布式训练与模型转换工具链,并与主流框架生态互通。项目以 C++ 实现,性能与可移植性兼顾,适合需要一次导出、多端部署的工程团队。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-10-25 · 当前星标 ★ 22162

使用教程

⚠ 本教程由 AI 依据该项目 README 整理;原始文档不完整,部分步骤为通用流程推断,实际安装请以项目官方文档为准。

难度:入门 约 10 分钟 部署方式:库/依赖 5 步

⚠ 该项目 README 未提供完整安装说明,以下步骤为通用流程,请以官方文档为准。

环境要求

  • 可运行 Python、C++、C#、Java 或 JavaScript 之一的开发环境(按目标语言选择)
  • 待推理的模型需先导出为 ONNX 格式(如由 PyTorch、TensorFlow/Keras、scikit-learn 导出)
  • Windows、Linux 或 macOS 等常见操作系统;使用 GPU 等加速器时需准备对应的硬件与驱动

安装与启动步骤

  1. 1确认使用场景

    先区分是推理还是训练:推理用于加载已导出的 ONNX 模型执行预测,训练用于加速 PyTorch 脚本训练。

  2. 2查阅官方文档

    README 未给出安装命令,安装方式按语言和平台各不相同,请以官方文档的安装章节为准。

  3. 3克隆示例仓库

    README 指向了配套示例仓库,可先克隆推理示例对照学习;也可克隆主仓库查看源码。

    git clone https://github.com/microsoft/onnxruntime-inference-examples.git
  4. 4准备 ONNX 模型

    用现有框架导出 ONNX 模型文件,作为后续加载和推理的输入;训练场景则准备原有 PyTorch 训练脚本。

  5. 5按语言接入运行

    依据目标语言选择对应的 API 与安装方式,参照官方文档与示例工程完成模型加载并执行一次推理。

如何确认成功

按官方文档或示例工程加载模型并成功输出一次推理结果,即表示环境可用。

常见问题

Q:为什么 README 里没有安装命令?

A:该项目按语言、平台、硬件提供不同的安装与构建方式,README 主要指向官网与文档站,具体命令需在官方文档对应章节查看。

Q:支持哪些框架导出的模型?

A:README 说明支持 PyTorch、TensorFlow/Keras 等深度学习框架,以及 scikit-learn、LightGBM、XGBoost 等经典机器学习库导出的模型。

Q:必须先编译源码吗?

A:不必。README 与官网提供现成的使用方式与示例仓库,只有在需要定制算子或特定平台支持时才考虑从源码构建。

Q:训练加速怎么用?

A:README 说明对现有 PyTorch 训练脚本只需增加一行改动,即可在多节点 NVIDIA GPU 上加速 transformer 类模型训练,具体写法见官方训练文档。

注意事项

  • 本项目是多语言库,不存在统一的“启动服务”步骤,验证方式是跑通一次模型加载与推理。
  • 使用 GPU 等加速器时,需保证硬件驱动与所用版本匹配,否则可能回退到 CPU 执行。
  • 建议优先参考官网文档与配套示例仓库,避免照搬过期版本的命令。

核心亮点

  • 执行提供器机制可切换 CPU、GPU 与专用加速硬件,同一模型无需改代码即可适配不同部署环境
  • 内置图优化、算子融合、INT8 量化与内存复用,推理延迟和占用明显优于直接跑原生框架
  • 语言绑定覆盖 Python、C++、C#、Java、JavaScript,服务端、桌面、移动端均可嵌入

不足之处

  • C++ 核心代码量大,二次开发与自定义算子扩展门槛较高
  • 部分新算子或冷门模型结构支持滞后于上游框架,转换时偶有兼容问题
  • 移动端与边缘部署的包体积和构建配置仍需一定调优成本

适用场景

  • 将训练好的 PyTorch 模型导出为 ONNX 后部署到服务端做低延迟推理
  • 在 Windows、Linux、macOS 多平台桌面应用中嵌入统一的模型推理能力
  • 移动端或边缘设备上运行量化后的轻量模型,控制内存与功耗

替代项目

OpenVINO、TensorRT、TVM

上一篇:d-inference

下一篇:nixl

同类项目推荐

surprisal 开源

统一接口,一键计算任意语言模型的惊异度

A unified interface for computing surprisal (log probabilities) from language models···

★ 53 2026-08-09
emmy 开源

选配方或自调优,让 LLM 推理在 GPU 上跑得更快

Optimized GPU compiler for LLM inference. Choose from a list of optimized recipes or···

★ 117 2026-08-09
TurboLLM 开源

一条命令把 Claude Code 接到自己显卡上跑

Run any local LLM engine, auto-tuned to your GPU — polished web UI + OpenAI/Anthrop···

★ 285 2026-09-16
cache-dit 开源

让大 DiT 模型在有限显存下跑得更快更省

A PyTorch-native inference engine with cache, parallelism, quantization and cpu offl···

★ 1293 2026-10-17
NeuroSandboxWebUI 开源

一个界面玩转本地文本、图像、视频、音频 AI 模型

(Windows/Linux/MacOS) Local WebUI with neural network models (Text, Image, Video, 3D···

★ 106 2026-08-09
TinyGPT 开源

用 C++ 从零手写 LLM 推理,轻量无依赖,适合学习和嵌入式部署。

Tiny C++ LLM inference implementation from scratch

★ 131 2026-08-09
nyro 开源

一个网关,让所有 AI 工具无缝切换任意模型。

Self-hosted AI Gateway — connect Claude Code, Codex, Gemini CLI and any SDK to any ···

★ 198 2026-08-09
llm-d-inference-sim 开源

不装 GPU 不跑模型,秒起一个假 vLLM 服务

A lightweight, configurable, and real-time simulator designed to mimic the behavior ···

★ 220 2026-09-16
CliRelay 开源

自建 AI 网关,统一管理编码 CLI 的模型调用与花费。

Self-hosted AI gateway for coding CLIs — one OpenAI/Claude/Gemini/Codex-compatible ···

★ 1044 2026-08-09