Roc 1 өдөр өмнө
parent
commit
bb278e5c12

+ 8 - 0
controllers/llm/abstract.go

@@ -412,3 +412,11 @@ func (c *AbstractController) AddVector() {
 //
 //	fmt.Println("结束")
 //}
+
+//// init
+//// @Description: 修复微信文章摘要的标签
+//// @author: Roc
+//// @datetime 2025-05-08 18:04:50
+//func init() {
+//	services.FixWechatArticleAbstractTag()
+//}

+ 2 - 2
services/llm_report.go

@@ -432,8 +432,8 @@ func GenerateRagEtaReportAbstractByQuestion(item *rag.RagEtaReport, question *ra
 		//	}
 		//}
 
-		tagIdJsonByte, err := json.Marshal(tagIdList)
-		if err != nil {
+		tagIdJsonByte, tmpErr := json.Marshal(tagIdList)
+		if tmpErr != nil {
 			utils.FileLog.Info(fmt.Sprintf("标签ID序列化失败,Err:%s", tmpErr.Error()))
 		} else {
 			tagIdJsonStr = string(tagIdJsonByte)

+ 60 - 2
services/wechat_platform.go

@@ -459,8 +459,8 @@ func GenerateWechatArticleAbstractByQuestion(item *rag.WechatArticle, question *
 		//	}
 		//}
 
-		tagIdJsonByte, err := json.Marshal(tagIdList)
-		if err != nil {
+		tagIdJsonByte, tmpErr := json.Marshal(tagIdList)
+		if tmpErr != nil {
 			utils.FileLog.Info(fmt.Sprintf("标签ID序列化失败,Err:%s", tmpErr.Error()))
 		} else {
 			tagIdJsonStr = string(tagIdJsonByte)
@@ -1423,3 +1423,61 @@ func GetTagIdByName(tagName string) (tagId int, err error) {
 
 	return
 }
+
+// FixWechatArticleAbstractTag
+// @Description: 修复微信文章摘要的标签
+// @author: Roc
+// @datetime 2025-05-08 18:03:55
+func FixWechatArticleAbstractTag() {
+	obj := rag.WechatArticleAbstract{}
+	list, err := obj.GetListByCondition(` wechat_article_id `, ` AND wechat_platform_id = ? `, []interface{}{1}, 0, 100000)
+	if err != nil {
+		fmt.Println(`获取摘要列表失败,err:`, err)
+		return
+	}
+
+	for _, v := range list {
+		tagNameList := extractLabels(v.Content)
+		if len(tagNameList) <= 0 {
+			continue
+		}
+
+		var tagIdJsonStr string
+		var tagNameJsonStr string
+
+		tagIdList := make([]int, 0)
+		tagIdMap := make(map[int]bool)
+
+		for _, tagName := range tagNameList {
+			tagId, tmpErr := GetTagIdByName(tagName)
+			if tmpErr != nil {
+				utils.FileLog.Info(fmt.Sprintf("获取标签ID失败,标签名称:%s,Err:%s", tagName, tmpErr.Error()))
+			}
+			if _, ok := tagIdMap[tagId]; !ok {
+				tagIdList = append(tagIdList, tagId)
+				tagNameList = append(tagNameList, tagName)
+				tagIdMap[tagId] = true
+			}
+		}
+
+		tagIdJsonByte, tmpErr := json.Marshal(tagIdList)
+		if tmpErr != nil {
+			utils.FileLog.Info(fmt.Sprintf("标签ID序列化失败,Err:%s", tmpErr.Error()))
+		} else {
+			tagIdJsonStr = string(tagIdJsonByte)
+		}
+
+		tagNameJsonStr = strings.Join(tagNameList, `,`)
+
+		v.Tags = tagIdJsonStr
+		v.TagsName = tagNameJsonStr
+		v.ModifyTime = time.Now()
+		err = v.Update([]string{"tags", "tags_name", "modify_time"})
+		if err != nil {
+			fmt.Println(v.WechatArticleAbstractId, ";标签修改失败")
+			continue
+		}
+
+		AddOrEditEsWechatArticleAbstract(v.WechatArticleAbstractId)
+	}
+}