createEmbeddingModel method
Future<EmbeddingModel>
createEmbeddingModel({
- required String modelPath,
- required String tokenizerPath,
- PreferredBackend? preferredBackend,
override
Creates and returns a new EmbeddingModel instance.
modelPath
— path to the embedding model file.
tokenizerPath
— path to the tokenizer file.
preferredBackend
— backend preference (e.g., CPU, GPU).
Implementation
@override
Future<EmbeddingModel> createEmbeddingModel({
required String modelPath,
required String tokenizerPath,
PreferredBackend? preferredBackend,
}) async {
if (_initEmbeddingCompleter case Completer<EmbeddingModel> completer) {
return completer.future;
}
final completer = _initEmbeddingCompleter = Completer<EmbeddingModel>();
try {
await _platformService.createEmbeddingModel(
modelPath: modelPath,
tokenizerPath: tokenizerPath,
preferredBackend: preferredBackend,
);
final model = _initializedEmbeddingModel = MobileEmbeddingModel(
onClose: () {
_initializedEmbeddingModel = null;
_initEmbeddingCompleter = null;
},
);
completer.complete(model);
return model;
} catch (e, st) {
completer.completeError(e, st);
Error.throwWithStackTrace(e, st);
}
}