generateEmbeddings method
Generate embedding vectors for multiple texts.
taskType controls the prefix applied before embedding.
Implementation
@override
Future<List<List<double>>> generateEmbeddings(
List<String> texts, {
TaskType taskType = TaskType.retrievalQuery,
}) async {
_assertNotClosed();
await _ensureInitialized();
try {
if (taskType == TaskType.retrievalDocument) {
final results = <List<double>>[];
for (final text in texts) {
results.add(await LiteRTWebEmbeddings.generateDocumentEmbedding(text));
}
return results;
}
final embeddings = await LiteRTWebEmbeddings.generateEmbeddings(texts);
if (kDebugMode) {
debugPrint('✅ Generated ${embeddings.length} embeddings');
}
return embeddings;
} catch (e) {
if (kDebugMode) {
debugPrint('❌ Failed to generate embeddings: $e');
}
rethrow;
}
}