zhipu.go 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. package main
  2. import (
  3. "encoding/json"
  4. "fmt"
  5. zhipu "github.com/itcwc/go-zhipu/model_api"
  6. "log"
  7. "strings"
  8. )
  9. // zhiPu 智普AI
  10. func zhiPu() {
  11. expireAtTime := int64(1719803252) // token 过期时间
  12. mssage := zhipu.PostParams{
  13. Model: "glm-4-flash",
  14. Messages: []zhipu.Message{
  15. {
  16. Role: "user", // 消息的角色信息 详见文档
  17. Content: "你是一家打印机供应商,请根据我给你提供的线索评测是否有购入打印机的需求,并给出权重。\\n通常需要新购打印机的场景有:\\n1、医院、学校、事业单位的办公楼新建、扩建、搬迁\\n2、新公司成立、公司变更地址\\n我的正文如下:\\n\\n2024年7月4日,来源于国家金融监督管理总局威海监管分局的消息,泰山财产保险股份有限公司威海市荣成支公司获批变更营业场所。经审查,同意其营业场所由原“荣成市南山中路19号二楼(201、202、203、204、205)”变更为“荣成市明珠路203号楼303一楼(部分区域)、二楼”。变更营业场所后,公司不得在原址再行办理保险业务,并须及时拆除原址标识及标牌。\\n关注同花顺财经(ths518),获取更多机会\\n\\n输出结果格式如下:\\n{相关标签:相关, 相关权重:0.8},输出结果以JSON形式返回;相关标签 只有相关和不相关二个结果;相关权重是0-1之间的数字",
  18. },
  19. },
  20. }
  21. apiKey := "6c86cea8659ff1d33b161ea7213ea97c.m4OcENaRan8NeLSZ"
  22. postResponse, err := zhipu.BeCommonModel(expireAtTime, mssage, apiKey)
  23. if err != nil {
  24. fmt.Println(err)
  25. return
  26. }
  27. rest := make(map[string]interface{})
  28. if choices, ok := postResponse["choices"].([]interface{}); ok {
  29. if choice, ok2 := choices[0].(map[string]interface{}); ok2 {
  30. if message, ok3 := choice["message"].(map[string]interface{}); ok3 {
  31. if content, ok4 := message["content"].(string); ok4 {
  32. content = strings.ReplaceAll(content, "\n", "")
  33. content = strings.ReplaceAll(content, "json", "")
  34. content = strings.ReplaceAll(content, "`", "")
  35. err = json.Unmarshal([]byte(content), &rest)
  36. if err != nil {
  37. log.Println("Unmarshal err", err, "content:", content)
  38. }
  39. }
  40. }
  41. }
  42. }
  43. fmt.Println(rest)
  44. }