modelport_flutter 0.1.0
modelport_flutter: ^0.1.0 copied to clipboard
Flutter setup for ModelPort: app cache folder, asset bundles, and device RAM for picking model variants.
// Set up ModelPort in a Flutter app and show where models are cached.
//
// Add an engine package, such as modelport_onnx, and pass its adapter to
// ModelPortFlutter.init to run models. See the demo app in the repository.
import 'package:flutter/material.dart';
import 'package:modelport_flutter/modelport_flutter.dart';
Future<void> main() async {
WidgetsFlutterBinding.ensureInitialized();
await ModelPortFlutter.init(); // adapters: [OnnxAdapter(), ...]
runApp(const MaterialApp(home: CacheInfo()));
}
class CacheInfo extends StatelessWidget {
const CacheInfo({super.key});
@override
Widget build(BuildContext context) => Scaffold(
appBar: AppBar(title: const Text('ModelPort')),
body: FutureBuilder<int>(
future: ModelPort.store.cacheSize(),
builder: (context, snapshot) => ListTile(
title: Text('Cache: ${ModelPort.store.root.path}'),
subtitle: Text(
'Downloaded: ${((snapshot.data ?? 0) / 1e6).toStringAsFixed(1)} MB · '
'Device RAM: ${ModelPort.deviceRamMb ?? 'unknown'} MB',
),
),
),
);
}