* skip browserstack test at release pipeline * Update web-ci-pipeline.yml for Azure Pipelines * Update web-ci-pipeline.yml for Azure Pipelines * Update web-ci-pipeline.yml for Azure Pipelines * Update web-ci-pipeline.yml for Azure Pipelines * Update web-ci-pipeline.yml for Azure Pipelines * Update web-ci-pipeline.yml for Azure Pipelines * Update web-ci-pipeline.yml for Azure Pipelines * Update web-ci-pipeline.yml for Azure Pipelines * Update web-ci-pipeline.yml for Azure Pipelines * Update web-ci-pipeline.yml for Azure Pipelines * Update web-ci-pipeline.yml for Azure Pipelines * Update web-ci-pipeline.yml for Azure Pipelines * Update web-ci-pipeline.yml for Azure Pipelines * Update web-ci-pipeline.yml for Azure Pipelines * Update web-ci-pipeline.yml for Azure Pipelines * Update web-ci-pipeline.yml for Azure Pipelines * Update web-ci-pipeline.yml for Azure Pipelines * pool name as a parameter to run at lotus * Update web-ci-pipeline.yml for Azure Pipelines * Update web-ci-pipeline.yml for Azure Pipelines * Update web-ci-pipeline.yml for Azure Pipelines * Update web-ci-pipeline.yml for Azure Pipelines * Update web-ci-pipeline.yml for Azure Pipelines * create a packaging pipeline for web * Update web-packaging-pipeline.yml for Azure Pipelines * make web-ci-pipeline as a template * make web-ci-pipeline as a template * make web-ci-pipeline as a template * make web-ci-pipeline as a template * change a paramter name checking a pipeline * make a pool name changable for react native pipeline * disable code sign validation for react native * fix react native package.json publish * fix indentation * remove unnecessary comment * test onnxruntime-common package publish * ts and js files use lf as eol for windows * use Linux style of ending line break * change newLine at only tsconfig.json * restore a commented code * fix git restore directory for npm packaging * fix a typo * force eol to lf on windows for js directory in CI |
||
|---|---|---|
| .. | ||
| android | ||
| e2e | ||
| ios | ||
| lib | ||
| scripts | ||
| .gitignore | ||
| babel.config.js | ||
| onnxruntime-mobile-c.podspec | ||
| onnxruntime-react-native.podspec | ||
| package.json | ||
| README.md | ||
| tsconfig.build.json | ||
| tsconfig.json | ||
| tsconfig.scripts.json | ||
| yarn.lock | ||
onnxruntime-react-native
ONNX Runtime React Native provides a JavaScript library for running ONNX models on React Native app.
Why ONNX models
The Open Neural Network Exchange (ONNX) is an open standard for representing machine learning models. The biggest advantage of ONNX is that it allows interoperability across different open source AI frameworks, which itself offers more flexibility for AI frameworks adoption.
Why ONNX Runtime React Native
With ONNX Runtime React Native, React Native developers can score pre-trained ONNX models directy on React Native apps by leveraging ONNX Runtime Mobile, so it provides a light-weight inference solution for Android and iOS.
Installation
yarn add onnxruntime-react-native
Usage
import { InferenceSession } from "onnxruntime-react-native";
// load a model
const session: InferenceSession = await InferenceSession.create(modelPath);
// input as InferenceSession.OnnxValueMapType
const result = session.run(input, ['num_detection:0', 'detection_classes:0'])
Refer to ONNX Runtime JavaScript examples for samples and tutorials. Different from other JavaScript frameworks like node.js and web, React Native library doesn't support these features.
- Unsigned data type at Tensor
- Model loading using ArrayBuffer
Operator and type support
ONNX Runtime React Native currently supports most operators used by popular models. Refer to ONNX Runtime Mobile Pacakge Operator and Type.
License
License information can be found here.