From 4abc144d3d1ccd42a9996e0b638238685676b212 Mon Sep 17 00:00:00 2001 From: Jin Hai Date: Mon, 23 Dec 2024 16:23:54 +0800 Subject: [PATCH] Fix error of changing embedding model (#4184) ### What problem does this PR solve? 1. Change embedding model of knowledge base won't change the default embedding model. 2. Retrieval test bug ### Type of change - [x] Bug Fix (non-breaking change which fixes an issue) --------- Signed-off-by: jinhai --- rag/llm/embedding_model.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/rag/llm/embedding_model.py b/rag/llm/embedding_model.py index 2ab95b337..785650a57 100644 --- a/rag/llm/embedding_model.py +++ b/rag/llm/embedding_model.py @@ -61,11 +61,11 @@ class DefaultEmbedding(Base): ^_- """ - if not settings.LIGHTEN and not DefaultEmbedding._model: + if not settings.LIGHTEN: with DefaultEmbedding._model_lock: from FlagEmbedding import FlagModel import torch - if not DefaultEmbedding._model: + if not DefaultEmbedding._model or model_name != DefaultEmbedding._model_name: try: DefaultEmbedding._model = FlagModel(os.path.join(get_home_cache_dir(), re.sub(r"^[a-zA-Z0-9]+/", "", model_name)), query_instruction_for_retrieval="为这个句子生成表示以用于检索相关文章:", @@ -261,7 +261,7 @@ class FastEmbed(DefaultEmbedding): threads: int | None = None, **kwargs, ): - if not settings.LIGHTEN and not FastEmbed._model: + if not settings.LIGHTEN: with FastEmbed._model_lock: from fastembed import TextEmbedding if not DefaultEmbedding._model or model_name != DefaultEmbedding._model_name: