浏览代码

do not use cache

luojunhui 4 月之前
父节点
当前提交
e2eb17d7cc
共有 2 个文件被更改,包括 13 次插入6 次删除
  1. 10 4
      applications/textSimilarity.py
  2. 3 2
      routes/nlpServer.py

+ 10 - 4
applications/textSimilarity.py

@@ -43,7 +43,7 @@ class NLPFunction(object):
         score_tensor = score_function(text_emb1, text_emb2)
         return score_tensor
 
-    def base_string_similarity(self, text_dict):
+    def base_string_similarity(self, text_dict, use_cache=True):
         """
         基础功能,计算两个字符串的相似度
         :param text_dict:
@@ -51,20 +51,26 @@ class NLPFunction(object):
         """
         text_a = text_dict['text_a']
         text_b = text_dict['text_b']
-        score_tensor = self.cached_similarity(text_a, text_b)
+        if use_cache:
+            score_tensor = self.cached_similarity(text_a, text_b)
+        else:
+            score_tensor = self.direct_similarity(text_a, text_b)
         response = {
             "score": score_tensor.squeeze().tolist()
         }
         return response
 
-    def base_list_similarity(self, pair_list_dict):
+    def base_list_similarity(self, pair_list_dict, use_cache=True):
         """
         计算两个list的相似度
         :return:
         """
         text_a = pair_list_dict['text_list_a']
         text_b = pair_list_dict['text_list_b']
-        score_tensor = self.cached_similarity(text_a, text_b)
+        if use_cache:
+            score_tensor = self.cached_similarity(text_a, text_b)
+        else:
+            score_tensor = self.direct_similarity(text_a, text_b)
         response = {
             "score_list_list": score_tensor.tolist()
         }

+ 3 - 2
routes/nlpServer.py

@@ -24,6 +24,7 @@ class NLPServer(object):
         try:
             self.data = self.params['data']
             self.function = self.params['function']
+            self.use_cache = self.params.get('use_cache', True)
             print("参数校验成功")
             return None
         except Exception as e:
@@ -40,9 +41,9 @@ class NLPServer(object):
         """
         match self.function:
             case "similarities":
-                return self.nlp.base_string_similarity(text_dict=self.data)
+                return self.nlp.base_string_similarity(text_dict=self.data, use_cache=self.use_cache)
             case "similarities_cross":
-                return self.nlp.base_list_similarity(pair_list_dict=self.data)
+                return self.nlp.base_list_similarity(pair_list_dict=self.data, use_cache=self.use_cache)
             case "similarities_cross_max":
                 return self.nlp.max_cross_similarity(data=self.data)
             case "similarities_cross_avg":