getActiveEmbedder static method
Get the active embedding model as a ready-to-use EmbeddingModel
Returns an EmbeddingModel configured with runtime parameters. The model and tokenizer paths come from the active EmbeddingModelSpec.
Runtime parameters:
- preferredBackend: CPU or GPU preference (optional)
Throws:
- StateError if no active embedding model is set
Example:
// Install embedding model first
await FlutterGemma.installEmbedder()
  .modelFromNetwork('https://example.com/model.tflite')
  .tokenizerFromNetwork('https://example.com/tokenizer.model')
  .install();
// Create with default backend
final embeddingModel = await FlutterGemma.getActiveEmbedder();
// Create with specific backend
final cpuModel = await FlutterGemma.getActiveEmbedder(
  preferredBackend: PreferredBackend.cpu,
);
Implementation
static Future<EmbeddingModel> getActiveEmbedder({
  PreferredBackend? preferredBackend,
}) async {
  final manager = FlutterGemmaPlugin.instance.modelManager;
  final activeSpec = manager.activeEmbeddingModel;
  if (activeSpec == null) {
    throw StateError(
      'No active embedding model set. Use FlutterGemma.installEmbedder() first.',
    );
  }
  if (activeSpec is! EmbeddingModelSpec) {
    throw StateError(
      'Active model is not an EmbeddingModelSpec. '
      'Expected EmbeddingModelSpec, got ${activeSpec.runtimeType}',
    );
  }
  // Create EmbeddingModel using active spec (paths resolved automatically)
  return await FlutterGemmaPlugin.instance.createEmbeddingModel(
    preferredBackend: preferredBackend,
  );
}