test.go 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. package extract
  2. import (
  3. "data_ai/prompt"
  4. "data_ai/ul"
  5. "fmt"
  6. log "github.com/donnie4w/go-logger/logger"
  7. new_xlsx "github.com/tealeg/xlsx/v3"
  8. qu "jygit.jydev.jianyu360.cn/data_processing/common_utils"
  9. "sync"
  10. "time"
  11. "unicode/utf8"
  12. )
  13. // 验证单条数据···
  14. func TestSingleFieldInfo(name string, tmpid string) {
  15. now := time.Now().Unix()
  16. tmp := ul.BidMgo.FindById(name, tmpid)
  17. if len(tmp) == 0 || tmp == nil {
  18. log.Debug("未查询到数据...", tmpid)
  19. return
  20. }
  21. data := ResolveInfo(tmp)
  22. //最终结果...
  23. for k, v := range data {
  24. log.Debug(k, "~", v)
  25. }
  26. log.Debug("耗时···", time.Now().Unix()-now)
  27. }
  28. // 验证单条数据···
  29. func TestSinglePackageInfo(name string, tmpid string) {
  30. now := time.Now().Unix()
  31. tmp := ul.BidMgo.FindById(name, tmpid)
  32. if len(tmp) == 0 || tmp == nil {
  33. log.Debug("未查询到数据...", tmpid)
  34. return
  35. }
  36. detail := qu.ObjToString(tmp["detail"])
  37. filetext := qu.ObjToString(tmp["filetext"]) //此处为附件信息···
  38. if utf8.RuneCountInString(detail) < 100 {
  39. detail = filetext
  40. }
  41. detail = ul.ConvertToMarkdown(detail)
  42. pkg := prompt.AcquireNewMultiplePackageInfo(detail)
  43. //最终结果...
  44. for k, v := range pkg {
  45. log.Debug(k, "~", v)
  46. }
  47. log.Debug("耗时···", time.Now().Unix()-now)
  48. }
  49. // 新分包数据···
  50. func TestNewPackageInfo1010() {
  51. dataArr, _ := ul.SourceMgo.Find("zktest_info_0930", map[string]interface{}{}, nil, nil)
  52. log.Debug("数量···", len(dataArr))
  53. pool_mgo := make(chan bool, 50)
  54. wg_mgo := &sync.WaitGroup{}
  55. for k, v := range dataArr {
  56. if k%50 == 0 {
  57. log.Debug("cur index ", k)
  58. }
  59. pool_mgo <- true
  60. wg_mgo.Add(1)
  61. go func(v map[string]interface{}) {
  62. defer func() {
  63. <-pool_mgo
  64. wg_mgo.Done()
  65. }()
  66. new_v := v
  67. data := ResolveInfo(v)
  68. if len(data) > 0 {
  69. new_v["ai_zhipu"] = data
  70. }
  71. ul.SourceMgo.Save("zktest_info_0930_new", new_v)
  72. }(v)
  73. }
  74. wg_mgo.Wait()
  75. log.Debug("is over ...")
  76. }
  77. // 更新链接
  78. func TestUpdateJyhref(name string) {
  79. dataArr, _ := ul.SourceMgo.Find(name, map[string]interface{}{}, nil, map[string]interface{}{"_id": 1})
  80. for _, v := range dataArr {
  81. tmpid := ul.BsonTOStringId(v["_id"])
  82. jyhref := fmt.Sprintf(ul.Url, qu.CommonEncodeArticle("content", tmpid))
  83. ul.SourceMgo.UpdateById(name, tmpid, map[string]interface{}{
  84. "$set": map[string]interface{}{
  85. "jyhref": jyhref,
  86. },
  87. })
  88. }
  89. log.Debug("is over ...")
  90. }
  91. func writeRow(row *new_xlsx.Row, arr []string) {
  92. for _, v := range arr {
  93. row.AddCell().Value = v
  94. }
  95. }