diff --git a/common/src/main/java/com/tencent/supersonic/common/util/embedding/InMemoryS2EmbeddingStore.java b/common/src/main/java/com/tencent/supersonic/common/util/embedding/InMemoryS2EmbeddingStore.java index 6acfe7805..e9f3b7f8b 100644 --- a/common/src/main/java/com/tencent/supersonic/common/util/embedding/InMemoryS2EmbeddingStore.java +++ b/common/src/main/java/com/tencent/supersonic/common/util/embedding/InMemoryS2EmbeddingStore.java @@ -137,7 +137,10 @@ public class InMemoryS2EmbeddingStore implements S2EmbeddingStore { retrieval.setId(embeddingMatch.embeddingId()); retrieval.setQuery(embeddingMatch.embedded().getQuery()); Map metadata = new HashMap<>(); - metadata.putAll(embeddingMatch.embedded().getMetadata()); + if (Objects.nonNull(embeddingMatch.embedded()) + && MapUtils.isNotEmpty(embeddingMatch.embedded().getMetadata())) { + metadata.putAll(embeddingMatch.embedded().getMetadata()); + } if (filterRetrieval(filterCondition, metadata)) { continue; }