|
@@ -80,6 +80,9 @@ func Task() {
|
|
|
|
|
|
go HandleEtaReportKnowledgeLLmOp()
|
|
go HandleEtaReportKnowledgeLLmOp()
|
|
|
|
|
|
|
|
+
|
|
|
|
+ go HandleAiArticleAbstractLlmOp()
|
|
|
|
+
|
|
|
|
|
|
go AutoInsertRaiReport()
|
|
go AutoInsertRaiReport()
|
|
|
|
|
|
@@ -603,7 +606,7 @@ func HandleWechatArticleOp() {
|
|
obj := rag.WechatPlatform{}
|
|
obj := rag.WechatPlatform{}
|
|
for {
|
|
for {
|
|
utils.Rc.Brpop(utils.CACHE_WECHAT_PLATFORM_ARTICLE, func(b []byte) {
|
|
utils.Rc.Brpop(utils.CACHE_WECHAT_PLATFORM_ARTICLE, func(b []byte) {
|
|
- wechatArticleOp := new(cache.WechatArticleOp)
|
|
+ wechatArticleOp := new(cache.WechatPlatformOp)
|
|
if err := json.Unmarshal(b, &wechatArticleOp); err != nil {
|
|
if err := json.Unmarshal(b, &wechatArticleOp); err != nil {
|
|
fmt.Println("json unmarshal wrong!")
|
|
fmt.Println("json unmarshal wrong!")
|
|
return
|
|
return
|
|
@@ -633,25 +636,52 @@ func HandleWechatArticleLLmOp() {
|
|
fmt.Println("[HandleWechatArticleLLmOp]", err)
|
|
fmt.Println("[HandleWechatArticleLLmOp]", err)
|
|
}
|
|
}
|
|
}()
|
|
}()
|
|
- obj := rag.WechatArticle{}
|
|
|
|
for {
|
|
for {
|
|
- utils.Rc.Brpop(utils.CACHE_WECHAT_PLATFORM_ARTICLE_KNOWLEDGE, func(b []byte) {
|
|
+ utils.Rc.Brpop(utils.CACHE_WECHAT_PLATFORM_ARTICLE_KNOWLEDGE, handleWechatArticleLLmOp)
|
|
- wechatArticleOp := new(cache.WechatArticleOp)
|
|
+ }
|
|
- if err := json.Unmarshal(b, &wechatArticleOp); err != nil {
|
|
+}
|
|
- fmt.Println("json unmarshal wrong!")
|
|
|
|
- return
|
|
|
|
- }
|
|
|
|
- item, tmpErr := obj.GetById(wechatArticleOp.WechatPlatformId)
|
|
|
|
- if tmpErr != nil {
|
|
|
|
-
|
|
|
|
- return
|
|
|
|
- }
|
|
|
|
|
|
|
|
-
|
|
+
|
|
- ArticleToKnowledge(item)
|
|
+
|
|
-
|
|
+
|
|
- GenerateWechatArticleAbstract(item, false)
|
|
+
|
|
- })
|
|
+
|
|
|
|
+func handleWechatArticleLLmOp(b []byte) {
|
|
|
|
+ var err error
|
|
|
|
+ defer func() {
|
|
|
|
+ if err != nil {
|
|
|
|
+ utils.FileLog.Error("[handleWechatArticleLLmOp] params:%s;err:%s", string(b), err.Error())
|
|
|
|
+ }
|
|
|
|
+ }()
|
|
|
|
+ obj := rag.WechatArticle{}
|
|
|
|
+ wechatArticleOp := new(cache.WechatArticleOp)
|
|
|
|
+ if err = json.Unmarshal(b, &wechatArticleOp); err != nil {
|
|
|
|
+ fmt.Println("json unmarshal wrong!")
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+ item, err := obj.GetById(wechatArticleOp.WechatArticleId)
|
|
|
|
+ if err != nil {
|
|
|
|
+
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ ArticleToKnowledge(item)
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ if wechatArticleOp.QuestionId <= 0 {
|
|
|
|
+
|
|
|
|
+ GenerateWechatArticleAbstract(item, false)
|
|
|
|
+ } else {
|
|
|
|
+ questionObj := rag.Question{}
|
|
|
|
+ questionInfo, tmpErr := questionObj.GetByID(wechatArticleOp.QuestionId)
|
|
|
|
+ if tmpErr != nil {
|
|
|
|
+ err = tmpErr
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ err = GenerateWechatArticleAbstractByQuestion(item, questionInfo, false)
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
@@ -660,7 +690,7 @@ func HandleWechatArticleLLmOp() {
|
|
func HandleEtaReportUpdateOp() {
|
|
func HandleEtaReportUpdateOp() {
|
|
defer func() {
|
|
defer func() {
|
|
if err := recover(); err != nil {
|
|
if err := recover(); err != nil {
|
|
- fmt.Println("[HandleEtaReportKnowledgeLLmOp]", err)
|
|
+ fmt.Println("[HandleEtaReportUpdateOp]", err)
|
|
}
|
|
}
|
|
}()
|
|
}()
|
|
for {
|
|
for {
|
|
@@ -686,77 +716,210 @@ func HandleEtaReportUpdateOp() {
|
|
func HandleEtaReportKnowledgeLLmOp() {
|
|
func HandleEtaReportKnowledgeLLmOp() {
|
|
defer func() {
|
|
defer func() {
|
|
if err := recover(); err != nil {
|
|
if err := recover(); err != nil {
|
|
- fmt.Println("[HandleWechatArticleLLmOp]", err)
|
|
+ fmt.Println("[HandleEtaReportKnowledgeLLmOp]", err)
|
|
}
|
|
}
|
|
}()
|
|
}()
|
|
- obj := rag.RagEtaReport{}
|
|
+
|
|
for {
|
|
for {
|
|
- utils.Rc.Brpop(utils.CACHE_ETA_REPORT_KNOWLEDGE_LLM, func(b []byte) {
|
|
+ utils.Rc.Brpop(utils.CACHE_ETA_REPORT_KNOWLEDGE_LLM, handleEtaReportKnowledgeLLmOp)
|
|
- wechatArticleOp := new(cache.RagEtaReportLlmOp)
|
|
+ }
|
|
- if err := json.Unmarshal(b, &wechatArticleOp); err != nil {
|
|
+}
|
|
- fmt.Println("json unmarshal wrong!")
|
|
|
|
- return
|
|
|
|
- }
|
|
|
|
- item, tmpErr := obj.GetById(wechatArticleOp.RagEtaReportId)
|
|
|
|
- if tmpErr != nil {
|
|
|
|
-
|
|
|
|
- return
|
|
|
|
- }
|
|
|
|
|
|
|
|
-
|
|
+
|
|
- if item.IsDeleted == 1 {
|
|
+
|
|
- return
|
|
+
|
|
- }
|
|
+
|
|
|
|
+
|
|
|
|
+func handleEtaReportKnowledgeLLmOp(b []byte) {
|
|
|
|
+ var err error
|
|
|
|
+ defer func() {
|
|
|
|
+ if err != nil {
|
|
|
|
+ utils.FileLog.Error("[handleEtaReportKnowledgeLLmOp] params:%s;err:%s", string(b), err.Error())
|
|
|
|
+ }
|
|
|
|
+ }()
|
|
|
|
|
|
-
|
|
+ obj := rag.RagEtaReport{}
|
|
- if item.IsPublished != 1 {
|
|
+ wechatArticleOp := new(cache.RagEtaReportLlmOp)
|
|
- return
|
|
+ if err = json.Unmarshal(b, &wechatArticleOp); err != nil {
|
|
- }
|
|
+ fmt.Println("json unmarshal wrong!")
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+ item, err := obj.GetById(wechatArticleOp.RagEtaReportId)
|
|
|
|
+ if err != nil {
|
|
|
|
+
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
|
|
-
|
|
+
|
|
-
|
|
+ if item.IsDeleted == 1 {
|
|
-
|
|
+ return
|
|
- GenerateRagEtaReportAbstract(item, true)
|
|
+ }
|
|
- })
|
|
+
|
|
|
|
+
|
|
|
|
+ if item.IsPublished != 1 {
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ if wechatArticleOp.QuestionId <= 0 {
|
|
|
|
+
|
|
|
|
+ GenerateRagEtaReportAbstract(item, wechatArticleOp.ForceGenerate)
|
|
|
|
+ } else {
|
|
|
|
+ questionObj := rag.Question{}
|
|
|
|
+ questionInfo, tmpErr := questionObj.GetByID(wechatArticleOp.QuestionId)
|
|
|
|
+ if tmpErr != nil {
|
|
|
|
+ err = tmpErr
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ err = GenerateRagEtaReportAbstractByQuestion(item, questionInfo, wechatArticleOp.ForceGenerate)
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
-
|
|
+
|
|
-
|
|
+
|
|
-func Handle() {
|
|
+
|
|
|
|
+
|
|
|
|
+func HandleAiArticleAbstractLlmOp() {
|
|
defer func() {
|
|
defer func() {
|
|
if err := recover(); err != nil {
|
|
if err := recover(); err != nil {
|
|
- fmt.Println("[HandleWechatArticleLLmOp]", err)
|
|
+ fmt.Println("[HandleAiArticleAbstractLlmOp]", err)
|
|
}
|
|
}
|
|
}()
|
|
}()
|
|
- obj := rag.RagEtaReport{}
|
|
|
|
for {
|
|
for {
|
|
- utils.Rc.Brpop(utils.CACHE_ETA_REPORT_KNOWLEDGE_LLM, func(b []byte) {
|
|
+ utils.Rc.Brpop(utils.CACHE_AI_ARTICLE_ABSTRACT_LLM_TASK, handleAiArticleAbstractLlmOp)
|
|
- wechatArticleOp := new(cache.RagEtaReportLlmOp)
|
|
+ }
|
|
- if err := json.Unmarshal(b, &wechatArticleOp); err != nil {
|
|
+}
|
|
- fmt.Println("json unmarshal wrong!")
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+func handleAiArticleAbstractLlmOp(b []byte) {
|
|
|
|
+ var err error
|
|
|
|
+ defer func() {
|
|
|
|
+ if err != nil {
|
|
|
|
+ utils.FileLog.Error("[handleAiArticleAbstractLlmOp] params:%s;err:%s", string(b), err.Error())
|
|
|
|
+ }
|
|
|
|
+ }()
|
|
|
|
+ obj := rag.AiTaskRecord{}
|
|
|
|
+ aiTaskRecordOp := new(cache.AiTaskRecordOp)
|
|
|
|
+ if err = json.Unmarshal(b, &aiTaskRecordOp); err != nil {
|
|
|
|
+ fmt.Println("json unmarshal wrong!")
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+ item, err := obj.GetByID(aiTaskRecordOp.AiTaskRecordId)
|
|
|
|
+ if err != nil {
|
|
|
|
+ err = fmt.Errorf("查找任务记录状态失败, err: %s", err.Error())
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ defer func() {
|
|
|
|
+
|
|
|
|
+ todoCount, tmpErr := obj.GetCountByCondition(fmt.Sprintf(` AND %s = ? AND %s = ? `, rag.AiTaskColumns.AiTaskID, rag.AiTaskColumns.Status), []interface{}{item.AiTaskID, `待处理`})
|
|
|
|
+ if tmpErr != nil {
|
|
|
|
+ err = fmt.Errorf("查找剩余任务数量失败, err: %s", tmpErr.Error())
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+ if todoCount <= 0 {
|
|
|
|
+ aiTaskObj := rag.AiTask{}
|
|
|
|
+ aiTaskInfo, tmpErr := aiTaskObj.GetByID(item.AiTaskID)
|
|
|
|
+ if tmpErr != nil {
|
|
|
|
+ err = fmt.Errorf("查找任务失败, err: %s", tmpErr.Error())
|
|
return
|
|
return
|
|
}
|
|
}
|
|
- item, tmpErr := obj.GetById(wechatArticleOp.RagEtaReportId)
|
|
+ aiTaskInfo.Status = `done`
|
|
|
|
+ aiTaskInfo.UpdateTime = time.Now()
|
|
|
|
+ tmpErr = aiTaskInfo.Update([]string{"status", "update_time"})
|
|
if tmpErr != nil {
|
|
if tmpErr != nil {
|
|
-
|
|
+ err = fmt.Errorf("标记任务状态失败, err: %s", tmpErr.Error())
|
|
return
|
|
return
|
|
}
|
|
}
|
|
|
|
+ }
|
|
|
|
|
|
-
|
|
+ return
|
|
- if item.IsDeleted == 1 {
|
|
+ }()
|
|
- return
|
|
|
|
- }
|
|
|
|
|
|
|
|
-
|
|
+
|
|
- if item.IsPublished != 1 {
|
|
+ if item.Status != `待处理` {
|
|
- return
|
|
+ return
|
|
- }
|
|
+ }
|
|
|
|
|
|
-
|
|
+
|
|
-
|
|
+ defer func() {
|
|
-
|
|
+ status := `处理成功`
|
|
- GenerateRagEtaReportAbstract(item, true)
|
|
+ remark := ``
|
|
- })
|
|
+ if err != nil {
|
|
|
|
+ status = `处理失败`
|
|
|
|
+ remark = err.Error()
|
|
|
|
+ }
|
|
|
|
+ item.Status = status
|
|
|
|
+ item.Remark = remark
|
|
|
|
+ item.ModifyTime = time.Now()
|
|
|
|
+ tmpErr := item.Update([]string{"status", "remark", "modify_time"})
|
|
|
|
+ if tmpErr != nil {
|
|
|
|
+ err = fmt.Errorf("标记任务记录状态失败, err: %s", tmpErr.Error())
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+ }()
|
|
|
|
+
|
|
|
|
+ var params rag.QuestionGenerateAbstractParam
|
|
|
|
+ if err = json.Unmarshal([]byte(item.Parameters), ¶ms); err != nil {
|
|
|
|
+ fmt.Println("json unmarshal wrong!")
|
|
|
|
+ return
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ questionObj := rag.Question{}
|
|
|
|
+ questionInfo, tmpErr := questionObj.GetByID(params.QuestionId)
|
|
|
|
+ if tmpErr != nil {
|
|
|
|
+
|
|
|
|
+ err = fmt.Errorf("查找提示词失败, err: %s", err.Error())
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ switch params.ArticleType {
|
|
|
|
+ case `wechat_article`:
|
|
|
|
+ articleObj := rag.WechatArticle{}
|
|
|
|
+ articleInfo, tmpErr := articleObj.GetById(params.ArticleId)
|
|
|
|
+ if tmpErr != nil {
|
|
|
|
+ err = tmpErr
|
|
|
|
+
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ err = GenerateWechatArticleAbstractByQuestion(articleInfo, questionInfo, true)
|
|
|
|
+ case `rag_eta_report`:
|
|
|
|
+ articleObj := rag.RagEtaReport{}
|
|
|
|
+ articleInfo, tmpErr := articleObj.GetById(params.ArticleId)
|
|
|
|
+ if tmpErr != nil {
|
|
|
|
+ err = tmpErr
|
|
|
|
+
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ if articleInfo.IsDeleted == 1 {
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ if articleInfo.IsPublished != 1 {
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ err = GenerateRagEtaReportAbstractByQuestion(articleInfo, questionInfo, true)
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+}
|
|
|
|
+func init() {
|
|
|
|
+ cache.AddAiTaskRecordOpToCache(12208)
|
|
}
|
|
}
|