From 3d4c078d954f62fe84cd3382caea7155b8268523 Mon Sep 17 00:00:00 2001 From: lexluo09 <39718951+lexluo09@users.noreply.github.com> Date: Fri, 28 Jun 2024 13:23:27 +0800 Subject: [PATCH] (improvement)(headless) Add exception handling to the embeddingModel embed function (#1264) --- .../common/service/impl/EmbeddingServiceImpl.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/common/src/main/java/com/tencent/supersonic/common/service/impl/EmbeddingServiceImpl.java b/common/src/main/java/com/tencent/supersonic/common/service/impl/EmbeddingServiceImpl.java index 55747441e..3e19db67d 100644 --- a/common/src/main/java/com/tencent/supersonic/common/service/impl/EmbeddingServiceImpl.java +++ b/common/src/main/java/com/tencent/supersonic/common/service/impl/EmbeddingServiceImpl.java @@ -15,6 +15,7 @@ import dev.langchain4j.store.embedding.RetrieveQueryResult; import dev.langchain4j.store.embedding.TextSegmentConvert; import dev.langchain4j.store.embedding.filter.Filter; import dev.langchain4j.store.embedding.filter.comparison.IsEqualTo; +import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections.MapUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -28,6 +29,7 @@ import java.util.Objects; import java.util.stream.Collectors; @Service +@Slf4j public class EmbeddingServiceImpl implements EmbeddingService { @Autowired @@ -41,8 +43,13 @@ public class EmbeddingServiceImpl implements EmbeddingService { EmbeddingStore embeddingStore = embeddingStoreFactory.create(collectionName); for (TextSegment query : queries) { String question = query.text(); - Embedding embedding = embeddingModel.embed(question).content(); - embeddingStore.add(embedding, query); + try { + Embedding embedding = embeddingModel.embed(question).content(); + embeddingStore.add(embedding, query); + } catch (Exception e) { + log.error("embeddingModel embed error question: {}, embeddingStore: {}", question, + embeddingStore.getClass().getSimpleName(), e); + } } }