createBundledInferenceSpec static method

InferenceModelSpec createBundledInferenceSpec({
  1. required String resourceName,
  2. String? loraResourceName,
  3. ModelReplacePolicy replacePolicy = ModelReplacePolicy.replace,
})

Creates a bundled inference model specification (for production builds)

Use this for models packaged with your app in native platform assets:

  • Android: android/src/main/assets/models/
  • iOS: Xcode Bundle Resources
  • Web: web/assets/models/

Example:

final spec = MobileModelManager.createBundledInferenceSpec(
  resourceName: 'gemma3-270m-it-q8.task',
);
await manager.ensureModelReadyFromSpec(spec);

Implementation

static InferenceModelSpec createBundledInferenceSpec({
  required String resourceName,
  String? loraResourceName,
  ModelReplacePolicy replacePolicy = ModelReplacePolicy.replace,
}) {
  // Extract name from resource (without extension)
  final name = resourceName.split('.').first;

  return InferenceModelSpec(
    name: name,
    modelSource: BundledSource(resourceName),
    loraSource: loraResourceName != null ? BundledSource(loraResourceName) : null,
    replacePolicy: replacePolicy,
  );
}