パッケージ、リポジトリ、アプリカテゴリを検索

パッケージ詳細v1.4.1

onnxruntime

OnnxRuntime の Flutter プラグインは、モバイルおよびデスクトッププラットフォームの Flutter アプリに Onnx モデルを簡単に、柔軟かつ高速に統合するための簡単で柔軟な高速 Dart API を提供します。

AndroidiOSmacOSWindowsLinux
30日間ダウンロード
1.6万
いいね数
73
Pub ポイント
150

パッケージをインストール

flutter pub add onnxruntime

パッケージ概要

公開情報に基づく選定ガイドです。参考としてご利用ください。

onnxruntime Flutterプラグインは、Android、iOS、macOS、Windows、Linuxのすべてのプラットフォームで、ONNX(オープンニューラルネットワークエクスチェンジ)モデルをFlutterアプリにシームレスに統合できるようにします。アプリ内での機械学習推論を直接実行するための高速で柔軟かつ使いやすいDart APIを提供します。最小限のオーバーヘッドで事前トレーニング済みモデルをデプロイするのに最適であり、画像認識、物体検出、自然言語処理など、幅広いMLタスクをサポートしています。このプラグインは、下位のONNX Runtimeエンジンのパフォーマンスを活用しながら、クロスプラットフォーム互換性を維持しています。

用途

  • 画像分類
  • オブジェクト検出
  • 自然言語処理
  • モバイルアプリにおけるリアルタイム推論
  • デスクトップMLアプリケーション

主な機能

  • クロスプラットフォーム対応
  • 高パフォーマンス推論
  • シンプルな Dart API
  • ONNXモデルの互換性
  • 軽量な統合

適している対象

  • ML対応のFlutterアプリを開発する開発者
  • ONNXモデルを使用するチーム
  • リアルタイム推論を必要とするアプリケーション
  • モバイルおよびデスクトップMLのデプロイ
  • プラットフォームに依存しないMLが必要なプロジェクト

注意事項

  • ONNXモデル変換が必要です
  • ONNX互換モデルに限定
  • モデルサイズはアプリバンドルに影響します
  • 組み込みモデルのトレーニングなし
  • プラットフォーム固有の実行時依存関係

元の README

関連するソースリポジトリの README 原文のスナップショットです。最新の内容はリポジトリをご覧ください。

OnnxRuntime Plugin

pub package

Overview

Flutter plugin for OnnxRuntime via dart:ffi provides an easy, flexible, and fast Dart API to integrate Onnx models in flutter apps across mobile and desktop platforms.

Platform Android iOS Linux macOS Windows
Compatibility API level 21+ * * * *
Architecture arm32/arm64 * * * *

*: Consistent with Flutter

Key Features

  • Multi-platform Support for Android, iOS, Linux, macOS, Windows, and Web(Coming soon).
  • Flexibility to use any Onnx Model.
  • Acceleration using multi-threading.
  • Similar structure as OnnxRuntime Java and C# API.
  • Inference speed is not slower than native Android/iOS Apps built using the Java/Objective-C API.
  • Run inference in different isolates to prevent jank in UI thread.

Getting Started

In your flutter project add the dependency:

dependencies:
  ...
  onnxruntime: x.y.z

Usage example

Import
import 'package:onnxruntime/onnxruntime.dart';
Initializing environment
OrtEnv.instance.init();
Creating the Session
final sessionOptions = OrtSessionOptions();
const assetFileName = 'assets/models/test.onnx';
final rawAssetFile = await rootBundle.load(assetFileName);
final bytes = rawAssetFile.buffer.asUint8List();
final session = OrtSession.fromBuffer(bytes, sessionOptions!);
Performing inference
final shape = [1, 2, 3];
final inputOrt = OrtValueTensor.createTensorWithDataList(data, shape);
final inputs = {'input': inputOrt};
final runOptions = OrtRunOptions();
final outputs = await _session?.runAsync(runOptions, inputs);
inputOrt.release();
runOptions.release();
outputs?.forEach((element) {
  element?.release();
});
Releasing environment
OrtEnv.instance.release();

カテゴリー

依存関係

依存関係一覧 1 件

ソースリポジトリ

このパッケージを使用しているプロジェクト

データはまだありません。