createBundledInferenceSpec static method

InferenceModelSpec createBundledInferenceSpec({
  1. required String resourceName,
  2. String? loraResourceName,
  3. ModelReplacePolicy replacePolicy = ModelReplacePolicy.keep,
  4. ModelType modelType = ModelType.general,
  5. ModelFileType fileType = ModelFileType.task,
})

Creates a bundled inference model specification (for production builds)

Use this for models packaged in web/assets/models/

Example:

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

Implementation

static InferenceModelSpec createBundledInferenceSpec({
  required String resourceName,
  String? loraResourceName,
  ModelReplacePolicy replacePolicy = ModelReplacePolicy.keep,
  ModelType modelType = ModelType.general,
  ModelFileType fileType = ModelFileType.task,
}) {
  final name = resourceName.split('.').first;

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