public.go 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. package public
  2. import (
  3. "github.com/eryajf/chatgpt-dingtalk/config"
  4. "github.com/eryajf/chatgpt-dingtalk/pkg/cache"
  5. "github.com/eryajf/chatgpt-dingtalk/pkg/db"
  6. )
  7. var UserService cache.UserServiceInterface
  8. var Config *config.Configuration
  9. var Prompt *[]config.Prompt
  10. func InitSvc() {
  11. // 加载配置
  12. Config = config.LoadConfig()
  13. // 加载prompt
  14. Prompt = config.LoadPrompt()
  15. // 初始化缓存
  16. UserService = cache.NewUserService()
  17. // 初始化数据库
  18. db.InitDB()
  19. // 暂时不在初始化时获取余额
  20. // if Config.Model == openai.GPT3Dot5Turbo0301 || Config.Model == openai.GPT3Dot5Turbo {
  21. // _, _ = GetBalance()
  22. // }
  23. }
  24. var Welcome string = `# 发送信息
  25. 若您想给机器人发送信息,有如下两种方式:
  26. 1. 在本机器人所在群里@机器人;
  27. 2. 点击机器人的头像后,再点击"发消息"。
  28. 机器人收到您的信息后,默认会交给chatgpt进行处理。除非,您发送的内容是如下**系统指令**之一。
  29. -----
  30. # 系统指令
  31. 系统指令是一些特殊的词语,当您向机器人发送这些词语时,会触发对应的功能:
  32. **单聊**:每条消息都是单独的对话,不包含上下文
  33. **串聊**:对话会携带上下文,除非您主动重置对话或对话长度超过限制
  34. **重置**:重置上下文
  35. **余额**: ~~查询机器人所用OpenAI账号的余额~~ (暂不可用)
  36. **模板**:查询机器人内置的快捷模板
  37. **图片**:查看如何根据提示词生成图片
  38. **查对话**:获取指定人员的对话历史
  39. **帮助**:重新获取帮助信息
  40. -----
  41. # 友情提示
  42. 使用"串聊模式"会显著加快机器人所用账号的余额消耗速度。
  43. 因此,若无保留上下文的需求,建议使用"单聊模式"。
  44. 即使有保留上下文的需求,也应适时使用"重置"指令来重置上下文。
  45. -----
  46. # 项目地址
  47. 本项目已在GitHub开源,[查看源代码](https://github.com/eryajf/chatgpt-dingtalk)。
  48. `