llm.go 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169
  1. package cache
  2. import (
  3. "eta/eta_api/utils"
  4. "fmt"
  5. )
  6. // WechatPlatformOp
  7. // @Description: 微信公众号操作请求
  8. type WechatPlatformOp struct {
  9. Source string
  10. WechatPlatformId int
  11. }
  12. // AddWechatArticleOpToCache
  13. // @Description: 将公众号操作加入缓存
  14. // @param wechatPlatformId
  15. // @param source
  16. // @return bool
  17. func AddWechatArticleOpToCache(wechatPlatformId int, source string) bool {
  18. // 如果不在发布和调试模式,那么就不加入缓存
  19. if !utils.InArrayByStr([]string{utils.BusinessCodeRelease, utils.BusinessCodeDebug}, utils.BusinessCode) {
  20. return true
  21. }
  22. record := new(WechatPlatformOp)
  23. record.Source = source
  24. record.WechatPlatformId = wechatPlatformId
  25. if utils.Re == nil {
  26. err := utils.Rc.LPush(utils.CACHE_WECHAT_PLATFORM_ARTICLE, record)
  27. utils.FileLog.Info(fmt.Sprintf("将公众号文章操作 加入缓存 AddWechatArticleOpToCache LPush: 操作类型:%s,公众号id:%d", source, wechatPlatformId))
  28. if err != nil {
  29. fmt.Println("AddWechatArticleOpToCache LPush Err:" + err.Error())
  30. }
  31. return true
  32. }
  33. return false
  34. }
  35. // WechatArticleOp
  36. // @Description: 微信公众号文章操作
  37. type WechatArticleOp struct {
  38. Source string
  39. WechatArticleId int
  40. QuestionId int
  41. }
  42. // AddWechatArticleLlmOpToCache
  43. // @Description: 将公众号文章llm操作加入缓存
  44. // @param wechatPlatformId
  45. // @param source
  46. // @return bool
  47. func AddWechatArticleLlmOpToCache(wechatArticleId, questionId int, source string) bool {
  48. // 如果不在发布和调试模式,那么就不加入缓存
  49. if !utils.InArrayByStr([]string{utils.BusinessCodeRelease, utils.BusinessCodeDebug}, utils.BusinessCode) {
  50. return true
  51. }
  52. record := new(WechatArticleOp)
  53. record.Source = source
  54. record.WechatArticleId = wechatArticleId
  55. record.QuestionId = questionId
  56. if utils.Re == nil {
  57. err := utils.Rc.LPush(utils.CACHE_WECHAT_PLATFORM_ARTICLE_KNOWLEDGE, record)
  58. utils.FileLog.Info(fmt.Sprintf("将公众号文章llm操作加入缓存 加入缓存 AddWechatArticleLlmOpToCache LPush: 操作类型:%s,公众号稳扎id:%d", source, wechatArticleId))
  59. if err != nil {
  60. fmt.Println("AddWechatArticleOpToCache LPush Err:" + err.Error())
  61. }
  62. return true
  63. }
  64. return false
  65. }
  66. type RagEtaReportOp struct {
  67. Source string
  68. ReportId int
  69. ReportChapterId int
  70. }
  71. // RagEtaReportOpToCache
  72. // @Description: 将eta报告入知识库操作加入缓存
  73. // @author: Roc
  74. // @datetime 2025-04-07 15:05:22
  75. // @param reportId int
  76. // @param reportChapterId int
  77. // @param source string
  78. // @return bool
  79. func RagEtaReportOpToCache(reportId, reportChapterId int, source string) bool {
  80. record := new(RagEtaReportOp)
  81. record.Source = source
  82. record.ReportId = reportId
  83. record.ReportChapterId = reportChapterId
  84. if utils.Re == nil {
  85. err := utils.Rc.LPush(utils.CACHE_ETA_REPORT_KNOWLEDGE, record)
  86. utils.FileLog.Info(fmt.Sprintf("将eta报告入知识库操作加入缓存 加入缓存 RagEtaReportOpToCache LPush: 操作类型:%s,报告id:%d,章节id:%d", source, reportId, reportChapterId))
  87. if err != nil {
  88. fmt.Println("RagEtaReportOpToCache LPush Err:" + err.Error())
  89. }
  90. return true
  91. }
  92. return false
  93. }
  94. // RagEtaReportLlmOp
  95. // @Description:
  96. type RagEtaReportLlmOp struct {
  97. RagEtaReportId int
  98. QuestionId int
  99. ForceGenerate bool
  100. }
  101. // AddRagEtaReportLlmOpToCache
  102. // @Description: 将ETA报告llm操作加入缓存
  103. // @author: Roc
  104. // @datetime 2025-04-24 13:59:16
  105. // @param ragEtaReportId int
  106. // @param questionId int
  107. // @return bool
  108. func AddRagEtaReportLlmOpToCache(ragEtaReportId, questionId int, forceGenerate bool) bool {
  109. // 如果不在发布和调试模式,那么就不加入缓存
  110. if !utils.InArrayByStr([]string{utils.BusinessCodeRelease, utils.BusinessCodeDebug}, utils.BusinessCode) {
  111. return true
  112. }
  113. record := new(RagEtaReportLlmOp)
  114. record.RagEtaReportId = ragEtaReportId
  115. record.QuestionId = questionId
  116. record.ForceGenerate = forceGenerate
  117. if utils.Re != nil {
  118. return false
  119. }
  120. err := utils.Rc.LPush(utils.CACHE_ETA_REPORT_KNOWLEDGE_LLM, record)
  121. utils.FileLog.Info(fmt.Sprintf("将eta报告llm操作加入缓存 加入缓存 RagEtaReportLlmOpToCache LPush: ETA报告id:%d", ragEtaReportId))
  122. if err != nil {
  123. fmt.Println("RagEtaReportLlmOpToCache LPush Err:" + err.Error())
  124. }
  125. return true
  126. }
  127. type AiTaskRecordOp struct {
  128. AiTaskRecordId int
  129. }
  130. // AddAiTaskRecordOpToCache
  131. // @Description: AI任务操作调度入队列
  132. // @author: Roc
  133. // @datetime 2025-04-24 09:41:11
  134. // @param aiTaskRecordId int
  135. // @return bool
  136. func AddAiTaskRecordOpToCache(aiTaskRecordId int) bool {
  137. // 如果不在发布和调试模式,那么就不加入缓存
  138. if !utils.InArrayByStr([]string{utils.BusinessCodeRelease, utils.BusinessCodeDebug}, utils.BusinessCode) {
  139. return true
  140. }
  141. record := new(AiTaskRecordOp)
  142. record.AiTaskRecordId = aiTaskRecordId
  143. if utils.Re == nil {
  144. err := utils.Rc.LPush(utils.CACHE_AI_ARTICLE_ABSTRACT_LLM_TASK, record)
  145. utils.FileLog.Info(fmt.Sprintf("将AI任务操作调度入队列 加入缓存 AddAiTaskRecordOpToCache LPush: 记录id:%d", aiTaskRecordId))
  146. if err != nil {
  147. fmt.Println("AddAiTaskRecordOpToCache LPush Err:" + err.Error())
  148. }
  149. return true
  150. }
  151. return false
  152. }