google / flutter-mediapipe

Apache License 2.0
212 stars 14 forks source link

🐛 [meidiapipe_text] Null check failed by cosineSimilarity #65

Open youngjun-k opened 5 months ago

youngjun-k commented 5 months ago

OS: Apple Silicon(ARM) Mac OS Test Device: Android Emulator

It seems like the embedding pointer becomes null If It is not created from the embedder.

final textEumbedResult = await embedder.embed(text);

final embedding = Embedding.float(
            Float32List.fromList(te),
            headIndex: 1,
 );

final similarity = await embedder.cosineSimilarity(
            textEumbedResult.embeddings.first,
            embedding,
  );  

print("similarity: $similarity");

E/flutter ( 6844): Null check operator used on a null value E/flutter ( 6844): #0 _embedderService (package:mediapipe_text/src/io/tasks/text_embedding/text_embedder.dart:124:55)

case _EmbedderTaskType._cosineSimilarity:
          p.send(
            executor.cosineSimilarity(
              (message.a as core_io.Embedding).pointer!,
              (message.b as core_io.Embedding).pointer!,
            ),
          );