Эх сурвалжийг харах

Merge branch 'feature/v1.0.4' of https://jygit.jydev.jianyu360.cn/SocialPlatform/knowledgeBase into feature/v1.0.4

wangshan 8 сар өмнө
parent
commit
f8701af56d

+ 21 - 17
rpc/knowledge/internal/service/knowledgeService.go

@@ -314,28 +314,32 @@ func (k *KnowledgeService) FindAnswer(param *knowledgeclient.FindAnswerReq, addr
 // RecommendAnswer 根据问题推荐三个答案
 func (k *KnowledgeService) RecommendAnswer(param *knowledgeclient.FindAnswerReq, segment string, recommendQuestionCount int) []*knowledgeclient.Question {
 	var (
-		keyWords    = ""
-		searchField = `"answer","question"`
-		answers     []*knowledgeclient.Question
+		//keyWords    = ""
+		//searchField = `"answer","question"`
+		answers []*knowledgeclient.Question
 	)
-	//根据问题进行分词
-	keywordsArr := util.HanlpGetNormalWords(param.Question, segment)
-	logx.Info("keywordsArr", keywordsArr)
-	if len(keywordsArr) != 0 {
-		for _, val := range keywordsArr {
-			keyWords += val + " "
-		}
-	}
-	if keyWords == "" {
-		keyWords = param.Question
-	}
-	//logx.Info("entId:", SE.Decode4Hex(param.RobotEntId))
-	var query = util.DSL4SearchByKwsOrid(keyWords, param.RobotEntId, 0)
+	robotEntId := SE.Decode4Hex(param.RobotEntId)
+	////根据问题进行分词
+	//keywordsArr := util.HanlpGetNormalWords(param.Question, segment)
+	//logx.Info("keywordsArr", keywordsArr)
+	//if len(keywordsArr) != 0 {
+	//	for _, val := range keywordsArr {
+	//		keyWords += val + " "
+	//	}
+	//}
+	//if keyWords == "" {
+	//	keyWords = param.Question
+	//}
+	////logx.Info("entId:", SE.Decode4Hex(param.RobotEntId))
+	//var query = util.DSL4SearchByKwsOrid(keyWords, param.RobotEntId, 0)
 	limit := 3
 	if param.ReqSource == 1 {
 		limit = recommendQuestionCount
 	}
-	res := elastic.GetAllByNgram(Index, Type, query, "", "", searchField, 0, limit, 0, false)
+	//res := elastic.GetAllByNgram(Index, Type, query, "", "", searchField, 0, limit, 0, false)
+	query := util.GetAnswerQueryStr(param.Question, robotEntId, limit, init.C.MinScore)
+	logx.Info("query:", query)
+	res := ESV7.Get(ESV7Index, ESV7Type, query)
 	if res != nil && len(*res) > 0 {
 		for _, val := range *res {
 			answers = append(answers, &knowledgeclient.Question{